PL-100 study materials
PL-100 study resources

PL-100 cheat sheet

PL-100 · Keep the key ideas within reach.

Quick reference

Design and manage business solutions

  • Environment strategy: default environments hold Dataverse and are backed up; developer environments are single-user and not intended for production; sandbox environments support managed solutions, testing, and copy/reset.

  • Solution layering order (bottom to top): system solutions, managed solutions, unmanaged customizations, then patches. Unmanaged customizations always win over managed layers at runtime.

  • Managed vs unmanaged: managed solutions cannot be edited directly and can be deleted cleanly; unmanaged solutions keep all components and can be exported as managed at export time.

  • Publisher prefix (2-8 characters) plus a customization prefix set the schema names of new tables and columns; changing the prefix later does not rename existing components.

  • Deleting a component from an unmanaged solution only removes it from the solution, not from the environment; deleting from a managed solution removes it from the environment.

  • Environment variables store configuration values with optional per-environment current values; Azure Key Vault references require a Key Vault secret URI and are resolved at runtime, not export.

  • Connection references decouple flows and apps from the credentials used; a solution containing a cloud flow requires a connection reference to be imported into another environment.

  • Security model: business units define data ownership boundaries; security roles are additive (privileges union); teams can own records and hold roles; column-level security uses field security profiles.

  • ALM path: develop in unmanaged solution, export managed, import to test, then to production; use pipelines or Power Platform CLI (pac solution) for automated deployment.

Quick reference

Analyze and visualize data

  • Power BI star schema: fact tables hold measures and foreign keys; dimension tables hold descriptive attributes; relationships are one-to-many from dimension to fact.

  • Relationship cross-filter direction: single direction filters from the one side to the many; bi-directional filtering introduces ambiguity and performance cost and is limited by security rules.

  • DAX CALCULATE changes filter context; it evaluates its filter arguments first and can override existing filters unless KEEPFILTERS is used.

  • Row context vs filter context: calculated columns evaluate row by row; measures evaluate in filter context. Use RELATED for many-to-one lookups and SUMX/AVERAGEX for row-by-row iteration.

  • Time intelligence functions such as TOTALYTD, SAMEPERIODLASTYEAR, and DATEADD require a marked date table with contiguous dates and no gaps.

  • Visual choice rule: comparison across categories uses bar or column charts; trend over time uses line charts; part-to-whole uses stacked bar or treemap; correlation uses scatter charts.

  • Row-level security: roles with DAX table filters plus a relationship to a user-mapping table; members added to the role in the Power BI service; test with "View as role".

  • Power BI report vs dashboard: a dashboard is a single-page canvas of pinned visuals from one or more reports and does not support cross-filtering across different reports.

Quick reference

Create business solutions

  • Canvas app delegation: filtering must be delegable to the data source; non-delegable functions (e.g., Search on some connectors, complex expressions) return only the first 500 or 2000 records.

  • Model-driven app forms: main form, quick create form, and quick view form; business rules run client-side and can set/show/hide/require fields and show error messages without code.

  • Power Automate trigger choice: automated flows use a connector event; instant flows use a manual trigger; scheduled flows use recurrence. Approval actions pause the run and resume on response.

  • Power Fx essentials: If(), Switch(), Coalesce(), and With() for scoping; LookUp() returns a single record; Filter() returns a table; Patch() creates or updates records.

  • Power Apps components and component libraries enable reuse across apps; custom connectors wrap REST APIs with authentication and are usable in both apps and flows.

  • Business process flows guide users through stages with required columns; they are stored in Dataverse and can branch based on conditions.

  • Dataverse plug-in pipeline stages: PreValidation, PreOperation (inside transaction), and PostOperation; synchronous plug-ins run in the transaction and can roll it back.

  • Choice columns vs lookup columns: choice stores a fixed option set value; lookup stores a reference to another table row and creates a relationship.