0% found this document useful (0 votes)
456 views65 pages

Configuring Microsoft Dataverse Tables

The document outlines the components and functionalities of the Microsoft Power Platform, including Power Apps, Power Automate, and Power BI, along with their licensing options and use cases. It details the configuration of Microsoft Dataverse, including the creation of databases, tables, and columns, as well as the types of connectors available. Additionally, it discusses the application of AI and process mining within the platform to enhance operational efficiency and user experience.

Uploaded by

rachit.m.shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
456 views65 pages

Configuring Microsoft Dataverse Tables

The document outlines the components and functionalities of the Microsoft Power Platform, including Power Apps, Power Automate, and Power BI, along with their licensing options and use cases. It details the configuration of Microsoft Dataverse, including the creation of databases, tables, and columns, as well as the types of connectors available. Additionally, it discusses the application of AI and process mining within the platform to enhance operational efficiency and user experience.

Uploaded by

rachit.m.shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

PL-200 Microsoft Power Platform Functional Consultant – Course 1

Identify Microsoft Power Platform components


Please note: not all topics are included in these notes. Please see the videos for details.

Identify Microsoft Power Platform components


1. Determine the required Power Apps app type for a business solution
• Power Apps is for forms with simple steps and basic charts and visuals.
• Power Automate is for more complex and multiple steps
• Power BI goes beyond basic visuals.
• Additional Power Apps may increase licensing requirements (and cost).

Identify existing resources and licenses


• What data source is appropriate?
• OneDrive, SharePoint, Dataverse
• Licensing (all prices per month)
• Power Apps - $5/per app/per user or $20/per user (subject to change)
• The per app price allows for the licensing of 1 apps or 1 portal in a
single environment.
• or the Developer plan, which is free for learning with individual use.
• It does not allow use dataflows, or create additional
environments.
• It is meant for development and test purposes only, and not
for commercial or production use.
• It does allow use of many premium connectors (some require
standalone plans).
• Power Automate - $15/per user, $40/per user with Robotic Process
Automation and 5,000 AI Builder units, or $500/5 flows for unlimited years.
• Certain Microsoft 365 plans include licensing for a lot of Power Apps
and Power Automate. But they are largely for use with Microsoft 365
applications – they don’t include premium connectors with Power
Automate or the ability to create custom apps.
• Power BI – FREE for free, $10/per user for Pro, or $20/per user or from
$5,000/capacity for Premium.
• Do you need a form “pixel-perfect” (model) or not (canvas)?
• Branding

4. Describe connectors
• There are three types of connections:
• Connectors which provide tables.
• e.g. Microsoft Excel, SharePoint, SQL Server, Dataverse
• Connectors which provide actions/functions.
• You can connect a control to an action using the Items property of
your control, e.g. Azure Blob Storage
• Connectors which provide both.
• e.g. Office 365 Users, Project Online
You can also divide it as follows:
• Standard

Page 1 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Identify Microsoft Power Platform components
• Usually Services available for free, on an Open basis, or provided by
Microsoft 365 or Power Platform.
• Azure Active Directory
• Bing maps
• Dropbox
• Dynamics 365 Customer Voice
• Excel and Excel Online
• File System
• Gmail, Google Calendar and Google Sheets
• LinkedIn
• Mail
• Microsoft Teams
• Microsoft Translator
• MSN Weather
• Office 365 Outlook and [Link]
• Power Apps
• Power BI,
• RSS,
• WordPress,
• YouTube
• Premium
• Usually Services which require a monthly or annual license, and is not in
Microsoft 365 or Power Platform, plus Dataverse database.
• Only available in Premium PowerApps license or Developer Plan
• Adobe Creative Cloud
• Azure (not AD or Sentinel)
• Dynamics 365 Customer Insights and Sales Insights
• MailChimp, SurveyMonkey
• Microsoft Dataverse
• MySQL, PostgreSQL
• Oracle Database
• SQL Server
• Word Online (Business)
• Custom
• Connector not included in the Standard or Premium – one that someone has
to design.

6. Describe use cases for AI and Microsoft Copilot in Microsoft Power Platform
• AI is used in Microsoft Power Platform using the AI Builder.
• Copilot can be used for both creating and modifying canvas Power Apps and Power
Automate flows. When modifying canvas Power Apps, you can use commands such
as:
• Adding a new email screen
• Adding a new screen
• Add a new screen with header body and footer
• Add a new button
• change selected button to have width 100

Page 2 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Identify Microsoft Power Platform components
• add a new icon
• add a new text label
• Change all buttons to grey
• Change all labels in the selected container to be red
• Add a button to the selected container
• when clicking on Button1, show screen 2
• It can also be used for automatically creating tables and sample data in the
Dataverse.

8. Describe use cases for Power Automate Process Mining


• Process mining allows you to analyse operational processes to identify ways to
improve the process. It allows you to:
• Improve efficiency, including supply chain management,
• Enhance customer experience,
• Optimize resources,
• Reduce non-complaint processes.
• It can be used for:
• Telecommunications, to streamline the activation process.
• Financial services,
• Manufacturing, to decrease the impact of supply chain disruptions,
• Automotive, identifying inefficiencies in creating product, and
• Customer service desk, identifying ways to reduce rework.
• It can also be used in Power Platform for to analyse:
• Power Automate Desktop flows,
• Power Virtual Agents, and
• Power Apps.
• The data requirements are:
• Case ID,
• Activity Name,
• Start Timestamp for event logs, or Start and End Timestamps for activities.
• You can use log data from your applications, such as SAP, Salesforce, or the Activities
table in Microsoft Dynamics 365.
• On the process map, you can see:
• How many cases are at each node – shown by a number and blue
ripples/bubbles,
• Arrow lines – this is the movement from one activity to another. The
numbers show how many times the process went from one particular activity
to another.
• In the process map, you can also view:
• In the frequency layer:
• Total count (the number of times the activity was done),
• Case count (the number of times the activity was done, but just once
per case), and
• The Maximum occurrence in case (the maximum numbers of times
that activity was done in a particular case).
• In the performance layer, you can see:
• Total duration,

Page 3 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• Mean duration (average),
• Maximum duration, and
• Minimum duration.
• In the re-work layer, you can see:
• Self-loop count – when the same activities happens twice in a row,
• Rework count – the number of self-loops and loops,
• Loop outflow – the number of repetitions of an activity’s successors.
• Loop inflow – the number of repetitions of an activity’s predecessors.
• Loop count – the number of times an activity is repeated (not
necessarily immediately).
• Net loop gain – the loop outflow less the loop inflow.
• You can also use Copilot to assist in the analysis.

Configure Microsoft Dataverse


What is the Dataverse/Common Data Service (CDS)?
• Common Data Service was an open data model standard.
• It was published in the “Open Data Initiative”, an industry-wide initiative.
• In November 2020, it was renamed to become Microsoft Dataverse, and some
terminology was changed as well.
• Easy to manage
• Easy to secure
• Access Dynamics 365 Data
• Rich metadata
• Logic and validation
• Productivity tools
• Every environment has:
• A specific geographic location, and
• A maximum of one Microsoft Dataverse database (optional)
• Power Apps apps and Power Automate flows can only use the particular Dataverse in
their environment.

Old name New name

Entity Table
Field/attribute Column
Record Row
Option set/multi select option set/Picklist Choice
Two Options Yes/No

Create a Dataverse database


• Option 1 - Go to the Power Platform Admin Center
• [Link]
• Go to Environments and click on the relevant environment.

Page 4 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• Click on “Add database”.
• Enter:
• Language
• This configures database collation settings automatically.
• Currency,
• “Enable Dynamics 365 apps”, if you want to automatically deploy apps such
as Dynamics 365 Sales and Dynamics 365 Customer Service.
• Choose whether to “Deploy sample apps and data”.
• You will not see this option if you “Enable Dynamics 365 apps”.
• Select a security group.
• Click “Create my database”.
• Option 2 – in Power Apps, go to Data or Tables, and click on the button “Create a
database”.
• To install or remove sample data:
• Go to the Power Platform admin center -
[Link]
• Go to Environments – select environment.
• Settings – Data management – Sample data.
• Click “Remove Sample Data” or “Install Sample Data”.
• You can also import data from here.
• In xlsx, xml, csv, txt or zip format.

10. Create tables and table columns based on a data model


• To create a table in the Power Apps portal ([Link]), go to Tables, and
then click on “New table – New table”.
• There are five types of tables:
• Standard – base set of entities created in the Dataverse.
• Fields can be added, but not deleted.
• Display names can be renamed.
• Tables can be hidden (using security).
• Custom – a “blank” table.
• Complex – contains server-side business logic. May contain workflow and
plug-ins.
• Requires Dynamics 365 license or “per user” plan.
• Restricted – stores data not normally used outside of Dynamics 365, or
maintains data in a specific way.
• Requires Dynamics 365 license.
• Virtual tables – a table from an external source, such as Azure SQL Database.
• Dataverse allows for two types of ownership of entities:
• Organization owned. Access level is at the user level.
• Activity tables cannot be owned by an organization.
• User or Team owned (Teams are owned by a Business Unit). Access level is at
the:
• Organization level,
• Business Unit level,
• Business Unit and Child Business Unit level, or
• User’s own records only.

Page 5 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• This happens when the Table is created. It cannot be later changed.
• Activity tables are for tasks. They have columns such as:
• time dimensions (start, stop, due data, duration),
• Subject, description,
• Status: opened, canceled, completed.
• Standard activity tables include:
• Appointment – Commitment representing a time interval with start/end
times and duration.
• Email – Activity that is delivered using email protocols.
• Fax – Activity that tracks call outcome and number of pages for a fax and
optionally stores an electronic copy of the document.
• Letter – Activity that tracks the delivery of a letter. The activity can contain
the electronic copy of the letter.
• Phone Call – Activity to track a telephone call.
• Recurring Appointment – The master appointment of a recurring
appointment series.
• Task – Generic activity representing work needed to be done.
• When creating a table, enter:
• Display name (and plural), and
• Primary Name column (only one per table – not compound).
• This is then automatically created.
• There is also a hidden Primary Key, a GUID.
• You can have alternative keys (index) – this can be single or
compound, and will be Unique and Required.
• To do this, go to Power Apps – Data – NameOfTable – Keys –
Add Key.
• Already inserted data needs be unique, or the Key will not be
inserted.
• You can have up to 5 Keys per table.
• Keys, as an index, can improve database performance. It is
also useful for linking to external data sources.
• To create a column, go to Either New – Column, or click on Columns, and then New
column. When creating a column, enter:
• Display Name,
• Description (displayed as tooltips in model-driven apps)
• Data Type
• Text – Single line of text
• Plain text. This is a single line of text. Can use Max Length.
• Text area is for a multi-line text box, up to 4,000 characters.
For more, use Multiline Text, up to 1,048,576 characters (but
adjustable downwards).
• Rich text (formatted text).
• Email – a validated email address.
• Phone number – a validated phone number which can be
called using Skype.
• Ticker symbol
• URL – a validated website.

Page 6 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• Text – Multiple lines of text
• Plain text.
• Rich text.
• Number (you can use Minimum and Maximum Values)
• Whole Numbers
• Decimal – up to 10 decimal places, exact.
• Float (floating point) – up to 5 decimal places, approximate,
but better performance.
• Language code
• Duration – to the nearest minute. Can select from the list or
type the number of minutes, or entered as “x
minutes/hours/days”, or “x.x hours/days”.
• Time zone
• Date and time – the Advanced options allow for different Behaviors:
User’s local time zone, Date Only and Time zone independent.
• Date and time, or
• Date only.
• Lookup
• Lookup
• Customer
• Choice
• Choice [previously called “Option Set”] – list of choices, select
only one. Choices [previously called “Multi Select Choice”] –
list of choices, select one or more.
• To create a new Global choice options, click “New
choice”. This is reusable and is best when using in
multiple columns.
• You can edit Global choices by going to Power
Apps – Data – Choices (not Tables!).
• If you do this, then all columns using this Global
choice will be changed.
• To create a new local choice, click “View more” and
choose “Local choice”. Best when using in one column
only.
• When setting up choices, it’s quicker to add “New
Items” and then double-Tab through the “New Items”.
• You can also set up a Default Value.
• Yes/No [previously called “Two Options”] – list of two choices
(not necessarily “Yes/No”), select only one.
• Currency – choose precision level, or set based on a currency or
organization standard.
• Autonumber – generated by the server.
• These are really text columns.
• Have a string or date prefixed number:
• My-1000, My-1001, My-1002
• 2025-05-16-1000, 2025-05-16-1001 etc.
• Or a Custom format

Page 7 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• CAR-{SEQNUM:3}-{RANDSTRING:6}.
• SEQNUM gives the Minimum Length (can be
exceeded).
• RANDSTRING Length is between 1 and 6.
• Needs a starting “seed” value.
• File
• File
• Image – maximum of 1 image column per table, column is
always named “tableImage”.
• Formula (preview)
• Once saved, the data type cannot be changed – you need to delete and add a
new column.
• However, you can rename it by clicking on it.
• Required (optional, recommended, required),
• Default value (if required), and
• Searchable (using Advanced Find in model-driven apps using the Web Client –
not available in Unified Interface clients).
• When creating columns, enter Behavior:
• Simple – a standard column
• Calculated
• uses columns from the current table or related parent tables.
• Can use AND/OR operators,
• Functions include ADD/SUBTRACT/DIFFIN-HOURS, -DAYS, -WEEKS, -
MONTHS, -YEARS, CONCAT
• TRIMLEFT, TRIMRIGHT removes not spaces, but the first/last X
number of characters.
• Use for:
• Multiplying/adding/subtracting/dividing columns
• Calculating total costs
• Follow up dates (in 7 days’ time, for example).
• Only recalculated when a row is saved, not when a field is updated.
• Rollup – up to 10 columns per table, and 100 per organization.
• SUM, COUNT, MIN, MAX and AVG
• Calculate totals, counts, earliest time.
• Cannot trigger a workflow.
• Not instantaneous – automatic, and the maximum recurrence setting
is one hour.
• You can also enable attachments – these will be saved with a particular row:
• Do it at the time of creation, or
• Go to Power Apps – Tables – [Name of Table] – Properties – Enable
Attachments – Done – Save Table.
• To import data into a table, go to the Table, and then:
• Import – Import data,
• Import – Import data from Excel,
• Export – Export data (so you can edit it in Excel), or
• Export – Link to Azure Synapse.

Page 8 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
11. Link tables by using lookups or relationships
• To create relationships:
• In the Power Apps portal – go to Power Apps – Tables – [Name of Table] –
Relationships, and click on “Add relationship”.
• Relationships are links between tables:
• Typically one-to-many and many-to-many.
• One-to-many relationships are also called parent-child relationships, with
zero, one or many on the “many” side.
• Usually using a Primary or unique key on the one side.
• In the Advanced options, you can select how changes to one table can affect another
one. You can change the “Type of behavior”:
• Referential. This changes how deletions can be cascaded:
• Remove Link – Remove the lookup value for all related rows.
• Restrict – Prevent the primary table row from being deleted when
related table rows exist.
• Parental. Any action on the parent table is also taken on the related table.
• Custom. You can fine-tune Delete, Assign, Share, Unshare and Reparent:
• Cascade All – Perform the action on all related table rows.
• Cascade Active – Perform the action on all active related table rows.
• Cascade User Owned – Perform the action on all related table rows
owned by the same user as the primary table row.
• Cascade None – Do nothing.
• Once created, a new column of Lookup data type will be added.

12. Describe use cases and capabilities of business rules.


• Business rules allow you to apply business logic at the data layer (not the app layer).
• They can, for both canvas and model-driven apps:
• Validate stored data,
• Set/clear field values,
• Show error messages for invalid data.
• This means that the data will not be saved.
• Model-driven apps only can also:
• Show/hide/enable/disable fields,
• In canvas apps, this would be require formula logic, not business
rules.
• Create business recommendations based on Business requirements.

12. Create Dataverse business rules


• Business rules allow you to apply business logic at the data layer (not the app layer).
• They can therefore be used in Power Apps, Power Automate, or API.
• To access them, go to Tables – Business rules.
• Business rules have:
• Condition – the trigger; should the “true” or “false” side of the business rule
be run?
• Action – logic in the true or false side.
• Scope (for model-driven forms) – Entity/table, all model-driven Main and
Quick Create forms, or a specific Main (not Quick Create) form

Page 9 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• The scope for canvas apps is always “Entity”.
• All business rules apply when the form loads, and when the value of a
relevant field is changed.
• “Entity” business rules also apply when a record is saved, and when a
record is created in Power Automate, APIs or the portal.
• To create a business rule, go to Tables, and then Business Rules.
• Business rules run whenever a relevant field’s value is changed.

13, 14. Configure security roles


• You can create a custom security role by going to:
• Power Apps – Admin Center – Environment – Access (right) See all – New role
– enter a name.
• Or share an model-driven app, and click on “New security role”
• Locate tables, and add permissions:
• Read, Create, Delete, Write,
• Assign (give ownership of a record to another),
• Share (give access of a record to another),
• Append (attach an activity/note to a record), and
• Append To (attached a record to an activity/note)
• You may have user or team privileges:
• User privilege: create your own records, for instance.
• Team privileges: create or view records with the Team (not individuals) being
the owner, for example.
• Predefined security roles without a Dataverse database:
• Environment Maker
• Create new resources in an environment, including apps, connections,
custom APIs, gateways and flows.
• Can distribute their apps to other users.
• Has no rights to access data.
• Environment Admin
• Can provision a Dataverse database.
• View and manage all resources created in an environment.
• Set DLP (data loss prevention) policies.
• Add/remove users from Environment Admin/Maker role.
• Additional predefined security roles with a Dataverse database:
• System Administrator
• Full permissions to customize/administer the environment, including
creating, modifying, and assigning security roles.
• When a Dataverse database has been provisioned, all Environment
Admin users will be assigned this System Administrator role.
• Can view all data.
• System Customizer
• Customize the environment (e.g. add new tables), but only has access
to its own records.
• Basic User
• Run an app and read, create, write and delete own records (standard
tables).

Page 10 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Configure Microsoft Dataverse
• Delegate
• Impersonate another user.
Environment Environment System Admin System Customizer
Maker Admin
Canvas apps, connectors, connection, data gateway, n/a
dataflows
Cloud flow (non- Cloud flow Cloud flow Cloud flow (solution
solution aware) aware)
n/a n/a Dataverse tables, model-driven apps, solution
frameworks, desktop flows, AI Builder
No access to data No access to data Access to all data Access to own data only

Environments with or without Only for environments with Dataverse


Dataverse database database

• If a table is custom, then you will need to define security when you publish.
• Publish – Manage security roles
• Security role privileges are cumulative (additive): you have all privileges in all roles
assigned to you.
• User – access to your own records, records that shared with you, and records
in which you are a team member.
• Business Unit – User plus access to information throughout the business unit
(usually reserved for managers).
• Parent: Child Business Units – Business Unit plus all subordinate business
units (not just their own). Usually for higher-level managers.
• Global – All records in the organisation.
• These security roles can be assigned to:
• users,
• owner team and
• Azure Active Directory group team
• An owner team and Azure AD group team can own records and has security roles
assigned to the team.
• They have full access rights to their records.
• The Azure AD group types are Security and Office.
• To create an owner team:
• Go to Settings – Advanced Settings.
• Go to System – Security – Teams, and click on “New”.
• Enter team name, business unit (or the root business unit – the first one
created for an organization), administrator, Owner, and any other fields.
• Adding a user to an environment
• Power Apps – Admin Center – Environment – Settings – Users + Permissions –
Users, and then
• Add user if it doesn’t exist.
• enter users and click “Add Users” button.

Page 11 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Manage Microsoft Power Platform components during development
• They are given:
• Basic/Dataverse User, and
• Environment Maker.
• Removing users from a security group is done form the Microsoft 365 Admin
Center - [Link]
• When creating model-driven apps, you need to users to a security role that is
assigned to the app.
• To check current roles for a user:
• Power Apps – Admin Center – Environment – Security
• Click on “list of users” under “Step One”.
• Check the user name.
• You can then “Manage User Roles” in the resulting dialog box.

Manage Microsoft Power Platform components during development


18. Create a solution
• Go to Solutions on the left-hand side.
• Go to “New solution” at the top.
• Enter Display Name, Name, Publisher, and version.
• It will be an unmanaged package.

19. Describe unmanaged solutions


• Used to transport apps and components from one environment to another.
• Contains site maps, tables, processes, web resources, flows and more.
• Unmanaged solutions
• Used in development environments.
• There are two default unmanaged solutions:
• Common Data Service Default Solution. It has a random publisher
prefix.
• Default Solution. All components in the system. It cannot be Exported.
• These two unmanaged solutions use the default publisher and publisher
prefix assigned to the solution.
• If an unmanaged solution is deleted, it is only the container which is deleted.
All unmanaged customizations then belong to the default solution.
• Managed solutions
• Used to deploy to other (non-development) environment – test, User
Acceptance Testing (UAT), system integration testing (SIT) and production.
• Managed (“controlled” in other programs) solutions should be generated by
exporting an unmanaged solution as managed.
• Components cannot be directly edited within a managed solution.
• You could add them to an unmanaged solution, which creates a
dependency. Managed solutions with a dependency cannot be
uninstalled.
• You can also lock down components using going to Power
Apps/Automate – Solutions – NameOfSolution – NameOfComponent
– Managed properties.

Page 12 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Manage Microsoft Power Platform components during development
• Managed solutions cannot be exported – only deleted. When deleted, all
components as well as the solution will also be deleted.

19. Export solutions


• The default solution cannot be exported.
• You can lock down components using going to Power Apps/Automate – Solutions –
NameOfSolution – Managed properties. These can include:
• Allow customizations – if this is false, none of the other options are available.
• Display name can be modified.
• Can change additional properties.
• New forms/charts/views can be created.
• Can change hierarchical relationship.
• Can change tracking be enabled.
• Can enable sync to external search index – whether relevance search can be
enabled.
• These only take effect when the Solution is Managed.
• To export a solution, go to Power Apps/Automate – Solutions, select the solution
and go to Export.
• You should click “Check for issues” before you export.
• If you have made changes that you would like to export, click “Publish”
before you export.
• You can then give the export a version number, and whether it is unmanaged
(development or source control) or managed (test or production).
• The version number is four numbers separated by dots. Those
numbers are major number, minor number, build number and
revision number.
• It will take a little while, but a zipped file will be downloaded to your computer.
• The file will have the solution name, managed/unmanaged, and version
number.
• You can then Import it into your other environment by going to Power Apps –
Solutions.
• You cannot add instant flows into a solution when:
• it was created outside of a solution and
• the flow trigger is set to manual.
• You also cannot add custom connectors created outside solutions.
• You can “View solution package details” if you would like.
• If the “solution package contains an update for a solution that is already
installed” (which you will see in a yellow bar), you can upgrade (default) or
click on Advanced Settings (more in “Support deployment”).
• You can have “Enable SDK messages and flows included in the solution” –
these are external packages.
• If your solution contains connection references, you will be prompted to
select or create the connections.
• If your solution contains environment variables which are not already
present, you will be prompted to enter values.

Page 13 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Manage Microsoft Power Platform components during development
• If your import was not successful, you can click “Download Log File” – it will
probably show that some required components were not included in the
solution.

20. Move individual apps and flows between environments


• You can export Power Automate flows by clicking on the … next to the flow, and
select Export – Package (.zip).
• You can then enter a name (required), environment and description (if you
don’t enter any, “N/A” will be entered),
• Review the Import Setup and add a content for the actions.
• You can then import it by going to My flows – Import
• If any Import Setup read “Select during import”, then you need to
select it before you can click Import.
• It will be imported “off” – you need to “Turn on” in order for it to run
or to be tested.

21. Add existing apps and flows to a solution


• The Default solution:
• Has a random customization prefix.
• It is added to all items, columns, relationships or choices in the default
solution.
• You cannot change the publisher or prefix of a default solution.
• Cannot be exported.
• To create a solution, go to Power Apps – Solutions – New solution.
• Add the display name, name, publisher, version, and optional description.
• The Name is a unique solution name, and cannot be edited after
changing the solution.
• New publishers will include Display Name, Unique Name, Publisher Prefix,
Option Value Prefix and Contact Details.
• Option Value prefix is for naming “Choices”, and is a number between
10,000 and 99,999.
• To add new apps, flows and tables, go to Power Apps – Solutions –
NameOfSolution – and click on “New”.
• To add existing apps, flows and tables to an existing solution, go to Power
Apps – Solutions – NameOfSolution – and click on “Add existing”.
• You may be able to select from the “From solutions” and “Outside
solutions” tabs.
• You cannot add instant flows created outside of a solution where the
flow trigger is set to manual.
• To edit them, select the apps, flows and tables in Power Apps – Solutions –
NameOfSolution – and click on the “Edit” (or go to the … and click on Edit).
• The details button for flows only will take you into the Flows – Details
section.

Page 14 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and consume Power BI dashboards

Create and consume Power BI dashboards


22. Create Power BI report by using Power BI service
• When creating a new report, can connect to data in an Excel spreadsheet, csv files,
Power BI Desktop Files, OneDrive, SharePoint, and previously shared or used
datasets.
• Can refresh using most data sources, but not Hadoop File (HDFS). Some types (such
as on-premises databases) may require gateways.
• Can create reports, including creating visualizations, and creating cross-report drill
through reports.
• In reports, you cannot Get and Transform data, and develop models, including
calculated columns and measures. You can do this using dataflows.
• Can create dashboards. A Pro license or Premium capacity is needed for workspaces
or apps (for sharing).
• Can access using Power BI Mobile App

24. Embed Power BI content in Power Apps


• Inserting Power BI tiles
• To add a Power BI tile to a canvas app, go to Insert – Charts – Power BI tile.
• To add a Power BI tile to a model-driven app:
• Go to “+Add page” – Custom page – Create a new custom page
• Name the page, and click Add.
• Then go to Insert – Charts – Power BI tile.
• Inserting Power BI Dashboards
• To create a system dashboard
• Go to Solutions – NameOfSolution – New – Dashboards – Power BI
Embedded.
• Enter:
• Display name (shown to the user),
• Power BI report or dashboard,
• Use environment variable if appropriate,
• Power BI workspace,
• Power BI report/dashboard
• You can also send information to Power BI regarding the environment:
• Use environment variable.
• You can click “New environment variable”.
• Environment variables can also be used for other Power Apps
and Power Automate flows, so you can deploy them
elsewhere but know what environment they are in.
• Set the Display Name (it includes the publisher prefix), default
workspace value and default report value.
• You could also add environment variables by going to Solutions –
NameOfSolution – New – Environment variable.
• To add it to a model-driven app
• Go to “+Add page” – Dashboard, and click Next.
• Go to “Power BI dashboards”, select the relevant dashboard, and click
Add.

Page 15 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models

Describe AI Builder models


27. Identify model types including prebuilt and custom models
• Custom models
• Both pre-built and custom models
• Text Category Classification
• Categorises text by meaning.
• Entity extraction
• Looks for location, dates, emails, names and numbers
• Document processing model (previously known as Form processing)
• Extracts text from images.
• Works on JPG, PNG and unprotected PDF files.
• Text-embedded PDFs as best.
• Object detection model
• Identifies objects from uploaded images
• Counts number of objects included.
• Objects on retail shelves (products densely packed)
• Brand logo (logo detection)
• Common objects (anything else)
• Prediction model
• Will something happen, based on past history data?
• Binary prediction – Yes/No
• Multiple outcome prediction – more than 2 outcomes.
• Numerical prediction

Page 16 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models

Prebuilt Custom Availability

Prediction model Power Automate


Category classification model Category Power Automate and Power Apps
(preview) classification (formula)
model
Entity extraction model Entity extraction Power Automate and Power Apps
model (formula)
Object detection Power Automate and Power Apps
Document Power Automate and Power Apps
processing model
Business card reader Power Automate and Power Apps (canvas
and model-driven)
ID reader Power Automate
Invoice processing (preview) Power Automate (used indirectly for Apps)
Key phrase extraction Power Automate and Power Apps
(formula)
Language detection Power Automate and Power Apps
(formula)
Receipt processing (preview) Power Automate and Power Apps
Sentiment analysis Power Automate and Power Apps
(formula)
Text recognition Power Automate and Power Apps

• Prebuilt models:
• Business card reader uses the form processing model
• English only. Reads an uploaded photo/picture (jpg, png, bmp, tif).
• If a business card, extracts required information.
• ID reader (preview)
• Passports and US driver licenses. Does not retain image.
• Invoice and receipt processing (2 separate models – preview)
• Invoice processing (preview) - English invoices from the USA only, up
to A3/Legal paper size.
• Receipt processor (preview) - English receipts from the USA only, such
as restaurants, gas/petrol, retail receipts – not full page invoices. Up
to 200 pages in a PDF.
• Key phrase Extraction model
• Trends from Twitter, surveys, emails, forms.
• Use in conjunction with sentiment analysis.
• Language detection model

Page 17 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models
• Send received emails to language specialists
• Save information in language-specific folders
• “en” if English generally, “en-US” if US English, “unknown”
• Sentiment analysis
• Positive/negative/neutral/mixed
• Social media, customer feedback, email sentiment
• Text recognition model
• OCR printed and handwritten text from images
• car license plates, ID cards, handwritten notes
• PowerAutomate - [Link]
us/learn/modules/get-started-with-ai-builder-text-
recognition/3-build-flow and Power Apps - next page
• Text translational model (no longer works)
• 60+ languages, up to 5,120 characters.
• ID Reader, Invoice Processing, Language Detection are the only ones which can only
be used in Power Automate.

28. Describe the process for training models


• Text Category Classification
• Categorises text by meaning.
• Select text – select the table and column where text is stored.
• Select tags – Select column where tags are stored.
• Select language
• Select Train my AI.
• Can be used for:
• Sentiment analysis – positive, negative, neutral or mixed,
• Spam detection,
• Customer request routing.
• Entity extraction model.
• Prebuilt model looks for:
• City, Continent, Country/region, state, street address, zip code
• Age, Color, Date/time, duration, email, event, language,
money, number, ordinal, organization, percentage, person
name, phone number, speed, temperature, URL, weight
• Documents cannot exceed 5,000 characters.
• Both pre-built and custom are available in English, Chinese-Simplified,
French, German, Portuguese, Italian and Spanish
• Create a new entity type, with at least 5 examples. For example, if the entity
type was Appearance, then you could have “This guy was {good-looking}”.
• You can also modify an existing entity type, with at least 5 examples.
• You can also deselect any prebuilt entities.
• Document processing model
• Extracts text from images.
• Works on JPG, PNG and unprotected PDF files.
• Text-embedded PDFs as best.
• To do this:
• Fields - Enter names of fields, clicking + to add them.

Page 18 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models
• Tables – Enter names of tables and columns to be extracted.
• Create collections – groups of at least 5 documents with the same
layout.
• Analyze – AI Builder detects fields and tables.
• Tag – Tab fields and tables (and tag the columns)
• Train the model.
• Object detection model
• Identifies objects from uploaded images
• Counts number of objects included.
• To do this:
• Select the domain, which is the use model:
• Objects on retail shelves (products densely packed)
• Brand logo (logo detection)
• Common objects (anything else)
• Provide object names
• Up to 500 per model.
• Enter in AI Builder or select names from Dataverse.
• Upload images
• From local storage, SharePoint, or Azure Blob storage
• Tag images
• Tag at least 15 images per object name
• Prediction model
• Will something happen, based on past history data?
• Binary prediction – Yes/No
• Multiple outcome prediction – more than 2 outcomes.
• Numerical prediction
• To do this:
• Entity – select the table that contains the data and outcome you want
to predict.
• Field – select the column that contains the outcome.
• You need at least 50+ rows per historical outcome table in Dataverse,
and 10+ rows per outcome value.
• After training, AI Builder gives a grade A (best) to D (something is wrong).
• Power Apps – Build starts using AI models.
• You can Save it as a draft to come back to later.
• Power Apps – Models where the models are stored.
• When you are happy with your model, click Publish. It is now available to use
in Power Automate and Power Apps (where appropriate).
• You can have up to three models:
• Current published version,
• Last trained non-published version, and
• Draft (not trained) version.
• When editing your mobile, you can start from either the current published
version or the last trained non-published version.
• You can share your model by going to Share.
• Models that you have shared appear in Power Apps – Models –
Shared with me (as opposed to Power Apps – Models – My models).

Page 19 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models
• When shared, you can use it in apps and flows.
• You cannot view details or edit it.

29. Use a model from within Power Automate or Power Apps


• Power Apps
• Go to Insert – AI Builder
• Choose from: Business card reader, receipt processor, form
(document) processor, object detector and text recognizer
• To investigate the data, you can then go to:
• Insert – Data table,
• set Items to the name of the AI component, and
• Edit fields – add fields.
• Have a look at the Confidence – how sure is the AI that the data is
correct?
• Power Automate
• Add it into an existing flow, or search for “AI Builder” in the templates.
• Text
• Analyze positive or negative sentiment
• Classify text into categories with one of your custom models/standard
model
• Detect the language being used in text
• Extract entities from text with one of your custom models/standard
model
• Extract the key phrases from text
• Objects
• Detect and count objects in images
• Predict
• Predict – custom AI builder models
• Whether something will happen by field/record ID
• Process and save information from
• forms, ID documents, invoices, receipts
• Read business card information
• Recognize text in an image
• Text recognizer properties (the Default properties can be set to these).
• OriginalImage
• Results. and Selected. – all text lines and the currently selected one. They
have the following properties:
• BoundingBox – coordinates
• PageNumber
• Text
• Receipt processor properties (all strings)
• MerchantName, Address, Phone
• TransactionDate, Time
• PurchasedItems. – a list containing
• Name, Price, Quantity and TotalPrice
• Subtotal
• Tax

Page 20 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Describe AI Builder models
• Tip
• Total
• Invoice Processing
• Power Automate only – but can be called in Power Apps. Properties include:
• invoice_id
• invoice_total
• Use code such as the following on a button:
• Set(FlowResults, [Link]
([Link])); Set(InvoiceId, FlowResults.invoice_id);
Set(InvoiceTotal, FlowResults.invoice_total);
• Business card reader:
• AddressCity, Country, PostalCode, PostOfficeBox, State, Street
• FullAddress
• BusinessPhone, MobilePhone, Fax
• CleanedImage and OriginalImage
• CompanyName
• Department
• Email and Website
• FirstName, LastName and FullName
• JobTitle
• Sentiment Analysis
• [Link](TextInput1).sentiment
• [Link](“Esta fiesta es mi favorita”, { language:
“es-ES”}).sentiment
• Category analysis
• Concat([Link] (TextInput1).categories , type & ",") -
Returns all categories that belong to the text, in list form.
• Language detection
• [Link](TextInput1).language - two-letter language code.
• Key phrase extraction
• Concat([Link](TextInput1).phrases, phrase & ",") - key
phrases.
• Entity extraction
• Concat([Link](TextInput1).entities, type & ", ") - types
of entities.
• Object detector properties
• ModelId – which AI model?
• OriginalImage
• GroupResults., containing
• TagID
• TagName
• ObjectCount
• Results. – the outputs, containing:
• BoundingBox
• Confidence
• TagId, and
• TagName.

Page 21 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• Form detector properties
• ModelId – which AI model?
• OriginalImage
• Fields
• Tables
• Results., containing
• BoundingBox
• Confidence
• PageNumber and
• Value

Create and manage model-driven apps


30. Create model-driven apps
• Model-driven apps design phases:
• Model your business data
• Table, Column, Relationship, Choice column (single or multiple values)
• Security, including:
• National/state/local data regulations
• Company/trade regulations
• User interface
• App (components, properties, client type, URL)
• Pages and Navigation including:
• Form (data entry),
• View (a list of records).
• Define your business processes / logic
• Business logic
• Business rules – column requirements, hide/show columns,
validate data.
• Business process flow – how to go through submission. Does
the user need approval for an invoice?
• Workflow – automation not requiring Power Automate.
• Actions – manual processes
• Flows – automated workflows using Power Automate.
• Build the app (output)
• Charts (graphs)
• Dashboards – one or multiple visuals
• Embedded Power BI – tiles and dashboards
• Design it in the App Designer.
• In the App Designer:
• Click on “Add page” (or go to Pages – New), and then select:
• Dataverse table. This adds a connected form and view based on a
Dataverse table.
• If you click on the view, you can go to properties on the right-
hand side, and select which Views and Charts can be used.
• You can also rename the title of the view by going the
“Settings” tab.

Page 22 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• Dashboard.
• In the Properties pane, you can select the Default Dashboard,
the Title and Icon.
• URL – this is a website link. Please note: The preview does not support
URL – you will need to Play the model-driven app to use it.
• Web resource – a file created by a developer.
• Custom page – this is a canvas app based on one screen.
• In the “Advanced settings” or the “Settings” tab, you can also adjust
the:
• Privileges (whether a page is shown based on a user’s
security),
• Locale (translated titles and descriptions),
• SKU (the versions of Dynamics 365 which display this page),
and
• Client (the clients which display this page).
• All of the pages are shown on the left-hand side of the model-driven app.
• If you want to edit a page, go to Pages – Navigation, hover over the
page and click on the pencil icon.
• You can also click on the … and go to:
• Edit table,
• Edit command bar,
• Move up (or down), and
• Remove from navigation. This moves it to “All other Pages”.
You can then click on the … and go to:
• “Add to navigation” (to move it back) or
• “Remove from app” (which deletes it).
• Pages are separated into groups.
• To add a new group, go to an existing group, click on the … next to it,
and select “New group”.
• You can also select “New page”, “Move up” (or down), or
“Remove from navigation”.
• You can also add areas in your model-driven app. This allows you to switch between
sets of groups and pages.
• This needs enabling by going to Settings – Navigation, or Pages – Navigation
and going to the Properties pane.
• You can select “Enable Areas”.
• You can also unselect “Show Home”, “Show Recent” and “Show
Pinned”.
• You can also select “Enable collapsible groups”. This allows for groups
to have a drop-down arrow next to them, and they can be collapsed,
so that all of the pages are temporarily hidden.
• You can also add comments at the top of the App Designer.
• Once you have designed your model-driven app, you should go to the top of the app
and click on Save, then Publish and then Play it to test it.

31. Create and configure Dataverse table forms


• To create a view – go to:

Page 23 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• Power Apps – Tables – select a table – Forms or
• Power Apps – Solutions – NameOfSolution – NameOfTable – Forms
• It uses the Unified Interface, which is better for responsive design (as
opposed to the Classic design).
• To create a new form, go to “New form”.
• To edit an existing form, click on the … next to the form, and go to
Edit – Edit or Edit – Edit in new tab.
• You can also use the … to “Turn off”, adjust the “Form settings”,
“Delete” or see “Advanced – Show dependencies”.
• In the properties on the right-hand side, you can adjust the:
• Title,
• Description (optional),
• Max Width (in pixels – the default is 1900), and
• Primary Image (optional).
• There are four different forms:
• Main
• The main interface for table data.
• Each table has to have a designated fallback form, used if there is no
specified form for a particular security role. To get into this, go to:
• Power Apps – Tables – [Name of Table] – Forms – Form
settings – Fallback forms, or
• Power Apps – Solutions – [NameOfSolution] – [NameOfTable]
– Forms - … - Form settings – Fallback forms
• If you have access to multiple forms, a form selector (with an arrow
indicator) is shown at the top of the screen.
• If marked as “inactive”, the form will not be used.
• QuickViewForm
• Used only in related tables. Display additional data in related tables.
• Needs a lookup field in the table (or the QuickViewForm will not be
visible).
• QuickCreateForm
• Creating new rows. Always has one section with 3 columns.
• Only the first available (based on security) Quick Create form per
table will be used.
• You can change the order by going to Tables – Forms and clicking on
the … next to the QuickViewForm.
• Card.
• Compact form view, good for mobile devices and dashboards. Can be
color coded.
• The tree view shows existing fields – you can also get to this by clicking on “Form
field”.
• Drag a field into position to add it into the body, or header/footer (a reduced
field list).
• You can hide the label, hide the field, either initially (it can be shown
using code) or on the phone view, or make it read-only.
• Click on the trash can to remove a field.
• You cannot delete locked fields.

Page 24 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• The “table columns” shows all columns, or unused table columns.
• You can also add components, such as:
• Layout
• 1, 2 or 3 column tabs (on main forms only), or 1-4 column sections, or
a spacer (a blank vertical space).
• Grid
• Editable grid or subgrid (a view of a related table).
• Subgrids cannot be added to Quick Create forms.
• Display
• Calendar
• Canvas app,
• External website (also known as an iFrame)
• It cannot be added to Quick Create forms
• Form,
• HTML web resource,
• Image web resource (also shown under the Media heading),
• Knowledge search,
• Map
• Needs enabling in your environment settings,
• Only 1 map allowed per form,
• Cannot be added to Quick Create forms
• Also shown under the Media heading.
• Quick view, and
• Timeline.
• Input
• Business card reader
• Uses AI Builder.
• Also shown under the AI Builder heading.
• Checkbox,
• Form,
• Number/pen input,
• Rich Text Editor Control,
• Star Rating (from 1 to 5 stars), and
• Toggle (on/off).
• Media
• Image web resource and map (as per display)
• Custom Controls, such Star rating, number input, toggle, an
• Power BI
• Power BI Report
• Related data such as Canvas app, Quick view, subgrid (a view of a related
table), timeline or knowledge search.
• Quick View Forms,.
• The classic form editor can also have:
• Reference panel for main forms (related data as above),
• Bing maps,
• Timer control,
• Web Resources,

Page 25 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• iFrame (content from another website),
• Custom controls, and
• Related tables (by clicking on “Navigation”).
• You can click on a fields and components and use the Properties pane to adjust
whether they are:
• hidden (so they are only shown through code),
• hidden on phone
• locked (not removed through the designer unless unlocked), or
• read-only.
• You can also add Table columns into a Header:
• Additional Table columns can be added into a flyout (arrow), if not hidden.
• If you click on the form (instead of a column), you can also go to the Properties pane
to adjust Events. Events can also be created:
• The events are
• Form OnLoad and OnSave,
• Tab TabStateChange (when a tab is expanded/collapsed).
• Field OnChange (data in a field changes and the control loses focus),
• iFrame OnReadyStateComplete (iFrame content loads).
• The event is a function which executes code in a JavaScript web resource
• To finish, click Save then Publish.
• Note: this does not close the window. Click “Back” to go back.

32. Create and configure Dataverse table views


• To create/edit a Public view, or edit a System view, go to:
• Power Apps – Tables – select a table – Views.
• Power Apps – Solutions – [NameOfSolution] – select a table (or add it to the
solution) – Views
• In the App Designer
• In the classic Solution Explorer
• From an app, Settings – Advanced Settings – Settings –
Customizations – Customize the System – Tables – select the table –
Views.
• There are three different types of views:
• Personal views
• Users with User level access to actions for the Saved View table can
also create personal views.
• Owned by individuals, visible only:
• by that user or
• who that user share their personal views with.
• They can be created in the model-driven app by using:
• Edit columns,
• Edit filters. You can:
• “add rows” (additional filters),
• “add groups” (so you can use AND and OR between
different filters), and
• “add related entity” (filters from related tables).

Page 26 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• Go to the drop-down list next to the name of the current view
and go to “Save as new view” or “Save changes to current
view”.
• You can also “Set as default view”.
• You can also “Manage and share views”. This allows you to:
• Hide the view,
• Set as default view,
• Share,
• Edit info (name and description),
• Assign,
• Delete,
• Deactivate, and
• Download FetchXML.
• Personal views will have a head and shoulders icon next to them.
• System views.
• These can be edited but not deleted or deactivated, or shown in the
view selector list, or used as sublists in a form or a list in a dashboard.
• There are 4 types:
• Associated – related tables for a row.
• Advanced Find – display results when using Advanced Find.
• Public views which include Contains/does not contain
data are not included in the Advanced Find.
• Lookup – select a row for a lookup column, and
• Quick Find – default view for Quick Find. Also defines the
columns that are searched when using Quick Find and Lookup
view searches.
• Public views:
• View called “Active” and “Inactive NAMEOFTABLE” will probably be
created when you create a new table.
• You can create public views and delete any public views you create.
• To edit system and public views:
• Go to Power Apps – Tables – [NameOfTable] – Views, and:
• Go to “New View”, or
• Select an existing view and click Edit (or click on the … next to it and
go to Edit – Edit or Edit – “Edit in new tab”).
• Click on the view (or right-hand click and go to “New Window”).
• To view the “Table columns” pane, click “+ View column” in the top-left hand
corner or near top-right, or the hamburger icon in the left-hand side and then
“Table columns”.
• In the drop-down, you can select Default, All and Custom.
• You can also hide any columns which have already been used.
• To add columns, click on it.
• You can also click on “Related” for related tables’ fields – tables which
have a 1:N relationship.
• You can filter and sort in the right-hand pane.
• To remove columns, click on it and select “Remove”.

Page 27 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage model-driven apps
• You can also sort, filter (using the expression builder), resize column
widths, and move the columns there as well.
• To finish, click Save then Publish.
• Note: this does not close the window.

35. Create model-driven charts


• Go to Power Apps – Tables – [NameOfTable] – Charts, and:
• Go to “New chart”, or
• Select an existing view and click Edit (or click on the … next to it and go to
Edit).
• You may need to blow up the window.
• You can create/edit charts from the App Designer or from Dataverse – Tables.
• Microsoft Chart Controls are column, bar, area, line, pie, funnel, tag,
doughnuts, multi-series, stacked and 100% stacked charts.
• You need to add a name, then which fields you are going to be using.
• There are personal charts, and system charts.
• There are also organization and user-owned charts.
• Organization charts.
• They are available across the organization.
• There is no more detailed access level.
• Need the System Administrator or Customizer role to create these.
• User-owned visualizations
• You have more control of access privileges and security.

33. Share model-driven apps


• Go to the Power Apps portal – Apps – click on the … and go to Share.
• Select the app, then choose a security role.
• You can select “Manage security roles” to create a new custom role.
• You then click “New”, then in the new window enter the “Role Name”, then
select the relevant security.
• You can locate tables, and add permissions:
• Read, Create, Delete, Write,
• Assign (give ownership of a record to another),
• Share (give access of a record to another),
• Append (attach an activity/note to a record), and
• Append To (attached a record to an activity/note)
• You can change them to:
• None selected,
• User,
• Business Unit,
• Parent: Child Business Units, and
• Organization.

34. Create and configure model-driven dashboards


• You can create a public single-stream dashboard in the Power Apps portal – Tables –
[Name of table] – Dashboards.
• “Single-stream” means that it relates to a single table.

Page 28 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage canvas apps
• You can create a 2, 3 or 4-column overview, or a 3-column overview with a
wider middle column.
• You can access public dashboards by going to Open Dashboards at the top of
the model-driven app (it may be hidden by the …)
• You can insert up to 2, 3 or 4 visual filters.
• They display as charts, providing aggregated calculations.
• They act as filters on a single tile – you can click on a specific bar, and
the streams filter accordingly.
• Visual filters are hidden in the dashboard by default. You need to click
on “Show Visual Filter” in the dashboard’s command bar to display
them.
• You can also add multiple streams.
• These can be based on views or queues. (Queues are used, for
example, in Dynamics 365.)
• You can configure what is shown in the view by customising the card
form.
• You can then create a private multi-stream dashboard by going to a public single-
stream dashboard and going to New – Dynamics 365 Dashboard.
• “Multi-stream” means that it can relate to multiple tables.
• You can choose from:
• a 2, 3 or 4-column regular dashboard,
• a 3-column overview, focused, or multi-focused dashboard, or
• a 4-column overview dashboard (this includes a list on the bottom
row).
• You can insert Charts, Lists, Web resources, Timeline and iFrames (external
website).
• You can also add Dashboards in the model-driven App Designer.
• You go to Pages – “+ Add” – Dashboard, and add:
• System dashboards,
• Interactive dashboards, or
• Power BI dashboards.
• There are two types of dashboards: user and system dashboards.
• An admin or customizer creates/customizes system dashboards for
everyone in the organization.

Create and manage canvas apps


37. Interpret App Checker results
• You can inspect Formula and Accessibility errors, warnings and tips.
• You can click through the “>”s (chevrons) to drill into the list and individual
details.
• A red dot on the App Checker shows formula errors:
• but not formula warnings, tips or accessibility issues.
• Warning signs on the canvas are:
• Red “x” circle – error.
• Yellow “!” triangle – warning.
• Blue “i” circle – suggestion.

Page 29 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage canvas apps
• App Checker is for Canvas apps only; you would check Model-driven apps against
Solution Checker.

38. Manage versions of canvas apps


• Each time you save an app, you get a new version.
• Saving makes it available for everyone who had edit permissions.
• It does not publish the app for everyone with whom the app is shared.
• To go to the versions of an app:
• Go to [Link]
• Click on the relevant app and then Details.
• Click on Versions. The published version has “Live” next to it.
• If you need to go back to a previous version:
• Go to Apps – click on the Icon for the App – and click on Restore.
• It needs to be less than 6 months old.
• A new version will then to be added to your list, which you can then
Publish.
• It does not overwrite a previous version.

39, 40. Publish and share canvas apps – users and security groups
• You can create security groups and add members to the security group in Microsoft
365 admin center - [Link]
• Go to Groups – Groups - + Add a group.
• Change the type to Security group, then add the Name and Description.
• Then click Add – Close.
• Select this new group, then Members – Edit, + Add members (or Remove
members).
• Add users to the security group, and then Save – Close a few times.
• You can also assign licenses there:
• Go to Users – Active users - + Add a user.
• You can associate security groups with a Dataverse environment in the Power
Platform admin center – [Link]
• You need to be an admin to do so.
• Click on Environments – select an environment – Edit (right-hand side).
• Then Security group – pencil (Edit).
• Select a security group, then Done and Save.
• To view Security roles, go to Environments – select an environment – Access
(right-hand side) – Security roles – See all.
• To create a custom security role:
• In the Power Platform admin center – go to Environments – select an
environment – click on the environment URL – gear icon – Advanced settings
– Settings – Security – Security roles – New.

39, 40. Publish and share canvas apps


• You can send makers an email which they have built their first flow or app with the
organization’s rules.
• You can share apps with individual users and Azure AD security groups
• or with “Everyone” in your organization.

Page 30 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create screens for canvas apps
• You cannot share it with a distribution group in your organization, or a group
outside of your organization.
• You can make users co-owners.
• They can use, edit and share the app, but not delete or change the
owner.
• You cannot grant Co-owner permission to a security group in an app
within a solution.
• When apps are shared, flows and some connectors (such as SQL Server with SQL or
Windows authentication, and on-premises data gateway) are shared automatically,
but not:
• Dataverse Tables, which need access separately, and
• some connections, such as OneDrive for Business, SQL Server with Azure AD
authentication, custom connectors, and data which not all users have access
to (such as a cloud Excel workbook).
• When sharing, you will be asked for security roles as appropriate.
• You can also check “Send an email invitation to new users”.
• Co-owners get a second link for opening the App for editing in Power Apps
Studio.

Create screens for canvas apps


Build canvas apps screens
• The default screens, when “Create an app from a data source”, are A Browse Screen,
Edit Screen and Details Screen.
• The browse screen includes galleries (data), Next Arrows and Icons.
• The gallery has a [Link] property.
• The details/edit screen includes a Detail/Edit Form (a row), which includes a
Data Card control (one column from that row) and Icons.
• You can select controls, then select a properties for that control.
• Holding down Alt performs the OnSelect action.
• To change the screen gallery type, click on the gallery, go to Properties – Layout.
• To change the detail form fields, go to Properties – Fields – Edit fields.
• You can reorder the forms or add or remove fields.
• You can also expand the field and enable “Edit multi-line text”.
• You can have screens which users cannot navigate to for documentation or settings.
• You can have icons
• You can change the OnSelect action to do an action when you click on it.
• You can have images
• Set Image = User().Image, and text to User().FullName or .Email.
• This is based on the information in the Power Apps players and studio.
• To change the screen size and orientation for tablets, go to File –Settings:
• 16:9 (Default), 3:2 (Surface Pro 3), 16:10 (Widescreen), 4:3 (iPad) and
Custom.
• “Lock aspect ratio” and “Lock orientation” stops the app from adapting to
other screens.
• You cannot change the screen size for Phone forms.
• Canvas apps can be saved by going to File – Save.

Page 31 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• You can also save them automatically every 2 minutes – see File – Account –
Auto save.

41. Build canvas app components


• Components are groups of controls that can be reused in later apps.
• Components cannot be edited in the main screen.
• Components cannot refer to anything outside of the component – they are
standalone.
• You can add custom (or global) properties (in Properties) – these are the
components inputs and outputs.
• Data type can be Text, Number, Boolean, Data and time, Image, Video/audio,
Color, Currency
• Data type can also be Screen, Record or Table.
• Once you have added a custom properties, you can then populate it (in Advanced -
Data).

41. Add canvas app assets and components to screens


• You can copy, duplicate, delete or rename components by clicking on the … next to
the component.
• You can import/export components by clicking on the … next to New component.
• You can insert the component on a screen (not in a component) by going to Insert –
Custom and selecting the component.
• However, creating custom components like this is deprecated. A new way is using a
Component library instead:
• Go to Power Apps Portal – Apps – Component Libraries – New component
library.
• After creating it, go to File – Save, then Publish.
• This publishes it in your environment only.
• In an app, to import it, go to Insert (or + on the left-hand side), Get more
components (at the bottom) and select the components.
• They are now available in the Insert – Library components category.
• If you update the component, makers of other apps are notified of the
update (there will be a banner at the top). They choose to update it.
• You can export a solution with customizations, to update the
component to another solution.
• Canvas app assets includes images, audio and video files.

Create and manage screens for canvas apps


43. Determine when to use screens, forms, containers, galleries, button, labels, input
controls, images, and custom controls
• Input
• Button
• Configure the OnSelect property of a button control to run one or
more formulas when the user clicks or taps the control. The button
control is frequently used to submit data to the data source.
• Text input

Page 32 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• A box for entering text, numbers, and other data. It can then be used
by the App.
• Pen input
• Draw, erase, and highlight areas of an image. Use like a whiteboard,
drawing diagrams + writing words that can be converted to typed
text.
• Drop down
• The control takes up only one line unless the user reveals more
choices - a maximum of 500 items.
• Combo box
• Search for items to select. Can select multiple items. The search is
performed on the server on the SearchField property so performance
is not affected by very large data sources.
• Date picker
• List box
• This control always shows all available choices (unlike a Dropdown
control) and in which the user can choose more than one item at a
time (unlike a Radio control).
• Check box
• A control that the user can select or clear to set its value to true or
false.
• Radio
• A Radio control, a standard HTML input control, is best used with only
a few, mutually-exclusive options.
• Toggle
• Works as per the check box control.
• Slider
• The user can indicate a value, between a minimum and a maximum
value that you specify, by dragging the handle of a slider left-right or
up-down, depending on the direction that you choose.
• Rating
• Indicate how much you like something by selecting a certain number
of stars.
• Timer
• A control that can determine how your app responds after a certain
amount of time passes. For example, determine how long a control
appears or navigate to another screen after a certain amount of time
has passed. Use OnTimerEnd.
• Edit form or Display form
• Like the Detail Screen and Edit Screen, this shows one record.
• Rich text editor
• A WYSIWYG editing area for formatting text. Allow numbered or
bullet lists.
• Address input
• Requires geospatial features for the environment be enabled.
Powered by TomTom. Processed in the US.
• Display

Page 33 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• Label
• A literal string of text, which appears exactly the way you type it, or as
a formula that evaluates to a string of text.
• HTML text
• An HTML text control not only shows plain text and numbers but also
converts HTML tags, such as non-breaking spaces.
• Layout
• Vertical, horizontal or flexible height gallery. They can also be blank.
• Data table
• A table of data, which is read-only.
• A single row is always selected.
• Column widths can be adjusted (but not saved).
• Can copy from a Data table, and use hyperlinks.
• Can add styles to data tables.
• Container, Horizontal container or Vertical container.
• This can contain other controls.
• Media
• Image
• 3D object
• Camera
• A control which allows the user to take photos by using the camera on
the device.
• Measuring camera
• Bar code scanner
• Opens a native scanner on an Android or iOS device (not web
browser). Detects a barcode, QR code, or data-matrix code when in
view.
• Video
• This control plays a video clip from a file or from YouTube or Azure
Media Services. Closed captions can optionally be shown when
specified.
• Enter the video URL in the Media property.
• Microsoft Stream
• Audio
• This control plays a sound clip from a file, a recording from a
Microphone control, or the audio track from a video file.
• Microphone
• Record sounds from their microphone. Audio stored in 3gp format in
Android, AAC format in iOS, and OGG format in web browsers.
• Add picture
• Take photos or upload image files from their device. On a mobile
device, the user is asked to choose between taking a photo or
selecting an existing picture.
• Import/Export data
• Map
• Requires geospatial features for the environment be enabled.
Powered by TomTom. Processed in the US. See

Page 34 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
[Link]
apps/geospatial-overview
• Icons
• Shapes
• Circle or parts of a circle, rectangle, triangle or right triangles, pentagon,
octagons, and 5, 6, 8 and 12 point stars.
• Charts – these are limited to:
• Column chart
• Line chart
• Pie chart and
• Power BI tile
• AI Builder
• Mixed Reality

43c. Containers
• Containers can contain other controls.
• You can also have containers within containers.
• Use it to organize your controls in the tree view, defining areas of the screen,
and so you can copy and paste a container elsewhere.
• There are three different types of containers:
• “Container” – this is the default type of container. These allow for a freeform
design, allowing for overlapping objects.
• “Horizontal Container” and “Vertical Container”. These organize objects next
to each other. They do not allow for overlapping objects.
• The horizontal and vertical show which way the contents will stack.
• “Horizontal” organizes from left to right.
• “Vertical” organizes from top to bottom.
• You can change this with the “Direction” property.
• Other properties include:
• Justification – this shows where objects will be organized
going from left to right. They can be:
• Start – objects will be organized at the left of the
container.
• End – objects will be organized at the right of the
container.
• Center – objects will be centered in the container.
• Space Between – objects will go from the left to the
right of the container, with space between.
• Alignment – this shows where objects will be organized going
from top to bottom. They can be:
• Start – objects will be organized at the top of the
container.
• End – objects will be organized at the bottom of the
container.
• Center – objects will be centered in the container (from
top to bottom).

Page 35 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• Stretch – objects will expand from the top to the
bottom of the container.
• Gap – the number of pixels between objects
• Horizontal and Vertical Overflow – what the container should
do if the contents are bigger than the container:
• Hide – don’t show any objects which are beyond the
container.
• Scroll – add a scrollbar.
• Wrap
• If objects are unable to fit into a single column/row,
they are pushed into an additional column/row
• For individual controls within a container, you can set Flexible Width/Height.
• If True, then you can say how many

44. Configure UI elements


• To change the theme, click on the screen and then click on Theme in the command
bar.
• There are no custom themes – but you can use the Fill property for the
screen.
• Some controls, like the top of the Date Picker control, are only controlled by
the theme.
• You can use the following Color and Border properties for controls:
• BorderColor and BorderStyle (solid, dashed, dotted or none) and
BorderThickness
• When a control has the focus, then it uses FocusedBorderColor +
FocusedBorderThickness.
• Color (forecolor) and Fill (background color)
• Colors can be set using
• [Link],
• ColorValue(“Red”) or ColorValue(“#FF7F00”),
• ColorFade([Link], 50%)
• RGBA(255, 0, 255, 25%) – the last is transparency where 0% =
fully transparent.
• References to other color properties, such as [Link]
• When Disabled property = Disabled, then it uses DisabledBorderColor,
DisabledColor, DisabledFill.
• When the mouse hovers, it uses HoverBorderColor, HoverColor and
HoverFill.
• When it is pressed, it uses PressedBorderColor, PressedColor and
PressedFill.
• A selected item in a drop down, list box or pen control uses
SelectionColor and SelectionFill.
• Core Properties include:
• Default
• The initial value of a control.
• DelayOutput
• True = delay action during text input.

Page 36 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• DisplayMode
• Values can be Edit, View, or Disabled.
• Configures whether the control allows user input (Edit), only
displays data (View) or is disabled (Disabled).
• In View mode, input controls such as Text input, Drop down
and Date Picker will only display the text value and will not
render any interactive elements or decorations. This makes
them suitable to be displayed in Forms or as readable output.
• BackgroundImage (Screen), Image and ImagePosition for Audio, Image,
Microphone and Video controls.
• ImagePosition can be Fill, Fit, Stretch, Tile or Center
• Items
• The source of data that appears in a control such as a gallery, a list, or
a chart.
• OnChange
• Action when the user changes the value of a control.
• OnSelect
• Action when the user taps or clicks a control.
• Reset
• Whether a control reverts to its default value. However, using the
Reset function is preferred, unless you are resetting many controls.
• Reset = [Link] or OnSelect = Reset(TextInput1)
• Text
• Text that appears on or in a control.
• Tooltip
• Explanatory text that appears when the user hovers.
• Value
• The value of an input control.
• Visible
• Whether a control appears or is hidden.
• Size and Position properties include:
• X, Y, Height, AutoHeight (for labels), Width,
• WidthFit (for cards – automatically grow horizontally),
• Padding
• for Picture, Export and Import controls,
• PaddingBottom, Left, Right and Top
• for other controls.
• RadiusBottomLeft, BottomRight, TopLeft, TopRight for Button, Export, Image,
Import and Text input controls
• This controls the rounding of a control.
• Text Appearance properties include:
• Font, FontWeight (Bold, Semibold, Normal or Lighter), Italic, Size,
Strikethrough and Underline.
• Text Placement properties include:
• Align
• The horizontal alignment of text.
• VerticalAlign.

Page 37 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• LineHeight - The distance between lines of text or items in a list
• for List Box, Label, Radio and Text Input controls.

45. Compose Power Fx formulas


• Text converts numbers (e.g. [Link]) into text
• Text([Link], "$ ##.00") or Text([Link]; "$ ##,00") in other
countries.
• “If” works well with numbers to do conditional formatting:
• If([Link] > 5, [Link], [Link])
• Standard formulas include:
• NewItem control: NewForm(EditForm1);Navigate(EditScreen1,
[Link])
• In other locales: NewForm(EditForm1);;Navigate(EditScreen1;
[Link])
• Can use ‘EditFrom1’ (single quotations). Needed if any names have
spaces, ‘, “ or @. ‘ would need to be doubled: ‘This is my ‘’first’’ name’
• IconSort control: UpdateContext({SortDescending1: !SortDescending1})
• ! means NOT – it updates SortDescending1 to its opposite (true/false).
• Setting the OnSelect property of a Button control to
Navigate(Screen2,[Link]) or Back() – note: Don’t use
Navigate(Previous) – that will go to a screen called “Previous”.

45. Compose Power Fx formulas – Table functions


• Counting functions:
• Count – contains number
• Needs single-column table.
• CountA – not blank. It does count “” empty text.
• Needs single-column table.
• CountIf – if something is true, count it.
• Needs a table.
• CountRows – number of records.
• Needs a table.
• From table to string and vice versa
• Concat(CustomerOrders, Email & ";") combines all the Email column values
separated by a semicolon.
• Split("Canada, Mexico, United States of America", ",") separates a string into
a single column table, with the column name being “Result”.
• Looping through a table
• ForAll goes through every row a table.
• Maybe use it with Filter
• It can be used with Patch and Collect functions.
• It cannot be used with Set, UpdateContext, Clear, and ClearCollect, as
that many actions would be confusing.
• If wanting to use Set or UpdateContext, maybe use Patch
instead.
• Patch( IceCream, Lookup( IceCream, Flavor = "Chocolate" ), {
Quantity: 400 } )

Page 38 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• ForAll(CustomerOrders, [Link](Email, "Thank you", "
You are a great customer " & FirstName)) would send an email per
row.
• You cannot modify the table which is the source of the ForAll
function.
• You can perform multiple actions using the ; (or ;; in some locales).
• Records could be accessed in any order.
• Patch can update an existing record, or create a new record
• Patch(LoggingEntity, Defaults(LoggingEntity), {WhoClicked: User().FullName,
WhenClicked: Now()}); Navigate(NextScreen, [Link])
• The word “Defaults” creates a new record if there isn’t a default
property.
• Patch(CustomerOrders, Lookup(CustomerOrders, ID = 1), {Region: "Asia",
Country: "China"})
• This updates a row. Any existing values will be overwritten.
• You can use variable names, properties of a control, or a formula to update a
field.
• Remove and RemoveIf deletes records.
• Remove( IceCream, First( Filter( IceCream, Flavor="Chocolate" ) ) )
• Remove(IceCream, Lookup(IceCream, Flavor="Chocolate“))
• RemoveIf( IceCream, Quantity > 150)
• RemoveIf( IceCream, Quantity > 150, Left( Flavor, 1 ) = "S" ) – this works as an
“And”.
• There is no user confirmation for this formula.
• These can be used in conjunction with the ForAll function.
• You can also use the User function.
• Set Image = User().Image, and text to User().FullName or .Email.

46. Implement variables


• Use variables when you cannot use a reference to other objects and their properties.
• For example, when you have a running total or the result of an “dialog box”
(don’t know if that exists).
• Or when it would slow down the computer by retrieving the same data –
User(), as a whole record or one of its properties, for example, or querying a
table.
• Global variables are assigned using the Set function:
• Set(MyVar, 1) – set can be seen as the equivalent of “Let” in other languages.
• Global variables can hold strings, numbers, records and tables.
• Only one variable can be set at once using Set – for more, use ; (or ;;
in some locales).
• Because it is a “Let”, it does not create a link. Any changes to the
original are not reflected in the variable.
• Variables do not need to be explicitly declared. Unassigned variables have
the value of blank.
• Do a calculator, with a running total, but also a list of the calculations used to
get there in a string.
• It has a scope of the app – once the apps closed, it is forgotten.

Page 39 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create and manage screens for canvas apps
• This is your default variable – only use Context variables if you are sure that’s
what you want.
• They can also be used for input and output parameters to components.
• Context variables are only for one screen, so it’s good for passing variables to a
screen – like parameters in a procedure.
• You assign context variables using the UpdateContext or Navigate functions.
• UpdateContext( { RunningTotal: RunningTotal + TextInput1 } , {IsSet:
true})
• Navigate( Screen1, None, { RunningTotal: -1000 } )
• More than 1 variable can be set at the same time.
• Note – it is UpdateContext, not Update (which updates a record).
• Because the scope is the screen, each screen can have the same variables –
increases reusability.
• Both global and context variables can be viewed in File – Variables.

46. Implement collections


• Collections are tables:
• You can use them as if they were tables, but not with the Form control.
• Collect adds an item to a collection:
• Collect( PaperTape, [Link] ) – this is now in a column called “Value”
• Collect( IceCream, { Flavor: "Pistachio", Quantity: 40 }, { Flavor: "Orange",
Quantity: 200 } )
• Collect(myCollection, name_of_table)
• But it is not delegable – only “500” (or 1-2,000) records will be
retrieved.
• It is a copy of a table – not a link. Changes to the collection will not be
reflected in the table.
• Clear clears a collection
• Clear( PaperTape )
• This leaves a blank collection, but the columns remain.
• ClearCollect does both
• ClearCollect( IceCream, { Flavor: "Chocolate", Quantity: 100 }, { Flavor:
"Vanilla", Quantity: 200 } )
• You can also save and load the collection data to storage (note – not to a table):
• SaveData( PaperTape, "StoredPaperTape" )
• Clear( PaperTape ); LoadData( PaperTape, "StoredPaperTape", true )

47. Run a Power Automate flow from a canvas app


• To create a Power Automate flow from inside a canvas app:
• Go to Power Automate (on the left-hand side).
• Click on “Add flow”, then "Create new flow" and give it the flow a name.
• Create your flow. If you need input from Power Apps, insert it as "Dynamic
content" – manual – "Ask in PowerApps".
• Save the flow (and Test it).
• To connect the flow in the canvas app.
• Go to Insert – Button and click on the Button.
• Go to Power Automate (on the left-hand side).

Page 40 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Click on the flow. This will add the following into the formula bar:
• [Link](
• If no input is needed, add a close bracket/parenthesis.
• If input is needed, add the needed parameters, and then “)”.
• You will then see, in the Power Automate Data pane, under "Flows associated
with 'NameOfButton', the flow.
• To edit/remove the flow:
• Go to Power Automate (on the left-hand side).
• Click on the … next to the flow, and select Edit.
• To remove the flow from the app:
• Go to Power Automate (on the left-hand side).
• Click on the … next to the flow, and select Remove from app.
• To retrieve information from Power Automate
• Add a "Respond to a PowerApp or flow" action in Power Automate.
• In PowerApps, Set a variable or Collect a collection based on the button.
• Use the results of the variable or collection.

Create Power Automate cloud flows


48. Build scheduled, automated, and instant flows
• Event driven flows are divided into:
• Automated flows (aka cloud flows) – triggered by an event: new email,
Twitter posts, request for leave (approval flows).
• Run when data is changed.
• SharePoint, Dynamics, Outlook
• Scheduled flows – repeat every X minutes/hours/days/weeks
• Run at a certain time, and reoccurs.
• Instant (button) flows – start with a tap of a button
• Run when a virtual button is pressed on the mobile app.
• Run when a physical button is clicked with 3rd party options.
• Run when a button is pressed inside of Power Apps.
• Allows you to run on demand.
• Button trigger tokens include:
• Location: Full address, Street, City, State, PostalCode,
Country/Region, Latitude, Longitude,
• Date/Time: Timestamp and Date, and
• User: User name and user email
• You can also “add text input” as well.
• There is a Power Automate mobile app.
• Connections are either:
• Embedded (used in the flow), or
• Other (defined, but not used in the flow).
• Flows are shown in the Team flows tab – Invite another owner.

Create cloud flows


• Automate workflows between your favorite applications and services, sync files, get
notifications, collect data, and much more.

Page 41 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• You can create a team flow if you are a paid Power Automate plan.
• You can also add Microsoft SharePoint lists as co-owners of a flow. Everyone
would get edit access.
• Not to be confused with Power Apps – Data – Dataflows.
• This is an ETL (extract, transform and load) process.
• Can be used in Power Apps and Power BI
• Not available with Power Apps Community Plan license.

49. Configure triggers


• The first step in a cloud flow is a trigger – which could be:
• Manually trigger a flow,
• For a selected item
• A user manually executes a flow from a list after an item is selected,
e.g. in SharePoint.
• Recurrence (schedule),
• When something happens:
• an item/file is created/modified/deleted,
• PowerApps/Power Virtual Agents calls,
• an event is added to a calendar,
• I am mentioned in a Teams Channel message,
• a Power BI button is clicked,
• You can use dynamic tokens for a manual (button) trigger, such as:
• City, State, Street, Postal code, Country/Region, Full Address
• Date and Timestamp,
• User name and User email.
• You can add inputs for manual (button) triggers:
• Text, Yes/No, File, Email, Number and Date.

49. Types of actions and triggers – Built in


• Manually trigger a flow
• Flow button for mobile
• Schedule
• Trigger
• Recurrence (Trigger) – lots of options
• Actions
• Delay (duration) and Delay Until (timestamp)
• Variable Actions
• Initialize/set variable,
• Increment/decrement variable,
• Append to array/string variable.
• Number functions
• Format number (using Excel formatting)
• Response trigger and action
• Power Virtual Agents
• PowerApps
• Request (HTTP – PREMIUM connection)
• Text functions

Page 42 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Find text position
• Substring – first character is position zero.
• Location (preview)
• When I enter or exit an area
• AI Builder
• Types of actions and triggers – Standard
• Excel Online
• Actions
• Delete/get/update a row
• Get worksheets/tables
• List rows present in a table
• Run script
• Add a key column to a table (to the right)
• Add a row into a table
• Create table/worksheets
• Google Sheets
• Actions
• Get/insert/delete/update row
• Get rows
• Get sheets
• Microsoft Teams
• Triggers
• When a new channel message [not replies]/team member is
added/removed
• When I am mentioned in a channel message
• For a selected message [button]
• Sample actions
• Add a member to a team
• Create a Teams meeting/team
• Get messages, post message/reply [in a chat/channel]
• Post a choice of options as the Flow bot to a user
• Post adaptive card in a chat/channel to a user
• Reply with message/adaptive card

49. Types of actions and triggers – Standard


• MSN Weather
• Triggers
• When the current weather (temperature, UV Index, Humidity, Wind
Speed) changes (e.g. wind “is equal to”, “goes over” or “goes below).
• When the current conditions changes (General)
• Actions
• Get forecast for today/tomorrow
• Get current weather
• Mail
• send an email notification (action)
• Not for spam! Maximum 5 mails per minutes, and 100 mails per 24
hours limit. Want more? Use Office 365 Outlook “Send an email”.

Page 43 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Office 365 Outlook
• Triggers
• When a new email arrives [in a shared mailbox/mentions me]
• When an email is flagged
• When an event is created/added-updated-deleted/modified
• When an upcoming event is starting soon
• Actions
• Create/delete/update contact/event
• Send/delete/export/flag/forward/move/reply email
• Find meeting times
• Get attachment
• Get calendar view of events
• Get calendars/contact/contact
folders/contacts/email/emails/event/events/mail tips for a
mailbox/room lists/rooms/rooms in room list
• Mark as read or unread
• Respond to an event invite
• Send an email from a shared mailbox
• Send email with options
• Set up automatic replies
• Update my contact’s photo
• OneDrive for Business
• Triggers
• When a file is created/modified
• For a selected file
• Actions
• Create/delete file
• List files in folder
• Convert/copy/move or rename file [using path]
• Create share link [by path]
• Extract archive to folder
• Find files in folder [by path]
• Get file content/metadata [using path]
• Get file thumbnail
• List files in root folder
• Update file [from URL]
• SharePoint
• Triggers
• When an item is created [or modified] [properties only]/is modified
• When a file is created [or modified] in a folder
• For a selected file/item
• When a file is classified by a content understanding model
• When a file/item is deleted
• When a site has requested to join a hub site
• Actions (some)
• Hub sites
• Approve/cancel hub site join request

Page 44 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Join hub site
• Set hub site join status to pending
• Add/delete attachment/get attachments
• Check in/out file
• Copy/move file/folder
• Create/delete/get/update file/item
• Create new folder
• Create sharing link for a file or folder
• Stop sharing an item or a file
• Discard check out
• Get changes for an item/file (properties only)
• Get/update file properties
• Get files (properties only)/items
• Grant access to an item or a folder
• List folder
• Extract folder

49. Types of actions and triggers – Premium


• Microsoft Dataverse
• Triggers
• When a flow step is run from a business process flow
• When a row is added, modified or deleted
• When an action is performed (preview)
• Actions
• Add/delete/update row
• Download/upload a file/image
• Get a row by ID
• List/relate/search/unrelate rows
• Relate/unrelate uses 1:N or N:N relationships.
• Perform a bound/unbound action
• this means associated/not associated with a table
• Predict using AI Builder models
• Form Processing, Object Detection, Text Classification or use
the prebuilt Business Card Reader, Key phrase extraction,
Language detection, Text recognition – OCR and Sentiment
Analysis
• Perform a changeset request (a group of connector operations as a
single transaction)
• SQL Server
• Triggers
• When an item is created/modified.
• Actions
• Delete/get/insert/update row
• Execute a SQL query
• Execute stored procedure
• Get rows
• Transform data using Power Query

Page 45 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Get tables

Expressions
• Based on Azure Logic Apps.
• “?” in formula syntax indicates an optional input.
• String functions
• concat('HI','YOU')
• substring(‘hi there everyone’, 6, 5) – zero-based
• length('<text>’)
• replace('<text>', '<oldText>', '<newText>')
• toLower, toUpper('<text>')
• indexOf, lastIndexOf('<text>', '<searchText>’)
• Not case sensitive. Zero-based. If not found, returns -1.
• startsWith, endWith('<text>', '<searchText>’)
• true/false
• split('<text>', '<delimiter>’) – returns array
• trim('<text>’) – leading and trailing whitespace
• formatNumber(<number>, <format>, <locale>?)
• Uses Excel Standard numeric format strings.
• formatNumber(1234567890, '0,0.00', 'en-us’)
• C, D, E, F, G, N, P, R, X – see [Link]
us/dotnet/standard/base-types/standard-numeric-format-strings
• Collections are for arrays
• Conversion include
• array, binary, bool, float, int, string
• Logical
• if(<expression>, <valueIfTrue>, <valueIfFalse>)
• equals('<object1>', '<object2>')
• and(<expression1>, <expression2>, ...), or, not(<expression>)
• less, lessOrEquals, greater, greaterOrEquals(<value>, <compareTo>)
• Workflow gets inputs and outputs from flows
• Math
• min, max(<number1>, <number2>, ...)
• rand(<minValue>, <maxValue>)
• add, sub, mul, div, mod(<d_1>, <d_2>)
• Only two arguments. Can be nested.
• Integer division results in integer.
• range(<startIndex>, <count>)
• range(1, 3) results in an array [1, 2, 3].
• Date and time
• utcNow('<format>’?)
• utcNow() - "2028-05-16T[Link].0000000Z"
• utcNow('D’) - “Tuesday, May 16, 2028"
• getFutureTime, getPastTime(<interval>, <timeUnit>, <format>?)
• getFutureTime(5, 'Day', 'D')
• addToTime, subtractFromTime('<timestamp>', <interval>, '<timeUnit>',
'<format>'?)

Page 46 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• addToTime(‘2028-05-14T[Link]Z', 1, 'Day', 'D')
• addSeconds, addMinutes, addHours, addDays('<timestamp>', <seconds>,
'<format>’?)
• addSeconds(‘2028-05-14T[Link]Z', -5)
• convertTimeZone, ToUtc, FromUtc, DateTime('<timestamp>',
'<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
• convertTimeZone(‘2028-05-14T[Link]Z', 'UTC', 'Pacific Standard
Time', 'D')
• startOfHour, Day, Month('<timestamp>', '<format>’?)
• startOfHour(‘2028-05-14T[Link]Z')
• dayOfWeek, Month, Year('<timestamp>’)
• dayOfWeek returns 0 (Sunday) to 6 (Saturday).
• dayOfWeek('2028-05-14T[Link]Z')
• Variables
• variables('<variableName>’)
• variables('numItems')

50. Configure flow steps


• The first step in a cloud flow is a trigger.
• You can then insert actions, or parallel paths.
• Parallel paths are very useful with error handling.
• You can click on the … on an action and click “Configure run after” the
previous action:
• is successful,
• has failed,
• is skipped, and/or
• has timed out.
• You can select multiple “run after” conditions for the same action.

51. Interpret Flow Checker results


• Flow checker is always active in the command bar.
• It displays a red dot when it finds errors, potential errors or warnings.

• Details are included in My flows - … next to flow – Details.


• You can click on the Flow Checker button to view the errors and warnings.
• It can point to specific areas where you may wish to make improvements,
together with guidance.
• Flows can fail due to:
• Authentication failure
• Action configuration issues

51. Test a flow


• You can Test the flow by clicking “Test”.
• It will show the flow while running.
• You can:

Page 47 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Create Power Automate cloud flows
• Perform the trigger action manually,
• Use data from previous runs,
• Use new data using connectors, such as Office 365 Outlook, SQL
Server, Gmail and [Link].

52. Implement common expressions and loops


• Loop (not an actual action)
• Runs an action until the end of the loop, then moves on to the next step in
the flow.
• Switch
• What to run next, based on conditions from input.
• Do Until
• Runs an action until a condition is TRUE.
• Apply to each.
• Runs a set of actions for each item in an array.

54. Share flows


• To share a flow and make them owners, click on the … next to the flow, and select
Share.
• You need to have a paid-for license to share.
• You can then select the users that you want to share with.
• Users must be in your organization’s directory.
• They become owners, and can:
• View the run history,
• Manage properties, such as start the flow, stop the flow, add
owners, or update connection credentials.
• Edit the flow definition.
• Add or remove owners (but not the creator), and
• Delete the flow.
• You can also add SharePoint lists as the co-owner of a flow.
• Co-owners have edit access.
• You can also remove users in the same way.
• You can also share any connections.
• Connections can only be used in the shared app.
• Credentials in shared connections cannot be viewed.
• To share a flow with users “run only”:
• Click on the … next to the flow and click “Details”.
• “Run only” users (right-hand side) can use their own connection credentials,
or use yours.
• You can then “Edit” “Run only users”.
• You can “Delete” users’ access in the same way.
• Users must be in your organization’s directory.
• You can also send a copy of the flow:
• Click on the … next to the flow and click “Details”.
• You can click “Send a copy” at the top.
• Copies cannot be recalled once sent.

Page 48 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• They will receive an email with a “Create my flow” button. It will also be in
Templates – Shared with me.
• You can also share in the same way using the mobile app.
• They will need to go to the Buttons tab, and click “Get more” or “New
buttons are available” banner to add them to the Buttons tab.
• You can also remove users’ access in the same way.

Other topics
Describe the different types of environments
• Environments allow you to store, manage, and share within the Power Platform:
• Data, Apps, and Flows.
• Each environment allows one Common Data Service (CDS) database.
• An environment is created:
• By going to Power Apps – Gear – Power Platform Admin Center –
Environments – New.
• Enter a new and select Type (see next page).
• Select the Region
• Create a Dataverse database, if wanted.
• In an Azure Active Directory (Azure AD) tenant.
• To access an environment, you need to have:
• System administrator role or Environment Admin role, which allows for:
• Add/remove users/groups from Environment Admin or Maker roles.
• Provision a Dataverse database.
• View/manage all resources in the environment.
• Set data loss prevention policies.
• Environment Maker role, which can be used for:
• Creating resources within an environment (such as apps, connections,
gateways, and Power Automate Flows).
• Distribute their apps to other users in an organization.
• This role does not have automatic access to a Dataverse database.
• Multiple environments can be used for:
• Different geographic locations.
• Development/testing/production.
• Departments.
• Data access (to the Dataverse, for example).
• There are five types of environments:
• Default
• Environment created automatically.
• Cannot be deleted, backed-up, or restored.
• No users will be automatically added to Environment Admin role.
• All licensed users will be automatically added to the Environment Maker role.
• Admins cannot restrict access to the default environment.
• Limited to 32 Gb of storage capacity.
• You may wish to rename it “General”.
• Production
• For permanent work. Need 1GB available database capacity.

Page 49 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Sandbox.
• Development and testing.
• Allows for “copy” and “reset”.
• Trial.
• Short-term (expire after 30 days), for 1 user.
• Developer
• Community Plan license – cannot be shared.
• Microsoft Dataverse for Teams.
• Automatically created in Teams.

Describe other environment creation options


• Go to the Power Platform admin center
• [Link]
• Click on Environments – New Environment
• You will then be given Environment Admin rights for this environment.
• Other Azure Active Directory users will be given:
• Basic/Dataverse User, and
• Environment Maker.

Run Solution Checker and interpret results


• Solution checker looks at Dataverse:
• plugins and custom workflow activities
• selecting all columns via Dataverse query APIs.
• duplicate Dataverse plug-in registrations.
• using batch request types in Dataverse plug-ins and workflow
activities.
• HTML and Javascript web resources
• Don’t target absolute Dataverse endpoint URLs,
• Don’t use modal dialogs,
• Don’t use ‘eval’ or ‘alert’ functions.
• configurations, such as SDK message steps, and
• Canvas app formula issues, delayed load and whether there are too many
app controls.
• It does not check the Default solution.
• To run the solution checker, go to Power Apps portal – Solutions – NameOfSolution -
… - Solution checker – Run.
• The top-right of the screen says “Solution checker running”. It will take a few
minutes.
• You can cancel it while it runs, if you want.
• You will receive an email and a notification when it is complete.
• You can also view the results by going to Solution checker – View results.
• Click an issue to view the details and how to resolve.
• Columns include Issue [title], Category, Severity [high,
medium, low and informational], Guidance, Component and
Location.
• You can download the results, by going to Solution checker – Download
results.

Page 50 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• It downloads as a zip file.

Configure apps for offline access


• For apps to have offline access, they need to have:
• [Link] to check whether the connection is there,
• When online:
• ClearCollect to download to a collection latest items.
• SaveData to save to a collection the last cache they have.
• SaveData can also be used to save any new items.
• When offline:
• LoadData to load a collection when offline.
• Note: LoadData and SaveData might show an error in Power Apps Studio
because browsers don't support them. However, they'll perform normally
after you deploy this app to a device.
• You can use the collection in either case to create a data source for the
gallery for the app.
• Use a timer to check for new items which should be updates.

Embed canvas apps into Microsoft Teams


• Embed as a tab app
• In Microsoft Teams, go to a channel in a team (e.g. the “General” channel).
• Click + to add an app.
• Choose Power Apps.
• Choose an existing app that has been shared (or a sample app).
• To open it in Teams, just click on the tab.
• Embed as a personal app
• Go to Power Apps – App.
• Click on the … next to the App, and select “Add to Teams”.
• If wanted, add any description (click “Edit details”) or other details (click
“Advanced settings”).
• Click “Download app”.
• In Microsoft Teams - Apps, click “Upload a custom app”.
• Click “Add” for a personal app or “Add to team” as a tab.
• Limitations:
• Apps must load image and pdf files only over a secure (https) connection.
• Not all sensors, such as Acceleration, Compass, and Location, are supported.
• Only the AAC, H264, OGG Vorbis, and WAV audio formats are supported (not
MP3).
• The following cannot be used in Teams:
• Address Input,
• Map,
• Mixed reality, and
• Power BI Tile Controls.
• The following cannot be used in Teams Mobile:
• Barcode control,
• Camera control (use “Add picture” instead), and

Page 51 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Microphone control will work in Teams Mobile, using .mp4 / aac format, with
its own recording experience, and limited to a maximum of 10 minutes.

Create Dataverse classic workflows


• Go to Power Apps – Settings (wheel) – Advanced settings – Settings – Processes
• Click “New” to create a new classic workflow.
• Once the workflow is create, Entity/Table and Category cannot be changed.
• There are two types of classic workflows:
• Background workflows
• Recommended – allows system to apply workflow when resources are
available.
• Not immediate, but will generally start in a few seconds or
minutes. You may need to refresh the form once it has been
done to see the results.
• Real-time workflows
• Use when you want to immediately see the results, or want to delete
an operation.
• Only Dataverse Classic Workflows can work in real time
(synchronously – immediately). Power Automate Automated flows
work asynchronously.
• The form will wait until the workflow is complete.
• Can convert between them by click “Convert to a background/real-time
workflow” on toolbar.
• Workflows with wait conditions become invalid.
• Real-time workflows starts:
• after a Row is created,
• Before or after a Row status changes,
• Before or after a Row is assigned,
• Before or after Row fields change
• Before a Row is deleted.
• Classic workflows can also call it:
• “as an on-demand process” (use “Run Flow” button in the menu), or
• “as a child process”.
• You create steps. Steps are:
• grouped into stages (which doesn’t affect the workflow – it just makes it
easier to read)
• Create row,
• Update or assign row, send email or change status (based on current row,
N:1 related rows, or ones in earlier steps),
• When updating, you can set, append, increment, decrement, multiply,
or clear values.
• Start child workflow
• Stop workflow (set status message and status of Succeeded/Canceled),
• Custom step (for developers only).
• Conditions include:
• Check condition – If … does or doesn’t equals, does/does not contain data,
under/not under (to do with hierarchies).

Page 52 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Conditional branch – else, if then statement.
• Default action – else.
• Wait – pause until certain conditions are met (background workflows only).
• Parallel wait branches – alternative wait condition.
• Custom step (for developers only).
• Scope is either User or Organization:
• “User” means that the workflow will only run for that user. (This is the
default)
• “Organization” workflow logic applies for the entire table for all users.
• After creating it, it will have a status of Draft – you need to Activate it.

Power Automate Classic Workflow

Modeling Conditional branching


Looping, parallel branch, connectors to Wait conditions on columns
external systems
Composition Dynamic content, Run child workflows, run Dataverse action
Group steps to run in a transaction Access to pre-image of event
Approval workflows data, Run custom background
workflow activities
Execution Trigger on column changes, trigger on multiple Dataverse table events, run
on-demand, run-as scopes
Run on a schedule Run synchronously (real-time)
History Auditing, run analytics Auditing
Authoring and Solution support Solution support
portability Modern designer, AI-assisted authoring

Create business process flows


• Streamlined user experience which guides the user through a process.
• Used with Model-driven Apps and the Dataverse (cannot use other data sources).
• Can use up to 5 different tables in a single process.
• Each table can have up to 10 business process flows.
• Define up to 30 stages, each with up to 30 steps, to get to a desired outcome.
• To create a Business Process flow:
• go to Power Automate – My flows – New – Business Process Flow
• go to Power Apps – Flows – New – Business Process Flow
• go to Settings – Advanced Settings – Processes – Actions –New.
• Click “Validate” at the beginning – this will add a message which will keep updating.
• The mini-map at the bottom left will help you navigate.
• Click “Snapshot” to download a png of the business process flow.
• After validation, you can then click Save (which turns into update) or Save As.
• It is still a draft at this stage, and cannot be used.
• You can then click Activate.

Page 53 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• System business process flows included are:
• Lead to Opportunity Sales Process
• Opportunity Sales Process
• Phone to Case Process
• There are the following components:
• Stage
• Condition (If – true/false)
• Can use AND or OR, but not both.
• To branching back , use the Connector icon. All branches must branch
back at the same time.
• Steps
• Can be marked “required”.
• They need to be filled in the current stage; cannot save the
form or move to the next stage without it – “stage-gating”
• Data Step (add data)
• If you have business-required or system-required columns,
add these!
• Workflow
• Workflows can be triggered when going from one Stage to
another on the Stage Exit.
• You can drag workflows to the Global Workflow item in the
designer (bottom of the screen) for:
• Process applied
• Process reactivated
• Process abandoned (including moving to another
business process flow) and
• Process completed
• If you want trigger a workflow at the beginning of the first
stage, or the end of the last stage, then Stage Exit triggers will
not work – you need to use a Global workflow.
• Action Step
• Flow Step
• Make sure you click “Apply” at every stage or step, or your changes will not be kept.
• Run Business Process Flows in:
• Power Apps: into a Model-driven App
• Created from the App Designer – click on Business Processes – New.
Embed into App.
• Power Automate
• an immersive business process flow.
• Standalone – creates and uses its own table.
• The WYSIWYG designer is not available for immersive business
forms at this time.
• Work steps shown at the top of the App/flow.

Create adaptive cards for Microsoft Teams


• First of all, Microsoft Teams will need the Flow App installed:
• In Teams, go to Store, then click on the Flow app and install it.

Page 54 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Create a new flow, and add a new Step: “Post an adaptive card to a Teams channel
and wait for a response”.
• Select the Team and Channel.
• Paste in your JSON.
• Use the “Card Payload Editor” [Link] to design it.
• Do an action afterwards (e.g. send an email) with the results.
• Flows can also be created within Microsoft Teams.

Design for accessibility


• TabIndex allows for keyboard navigation.
• It should mirror visual order – down or across.
• Containers can group related content together.
• Form Card and Gallery controls are automatically grouped.
• Only have a tab stop at interactive controls.
• Recommend values are:
• TabIndex = 0 for interactive controls.
• TabIndex = -1 cannot be accessed by keyboard navigation.
• TabIndex > 0 can manually control the navigation order, but it is not
recommend – it can break screen readers. Tip: “Check the order of the screen
items”.
• Visible=False or DisplayMode=Disabled means that the control is not included
in keyboard navigation; use Size = 0 or Size =1 or change to Color to
transparent if you don’t want it visible, but still want it available for
accessibility.
• Labels:
• Live determines how screen headers interpret changes to label content.
• Off – no changes announced.
• Polite – waits until screen reader finishes.
• Assertive – interrupts to say the changes.
• Role
• Is the Label a Heading? Heading1 to Heading 4, or Default for normal
text.

Page 55 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
Validate accessibility
• You can use the App checker (a stethoscope in Power Apps Studio) or the Solution
Checker to check for accessibility issues.
• AccessibleLabel is a label for screen readers.
• Use in Image, Icon, and Shape controls.
• Error in App Checker: “Missing accessible label”
• Adequate color contrast
• between text and Fill or BackgroundImage.
• Screens
• Screen readers will usually say the “Screen name” when loaded, as it is
usually focused. (Use SetFocus immediately if you don’t want it spoken).
• If screen has a default name, Tip: “Revise screen name”.
• Add picture buttons:
• Must have Text and ChangePictureText for screen readers.
• Focus indicators using FocusedBorderColor and FocusedBorderThickness
• If FocusedBorderThickness = zero, error: “Focus isn’t showing”.
• Audio/Video controls:
• If ClosedCaptionsURL is empty, Warning: “Missing captions”.
• If default controls are turned off, Warning : “Missing helpful control settings”.
• If Autostart is set to true, Warning: “Turn off autostart”.
• Pen controls:
• If they exist, Tip: “Add another input method”
• Toggle or similar:
• If the value labels (FalseText and TrueText) are turned off, Tip : “Add State
indication text”.
• Generally:
• If labels/markers for charts are not shown, Warning: “Missing helpful control
settings”.
• If control contains HTML, and control is not an HTML text control, then
Warning: “HTML won’t be accessible”.

Design for localization


• Language settings
• Defaulted to the language provided by the browser.
• Authoring environment
• Language setting of the author
• Formulas are in English.
• Formula separators (, ;) and decimal separator (. ,) may vary, however.
• Property separators (“[Link]”) will always have a dot.
• Apps can be customized as follows:
• Language – this is for Table1, where TextID = “Hello”, LanguageTag = “it” and
LocalizedText = “Ciao” (these are all columns in Table1). There is also a
default (English?) where LanguageTag is blank.
• LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(),
2 ) || IsBlank( LanguageTag ))).LocalizedText
• Numbers – Text will format to the user’s language setting:

Page 56 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Text(Now(),[Link]) will format to the user’s
language settings.
• Text(Now(), “[$-en-US]dddd, mmmm dd, yyyy”) will always format to
US.
• The third argument in Text is what language to use – it defaults to the
current user’s settings.
• Value, DateValue, TimeValue and DateTimeValue will convert by
default to the user’s language – the second argument can override
this:
• Value(“234,123.45”,”en-US”)
• Calendar and Clock functions are in the user’s language. Can use in
the Items property of a Downdown control, for example.
• [Link](), .MonthsShort(), .WeekdaysLong(),
.WeekdaysShort()
• .[Link](), .AmPmShort(), IsClock24()
• [Link]
apps/functions/function-clock-calendar

Identify data that must be protected or requires special handling


• Context Explorer shows a snapshot of your items that have:
• a sensitivity label,
• a retention label
• how long something needs to be kept in your organization, or
• been classified as a sensitive information type in your organization
• Content Explorer require an E5 license (around $70 per user per month)
• Use in Microsoft 365 compliance center > Data classification > Content explorer.
• Export
• Search using:
• A Microsoft Exchange mailbox email address,
• A SharePoint/OneDrive site name, folders and files.
• Click on a file allows you to read the contents and metadata.

Identify tools that help ensure compliance with applicable government regulations
• The Trust Center contains web pages about:
• Security,
• Privacy, including GDPR and data management,
• Compliance, including by country and region,
• Products and Services
• including Power Apps, Power BI and Power Automate
• Security
• Privacy
• GDPR
• Data Location
• Compliance
• Industry, and
• Tools & Documentation, including compliance scores and audit reports,
which you can use a blueprints.

Page 57 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• It includes:
• In-depth information,
• Resources, and
• Links.
• More details: [Link]

Load or create data records for testing and development


• Go to Power Apps – Tables – NameOfTable – Data (at top). You have the options:
• Edit data in Excel
• You can now add, update or delete data using the New and Publish
buttons.
• Export
• This exports into a zipped csv file.
• Data
• Get data – Get data
• Get data – Get data from Excel
• Excel spreadsheet or CSV file.
• You can also select views at the top-right hand corner (with an “eye”).
• You can add a new View by going to Power Apps – Tables – NameOfTable –
Views.
• Select Name and Description, and click Create.
• Insert and move Table Columns,
• Set Sort by and
• Edit filters.

Create Power BI report by using Power BI Desktop


• When creating a new report, can connect to lots of different data sources, including
Access, Azure, Dataverse, Dynamics 365, Excel, Files, Folders, HDFS, Python, R, and
SQL Server.
• Can use the above data sources when refreshing reports.
• Can create reports, including creating visualizations, and creating drill through
reports.
• Can Get and Transform data
• Develop models, including calculated columns and measures.
• Cannot create dashboards.
• Cannot be accessed using Power BI Mobile Apps.
• Cannot share (unless you give them the file).
• Can change some security settings.

Page 58 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
Compare and contrast Power BI Desktop and Power BI Service
Power BI Desktop Power BI Service

When creating a new report, can connect to When creating a new report, can connect
lots of different data sources, including to data in an Excel spreadsheet, csv files,
Access, Azure, Dataverse, Dynamics 365, Power BI Desktop Files, OneDrive,
Excel, Files, Folders, HDFS, Python, R, and SQL SharePoint, and previously shared or used
Server. datasets.
Can use the above data sources when Can refresh using most data sources, but
refreshing reports. not Hadoop File (HDFS). Some types (such
as on-premises databases) may require
gateways.
Can create reports, including creating Can create reports, including creating
visualizations, and creating drill through visualizations, and creating cross-report
reports. drill through reports.
Can Get and Transform data, and develop No.
models, including calculated columns and
measures.
No. Can create dashboards. A Pro license or
Premium capacity is needed for
workspaces or apps (for sharing).
No. Can access using Power BI Mobile App

Cannot share (unless you give them the file). Can create workspaces, and can share
workspaces and apps.
Can change some security settings. Can change some security settings.

Configure field security


• To enable individual field security, Go to the Solution Explorer (aka Classic
Administration Center)
• Method 1 – Power Apps Portal
• Go to Power Apps Portal – Tables – Name OfTable, or
• Go to Power Apps Portal – Solutions – NameOfSolution –
NameOfTable
• In Columns, click on field to open field pane – Advanced Options –
Enable column security.
• Method 2 – Solution Explorer
• Go to Settings – Advanced Settings – Settings – Customizations –
Customize the System
• Entities/Table – NameOfTable – Fields

Page 59 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Select field – Edit – Field Security: Enable – Save and Close.
• Publish (it does not take effect until published).
• Note: System Admin has access to all data.
• To create a field security profile:
• Go to Settings – Advanced Settings – Settings – Security – Field Security
Profiles.
• New – EnterName – Save (not “Save and Close” yet).
• Go to Users or Teams (left-hand side) – Add – check the users – click Select
and Add.
• Go to Field Permissions (left-hand side) –select FieldName – Edit – Allow
Read/Update/Create: Yes – OK.
• A “key” symbol is shown next to the field on Forms to show that it has been secured.
• Field-level security cannot be used for system or record tracking attributes, such as:
• ownerid, processid, stageid, accountid, contactid
• createdby, modifiedby, OwningTeam, OwningUser
• createdon, EntityImage_Timestamp, modifiedon, OnHoldTime,
overriddencreatedon
• statecode, statuscode

Describe the testing process


• Unit tests
• Done by the maker. Can be black-box or white-box.
• Is a particular function or functionality working correctly?
• End-to-end tests – also known as integration testing.
• Done by the maker. Can be black-box or white-box.
• Does the overall system work correctly?
• Quality assurance (QA) testing
• Done by someone other than the maker – could be in-house or by users.
• Could be unit test, or end-to-end test
• Use a variety of users with a variety of scenarios.
• What are the expected inputs and outputs?
• Ask your users to put in unexpected values.
• User acceptance testing (UAT)
• Done by the user or the team. Always black-box. Final stage, before or after it
goes live.
• Is this the system that the user expects?
• Don’t give additional coaching – it is intuitive?
• If they were stuck, what were they expecting to happen?
• Black-box testing treats the software as a sealed box
• You have no knowledge of how the software does its work.
• You examine functionality by knowing what it is supposed to do.
• It requires the tester to have a “test case”, which has input(s) and what the
output should be like.
• No programming knowledge is required.
• Due to the lack of knowledge as to how the software works, the tester may
be testing the same process multiple times, or may not test part of it at all.
• White-box testing looks at the internal workings of the program:

Page 60 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• You can test individual units, how the units are integrated, or the overall
system.
• Unit or integration testing may not detect missing requirements.
• Because you have knowledge of the internal workings, you can ensure you go
down every code path or branch.
• However, if you only test a branch once with one input, you may not
notice it works differently with a different input.

Manage data security


• To access data, you need to be authenticated using Azure Active Directory.
• Data Loss Prevention (DLP) policies help prevent company data from being
accidentally made public.
• Prevent the accidental sharing of sensitive information.
• To set this up, go to Power Apps – Gear – Power Platform admin center – Data
policies.
• You need to be an environment admin (for DLP for a single environment) or
tenant admin (environment or tenant).
• Tenant admins can choose which environments to add the DLP policies into.
• You can also explore DLP policies using the DLP Editor within the Power
Platform Center of Excellence (CoE) Starter Kit.
• See if a change to DLP with break existing apps.
• Flows which violate DLP cannot be turned on/enabled, but can be
saved.
• It includes a Power BI platform, giving access to OverView (number of apps
and flows), Environments, Apps, and Flows.
• Identify sensitive information from different connectors, and add them into three
groups:
• Business data,
• Can only connect to other Business connectors.
• Non-Business, and
• Blocked
• Cannot be used as a connector.
• The Dataverse, Power Platform Notifications and Approvals cannot be
blocked.
• Additionally, Microsoft Enterprise Plan standard connectors, such as
Excel Online, Outlook and SharePoint cannot be Blocked.
• Multiple DLP policies make the result more complicated.
• New connectors will be placed in the default data group.
• The default starts as the Non-business data group.
• You can specify which is the default data group by going to “Set default
group” in the top-right hand corner. Make sure this is what you want!
• For security reasons, HTTP triggers and actions can also be added to DLP
policies, even though they are not connectors – but this is very advanced
(needs PowerShell or cmdlets).

Page 61 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
Support deployment of solutions to testing and production environments
• Upgrading a solution can modify objects on the target, even things you don’t want
updating.
• If the “solution package contains an update for a solution that is already installed”
(which you will see in a yellow bar), you can upgrade (default) or click on Advanced
Settings:
• Upgrade- upgrades your solution to the latest version, rolls up all previous
patches in one step, and deletes anything not necessary. Recommend, as the
result will be consistent with the import, including removal of components
• Stage for upgrade - upgrades your solution to the latest version, but does not
delete old solutions – you can then have the old and new solutions installed
at the same time. You can later apply the upgrade and delete the old
solutions and unneeded components.
• Update – replaces the solution, but does not delete old components. Not
recommended, as destination will now be different from source.
• You can also choose to maintain or overwrite any unmanaged customizations.
• If you need to update something (a minor change), you can create a Patch.
• It goes from an unmanaged solution to the managed solution.
• You can include only the changes to tables and related table assets – other
items are not necessary to be included.
• Patches cannot delete components or assets, or add or update them.
• Create a patch by going to Solution Explorer – Clone a Patch.
• The version number for the patch must have the same major number and
minor number as the solution, but a higher build number/revision number.
• You can have multiple patches for a single solution.
• You can also clone a solution:
• This rolls up all related patches and creates a new solution.
• You can then add, delete or edit components or assets in your cloned
solution.
• You then need to have a new major or minor version number.
• Creating Patches or cloning solutions is not recommended, as it limits team
development and increases complexity.
• You should preferably upgrade instead.

What is Power Automate Desktop?


• It is included in Windows 11.
• For Windows 10, you need to download and install it.
• [Link]
• It installs two apps:
• Power Automate for desktop – for you to build, edit and run
your desktop flows.
• Power Automate machine runtime app – connect to the Power
Automate cloud, with Robotic Process Automation (RPA).
• You can then install Power Automate extensions in Google
Chrome or Microsoft Edge. (There is also a Mozilla Firebox
extension on the web as well.)

Page 62 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• If you are using a free work or school account, a Microsoft Dataverse
database will be provisioned after logging into your account.
• If it's a premium connect, "Create database" will create a Microsoft
Dataverse database.
• You can also use it in Windows Server 2016 or later.

Power Automate Desktop – Types of desktop flows


• Desktop flows are also called Robotic Process Automation (RPA).
• Attended desktop flows are executed by a user in front of their computer.
• The user launches it.
• It is included in the Power Automate "Per user plan with attended RPA"
license at $40/user/month. This also includes 5,000 AI Builder service credits
per month.
• Attended data flows need to have an active Windows session for the relevant
user. It cannot be locked.
• Unattended desktop flows are run by Power Automate automation for a user.
• It is for applications that do not need supervision. They are launched
automatically from Power Automate.
• Approval flows can also be unattended desktop flows, as it can be launched
by automation, even though the approver needs to manually approve it.
• It is a Power Automate "unattended RPA add-on" at $150/bot/month. It
needs the per-flow plan or the per-user plan with attended RPA.
• It also includes 5,000 AI Builder service credits per month.
• For Unattended desktop flows, no one sees the flow.
• It logs into the relevant user (as an ordinary user, not with elevated
privileges), runs the flow, then releases the user session.
• For Windows Server 2016 or later, the relevant user (the one that the
desktop flows is to run as) must be closed – it cannot be open or
locked.
• Multiple concurrent desktop flows are allowed with Windows
Server, but the concurrent flows must have different users –
using the same user is not allowed.
• On a Windows 10 or 11 desktop, all active users must be signed out
for the Unattended desktop flow to work. You cannot have any user
sessions present, even if they are locked.
• To start to create an Unattended desktop flow:
• Go to Power Automate (on the web),
• Go to My flows – New flow – Instant cloud flow
• Name the flow
• Add a new step "Run a flow built with Power Automate for desktop".

Power Automate Desktop – Desktop flows – User Interface automations


• To create a new flow:
• click on "New flow",
• add the "Flow name" and click Create.
• You can also:
• Go to Power Automate ([Link] ).

Page 63 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Go to Create – Desktop flow.
• Add the "Flow name" and click Create.
• You can record steps using the recorder, but you can also add steps using the visual
designer.
• To copy a folder:
• Folder – get special folder.
• This creates a variable "SpecialFolderPath". You can double-click on
variables and rename them.
• Message boxes – Display select folder dialog.
• This creates the variables "SelectedFolder" and "ButtonPressed".
• Folder - Create folder
• In "%SpecialFolderPath%" folder, create a new folder name "backup".
This creates a variable "NewFolder".
• Folder – Copy folder
• Copy "%SelectedFolder" folder into Destination folder
"%SpecialFolderPath%\backup". This creates a variable
"CopiedFolder".
• You can then run the flow.
• You can also go through catalog folders:
• Get files in folder – in SelectedFolder.
• This creates the variable %Files%.
• Loops – For each %Files%.
• This creates the variable CurrentItem.
• File – Write to CSV file.
• Write %Directory%\%FileName% to %SelectedFolder%\[Link]

Power Automate Desktop – Desktop flows – Web automations


• Web automation starts with:
• Browser automation – Launch new
• Inter Explorer, Firefox, Chrome, Microsoft Edge
• Set initial URL and Launch mode:
• Launch new [browser],
• Attach to running [browser], and
• For Internet Explorer: Launch automation browser.
• It should end with Close web browser (and select which browser).
• You can then:
• Extract data from the web page
• When this dialog box is on the screen, go to a web browser, and right-
hand click on an element to capture it.
• You may need a plug in to your browser.
• If you select a second similar element, then it will extract of all that
type of element as a 1-column table.
• If you then select a second property, then it will create a table with
multiple columns.
• Get details of web page
• Web page description, meta keywords, title, text, source, current URL
address.

Page 64 of 65
PL-200 Microsoft Power Platform Functional Consultant – Course 1
Other topics
• Take screenshot of web page
• Get details of element on web page
• Own Text, Title, Source Link, HRef, Exists
• HTTP – Download from web, invoke [SOAP?] web service
• Condition
• If web page contains
• Navigation
• Create new tab
• Go to web page
• Click link/download link on web page
• Hover mouse over element on web page
• Run JavaScript function on web page

Page 65 of 65

Common questions

Powered by AI

Unmanaged solutions are primarily used for transporting apps and components across environments during development phases. They allow developers to package items like site maps, tables, web resources, and flows for deployment from one environment to another. This enables efficient development workflows by ensuring that changes can be tested and refined outside of the production environment before final deployment .

Customizing object detection using AI Builder involves selecting the appropriate domain for object recognition (e.g., retail products, logos), defining object names, and uploading a dataset with adequate labeled images. Organizations can face challenges such as ensuring sufficient and relevant training data, managing computational resources, and integrating the model outputs into existing workflows. Additional complexities arise when models need fine-tuning for diverse real-time applications, necessitating ongoing evaluation and retraining .

Assigning security roles to an Azure AD group team allows the entire group to access the assigned level of privileges, effectively streamlining management of permissions. This enables centralized control over resource access and can enhance both security and operational efficiency by ensuring consistent role assignment across multiple users within the group. It facilitates maintenance of access controls as organizational needs evolve .

The Microsoft Power Platform Admin Center plays a pivotal role in environment management by providing tools for configuring environments with security groups, managing user roles, and overseeing resources like apps and data. It aids data governance by offering capabilities to establish data loss prevention policies, monitor resource usage, and enforce compliance with organization-specific and regulatory standards. This centralized management enhances data stewardship and mitigates risks associated with data handling in organizations .

Default environments are automatically created and limited in storage, providing a shared space for all licensed users without the possibility of deletion. Production environments require more resources, intended for permanent work and enable the handling of sensitive operations securely. Sandbox environments support development and testing with features like reset and copy. Choosing between them involves considering factors like purpose (development vs. production), storage needs, and resource availability, ensuring alignment with organizational needs and compliance requirements .

Entity extraction using AI Builder enhances data processing by automatically identifying and categorizing key data points from large datasets, enabling more efficient and accurate data analysis. Applications include extracting customer details from unstructured text for CRM updates, identifying key financial terms in documents for audit purposes, and enabling context-driven categorization in data lakes. It streamlines workflows by reducing manual data entry and improving the accuracy of information systems .

To train a custom AI Builder model for language detection and sentiment analysis, one must first select the appropriate data set including the text for analysis and associated labels for sentiment. Training involves the selection of text columns for input and tagging columns for target variables. Once trained, these models can be used in Power Automate to analyze incoming data streams such as emails or social media content, enabling automated categorization and immediate response to customer feedback, thereby enhancing customer engagement and operational decision-making .

Security roles in the Microsoft Power Platform define user access to data based on privileges which are cumulative. Users can have access to their own records, shared records, or records in which they participate as team members. Roles can range from basic user access to global access, impacting the level of information visibility from personal to organizational records. Roles can be assigned to individual users, owner teams, and Azure Active Directory group teams, affecting how resources are accessed and managed .

AI Builder models can be integrated into Power Apps and Power Automate to perform advanced data processing tasks, such as sentiment analysis, language detection, text and entity extraction, object detection, and prediction modeling. These models can automate repetitive processes like document processing through OCR, manage customer feedback through sentiment analysis, and optimize workflows with predictive analytics. They thus provide a robust framework for enhancing automation and decision-making within organizational processes .

OCR technology in AI Builder benefits document processing by enabling automated text recognition from images, which accelerates data entry and reduces errors compared to manual input. Its applications range from reading ID cards to processing invoices. Limitations include challenges with image quality, handwritten text accuracy, and character recognition nuances in complex languages. Despite these limitations, it significantly augments workflow efficiency by converting static documents into actionable data, thereby enhancing user productivity .

You might also like