Access Control
Two custom roles enforce table-level access in the demo environment. Field-level security hides financial and cost columns from both roles regardless of table access.
apdemo_lifetimerevenue, apdemo_accruedcostusd, apdemo_depositpaid, apdemo_balancedue, apdemo_totalcostusd, apdemo_costperspoolusd — are excluded at the schema level in this demo environment. They exist in the Dataverse table definition but are not populated and are hidden from both roles via field-level security profiles. These fields would be present and secured (not merely hidden) in a production deployment.
Lifecycle
The demo environment follows the same ALM patterns used in enterprise client projects.
apdemo_ prefix — isolates demo assets from any future production solution in the same environment.pac solution export), unpacked to source format, committed to Azure Repos. Pipeline handles import to target environments.@demo.local emails, and (555) 000-XXXX phones. Financial fields excluded at schema level — not just hidden.