← All starter templates
Project (custom) · cr1ad_project
Custom entity

Project Status Report

Most prospects don't run pure stock Dynamics — they have a custom solution layered on top. This template demonstrates Templ8r works identically against publisher-prefixed schemas: project ref, manager, RAG health, budget vs. actual spend, completion percent, milestones table via a custom 1:N. The conditional Risk note block renders only when `cr1ad_health` is amber or red. Replace `cr1ad_` with whatever prefix your solution uses — every other piece of grammar is identical to the OOTB starters.

Custom entity example. Tokens here use cr1ad_ as a placeholder publisher prefix. Replace it with whatever prefix your custom solution uses (e.g. acme_, new_, your_). All other token grammar — multi-hop lookups, format hints, repeating-row 1:N, conditional blocks — works identically to the OOTB starters.
How to use these tokens
  1. 1
    Copy a token
    Click any {{token}} on this page — it copies the literal token string to your clipboard, ready to paste.
  2. 2
    Paste into your Word template
    Open your existing branded Word document and paste each token where you want that field to appear. Keep your fonts, layout, letterhead, and prose — Templ8r only touches the {{tokens}} themselves.
  3. 3
    Attach when you book a demo
    Drop the tokenised .docx into the form on /book-demo. We’ll bind it against your live D365 records before the call so you see your branded template populated with your real data.

Tokens in this template

Every {{token}} below maps to an out-of-the-box column on cr1ad_project. On a fresh prospect tenant, these bind without modification. Click any token to copy it. Paste it into your Word template wherever you want that field to appear.

  • Project reference
  • Project name
  • Client (Account)
  • Project manager
  • Project manager email
  • Status (formatted)
  • Health: Green / Amber / Red
  • Start date
  • Target end date
  • Completion (%)
  • Budget
  • Actual spend to date

Project Tasks · cr1ad_project_cr1ad_projecttask

The template includes a single-row table; Templ8r repeats the row for every related record at generation time.

  • Task name
  • Owner
  • Due date
  • Status (formatted)
  • % complete

Conditional sections

Sections wrapped in {{#if x}} ... {{/if}} guards. Each renders only when the guard column is populated; otherwise Templ8r drops the entire block at generation time.

  • {{#if cr1ad_riskdescription}}Risk note

    Renders when cr1ad_riskdescription is populated on the record.

What you need in your tenant

  • Custom Project entity exists in your solution. Logical name shown here as cr1ad_project — replace cr1ad_ with your publisher prefix throughout the template.
  • Custom 1:N relationship cr1ad_project_cr1ad_projecttask to a cr1ad_projecttask child entity (with columns: cr1ad_taskname, cr1ad_assignedto, cr1ad_duedate, cr1ad_taskstatus, cr1ad_completionpercent)
  • Lookup cr1ad_clientid populated as Account
  • Lookups cr1ad_projectmanagerid and cr1ad_assignedto (on the task entity) populated as system users
  • Date columns cr1ad_startdate, cr1ad_enddate (and cr1ad_duedate on the task entity)
  • Money columns cr1ad_budget, cr1ad_actualspend
  • Decimal column cr1ad_completionpercent (on both project and task)
  • Choice columns cr1ad_status, cr1ad_health, cr1ad_taskstatus — Templ8r renders formatted-values via the standard Prefer: include FormattedValue header
  • (Optional) Memo column cr1ad_riskdescription populated to trigger the conditional Risk note block — empty value drops the section cleanly
Other starters
Sales Order
Sales Order Confirmation
Quote
Quote / Proposal
Invoice
Invoice
Opportunity
Opportunity Summary