PL-100 POWER PLATFORM APP MAKER ASSOCIATE STUDY GUIDE

Page 1

CERTIFICATION EXAM STUDY GUIDE EXAM PL-100: Power Platform App Maker Associate

This study guide contains all exam prep content, including walkthroughs, practice exercises and sample questions following core courses that are recommended for the PL-100 certification.



EXAM PL-100: POWER PLATFORM APP MAKER ASSOCIATE


© 2020 Blind Squirrel Publishing, LLC, All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Preface Errata Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by emailing editor@dynamicscompanions.com.

Piracy Piracy of copyright material on the Internet is an ongoing problem across all media. If you come across any illegal copies of our works, in any form, on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy. Please contact us at legal@dynamicscompanions.com with a link to the suspected pirated material. We appreciate your help in protecting our authors, and our ability to bring you valuable content.

Questions You can contact us at help@dynamicscompanions.com if you are having a problem with any aspect of the book, and we will do our best to address it.

www.dynamicscompanions.com Dynamics Companions

-1-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

www.dynamicscompanions.com Dynamics Companions

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

-2-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Table of Contents Preface ...................................................................................................................................................................................................... 1 Table of Contents ................................................................................................................................................................................. 3 Exam PL-100: Power Platform App Maker Associate .......................................................................................................... 15 Skills measured......................................................................................................................................................................... 15 Course PL-100T01: Create a canvas app in Power App ..................................................................................................... 20 Get started with Power Apps ................................................................................................................................................... 21 Introducing Power Apps ....................................................................................................................................................... 21 Power Apps building blocks ............................................................................................................................................... 23 Power Apps related technologies ..................................................................................................................................... 27 Ways to build Power Apps .................................................................................................................................................. 37 Designing a Power Apps app ............................................................................................................................................. 40 Exercise - Create your first app in Power Apps ........................................................................................................... 48 Check your knowledge.......................................................................................................................................................... 50 Summary ..................................................................................................................................................................................... 50 Customize a canvas app in Power Apps.............................................................................................................................. 52 Improve apps by making basic customizations in Power Apps ........................................................................... 52 Explore screens and controls in Power Apps ............................................................................................................... 57 Explore the browse screen ........................................................................................................................................................ 58 Exercise - Get started with functions in Power Apps ................................................................................................ 60 Check your knowledge.......................................................................................................................................................... 63 Manage apps in Power Apps .............................................................................................................................................. 63 Exercise - Manage app versions in Power Apps ......................................................................................................... 64 Exercise - Share apps in Power Apps .............................................................................................................................. 65 Exercise - Understand environments in Power Apps ................................................................................................ 66 Power Apps review ................................................................................................................................................................. 69 Check your knowledge.......................................................................................................................................................... 70 Summary ..................................................................................................................................................................................... 70 Course PL-100T02: Create a model-driven application in Power Apps ....................................................................... 73 Introduction to model-driven apps and Common Data Service ............................................................................... 74 Introduction to Common Data Service........................................................................................................................... 74 www.dynamicscompanions.com Dynamics Companions

-3-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to model-driven apps ................................................................................................................................. 75 Common Data Service and model-driven apps working together ..................................................................... 75 Exercise - Explore sample template apps ...................................................................................................................... 76 Check your knowledge.......................................................................................................................................................... 78 Summary ..................................................................................................................................................................................... 78 Get started with Common Data Service .............................................................................................................................. 80 Introducing Common Data Service .................................................................................................................................. 80 Learn about entities ............................................................................................................................................................... 82 Entity relationships ................................................................................................................................................................. 83 Create a Common Data Service entity ............................................................................................................................ 85 Exercise - Create an entity and import data into your Common Data Service database ........................... 89 Exercise - Create a custom entity and import data ................................................................................................... 92 Check your knowledge.......................................................................................................................................................... 95 Summary ..................................................................................................................................................................................... 95 Get started with model-driven apps in Power Apps ...................................................................................................... 97 Introducing model-driven apps ........................................................................................................................................ 97 Building blocks of model-driven apps ............................................................................................................................ 99 Design model-driven apps ................................................................................................................................................ 103 Exercise - Create a model-driven app ........................................................................................................................... 109 Exercise - Control security when sharing model-driven apps ............................................................................. 111 Incorporate business process flows ............................................................................................................................... 117 Exercise - Create a model-driven app ........................................................................................................................... 118 Check your knowledge........................................................................................................................................................ 120 Summary ................................................................................................................................................................................... 120 Course PL-100T03: Automate a business process using Power Automate .............................................................. 122 Get started with Power Automate ....................................................................................................................................... 123 Learning Objectives .............................................................................................................................................................. 123 Prerequisites ............................................................................................................................................................................ 123 Introducing Power Automate ........................................................................................................................................... 123 Exercise - Create your first flow ....................................................................................................................................... 130 Exercise - Learn to use the Power Automate mobile app ..................................................................................... 133 Exercise - Receive text and email notifications from flows................................................................................... 137 Exercise - Copy files with flows ........................................................................................................................................ 139 www.dynamicscompanions.com Dynamics Companions

-4-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Create recurring flows..................................................................................................................................... 140 Exercise - Send an email when a tweet is posted .................................................................................................... 143 Exercise - Create team flows ............................................................................................................................................. 145 Troubleshoot flows ............................................................................................................................................................... 148 Check your knowledge........................................................................................................................................................ 151 Summary ................................................................................................................................................................................... 152 Build more complex flows with Power Automate ......................................................................................................... 153 Learn to build more complex flows ............................................................................................................................... 153 Exercise - Build an approval request ............................................................................................................................. 153 Exercise - Build a flow that processes an approval request ................................................................................. 157 Exercise - Create a flow that stores documents ........................................................................................................ 159 Exercise - Build a flow that uses information like locations or date ................................................................. 162 Exercise - Build a flow accepts user input when run ............................................................................................... 169 Exercise - Learn to build a flow that runs at recurring time intervals............................................................... 173 Exercise - Build a flow that runs when an event in Dynamics 365 occurs ...................................................... 175 Exercise - Build a flow that uses SQL ............................................................................................................................. 180 Prerequisites ............................................................................................................................................................................ 180 Exercise - Integrate Power Apps, Power Automate, and SharePoint................................................................ 184 Exercise - Create a business process flow ................................................................................................................... 186 Exercise - Create a business process flow that has conditions ........................................................................... 191 Exercise - Monitor flows ..................................................................................................................................................... 194 Check your knowledge........................................................................................................................................................ 195 Summary ............................................................................................................................................................................................. 196 Use the Admin center to manage environments and data policies in Power Automate .............................. 197 Administer flows .................................................................................................................................................................... 197 Export and import flows ..................................................................................................................................................... 199 Learn how to distribute button flows ............................................................................................................................ 200 Use shared buttons .............................................................................................................................................................. 204 Check your knowledge........................................................................................................................................................ 206 Summary ................................................................................................................................................................................... 207 Implement robotic process automation with Microsoft Power Automate, Teams, UI flows, and AI Builder ........................................................................................................................................................................................................... 208 Introduction ............................................................................................................................................................................. 208

www.dynamicscompanions.com Dynamics Companions

-5-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Build a Power Automate flow to route an invoice to a Teams channel .......................................................... 209 Use AI Builder to build a forms processing model .................................................................................................. 211 Use Power Automate and your AI model to automate the invoice approval process .............................. 213 Build a UI flow to automate data entry into a legacy application ..................................................................... 218 Knowledge check .................................................................................................................................................................. 219 Use AI Builder in Power Automate ...................................................................................................................................... 221 Introduction to AI Builder usage in Power Automate ............................................................................................ 221 AI Builder in Power Automate saves time ................................................................................................................... 222 Exercise - Use AI Builder actions in Power Automate............................................................................................. 224 Advanced usage of AI Builder in Power Automate.................................................................................................. 229 Check your knowledge........................................................................................................................................................ 233 Summary ................................................................................................................................................................................... 234 Course PL-100T04: Manage permissions and administration for Common Data Service.................................. 235 Get started with security roles in Common Data Service ........................................................................................... 236 Introduction to environment roles ................................................................................................................................. 236 Understand environment roles ........................................................................................................................................ 237 Adding or disabling an environment user .................................................................................................................. 238 Understand user security roles and security role defaults .................................................................................... 238 Create a custom role ............................................................................................................................................................ 239 Check the roles that a user belongs to......................................................................................................................... 244 Check your knowledge........................................................................................................................................................ 245 Summary ................................................................................................................................................................................... 246 Use administration options for Common Data Service .............................................................................................. 247 Introduction to the Power Platform Admin Center portal .................................................................................... 247 Use the Power Platform Admin Center portal ........................................................................................................... 249 Advanced Customization options in Power Apps Portal ....................................................................................... 250 Classic Administration Center (Solution Explorer) ................................................................................................... 251 Check your knowledge........................................................................................................................................................ 253 Summary ................................................................................................................................................................................... 254 Course PL-100T05: Get started using Common Data Service ....................................................................................... 255 Introduction to Common Data Service .............................................................................................................................. 256 Introduction ............................................................................................................................................................................. 256 Overview of Common Data Service ............................................................................................................................... 256 www.dynamicscompanions.com Dynamics Companions

-6-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Identify entities and fields in Common Data Service .............................................................................................. 259 Understand relationships ................................................................................................................................................... 261 Environments in Common Data Service....................................................................................................................... 262 Business rules.......................................................................................................................................................................... 263 Administer ................................................................................................................................................................................ 264 Check your knowledge........................................................................................................................................................ 266 Summary and resources ..................................................................................................................................................... 266 Create and manage environments in Common Data Service .................................................................................. 269 Environments in Common Data Service....................................................................................................................... 269 Create and manage an environment............................................................................................................................. 270 Create an instance of a Common Data Service database ..................................................................................... 272 Add users and roles within an environment............................................................................................................... 272 Manage settings in an environment .............................................................................................................................. 277 Check your knowledge........................................................................................................................................................ 277 Summary ................................................................................................................................................................................... 278 Create and manage entities in Common Data Service ............................................................................................... 279 Identify entities and entity types in Common Data Service ................................................................................. 279 Create a custom entity ........................................................................................................................................................ 280 Enable attachments within an entity ............................................................................................................................. 281 Licensing requirements for each entity type .............................................................................................................. 282 Exercise - Create a new custom entity and enable attachments........................................................................ 282 Check your knowledge........................................................................................................................................................ 285 Summary ................................................................................................................................................................................... 285 Create and manage fields within an entity in Common Data Service ................................................................... 287 Define fields in Common Data Service ......................................................................................................................... 287 Field types in Common Data Service............................................................................................................................. 288 Add a field to an entity ....................................................................................................................................................... 289 Create a primary name field ............................................................................................................................................. 290 Restrictions that apply to fields in an entity ............................................................................................................... 291 Create an auto numbering field ...................................................................................................................................... 292 Create an alternate key ....................................................................................................................................................... 293 Exercises .................................................................................................................................................................................... 294 Check your knowledge........................................................................................................................................................ 298 www.dynamicscompanions.com Dynamics Companions

-7-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary ................................................................................................................................................................................... 299 Working with option sets in Common Data Service .................................................................................................... 300 Define option sets ................................................................................................................................................................. 300 Standard option sets............................................................................................................................................................ 301 Exercise - Create a new option set or modify an existing option set ............................................................... 302 Check your knowledge........................................................................................................................................................ 306 Summary ................................................................................................................................................................................... 307 Load/export data and create data views in Common Data Service ....................................................................... 308 View data in an entity .......................................................................................................................................................... 308 Create or edit views of data in an entity ...................................................................................................................... 308 Load data into an entity ..................................................................................................................................................... 309 Export data from an entity................................................................................................................................................. 310 Add, update, or delete data in an entity by using Excel ........................................................................................ 310 Check your knowledge........................................................................................................................................................ 311 Summary ................................................................................................................................................................................... 311 Course PL-100T06: Master advanced techniques for Power Apps canvas apps .................................................... 313 Use imperative development techniques for canvas apps in Power Apps ......................................................... 314 Imperative versus declarative development ............................................................................................................... 314 The three types of variables in Power Apps ............................................................................................................... 316 Global variables...................................................................................................................................................................... 316 Contextual variables ............................................................................................................................................................. 318 Collections................................................................................................................................................................................ 319 Additional variable concepts ............................................................................................................................................ 320 Check your knowledge........................................................................................................................................................ 322 Summary ................................................................................................................................................................................... 323 Author an advanced formula that uses tables, records, and collections in a canvas app in Power Apps ........................................................................................................................................................................................................... 324 Formulas that process multiple records ....................................................................................................................... 324 Math operation on tables .................................................................................................................................................. 326 Combine and separate records ....................................................................................................................................... 327 The ForAll function ............................................................................................................................................................... 328 Check your knowledge........................................................................................................................................................ 329 Summary ................................................................................................................................................................................... 329

www.dynamicscompanions.com Dynamics Companions

-8-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Perform custom updates in a Power Apps canvas app............................................................................................... 331 Sometimes you need something more than forms................................................................................................. 331 Using the Patch function to create and edit records .............................................................................................. 333 Deleting record(s) from data sources and collections............................................................................................ 336 Check your knowledge........................................................................................................................................................ 338 Summary ................................................................................................................................................................................... 338 Complete testing and performance checks in a Power Apps canvas app........................................................... 340 The importance of thinking about performance ...................................................................................................... 340 Improve performance with data sources ..................................................................................................................... 343 Testing and troubleshooting your app......................................................................................................................... 346 Check your knowledge........................................................................................................................................................ 349 Summary ................................................................................................................................................................................... 350 Course PL-100T07: Use best practices to secure and govern Power Automate environments ....................... 351 Introduction to Power Automate security and governance ...................................................................................... 352 Introduction ............................................................................................................................................................................. 352 Identify Power Platform environments ......................................................................................................................... 353 Data Loss Prevention policies........................................................................................................................................... 354 Power Platform Center of Excellence Starter Kit ....................................................................................................... 356 Exercise - Create a Power Automate environment .................................................................................................. 362 Check your knowledge........................................................................................................................................................ 364 Summary ................................................................................................................................................................................... 365 Plan and manage your Power Automate environment............................................................................................... 366 Introduction ............................................................................................................................................................................. 366 Prerequisites for Power Platform DLP ........................................................................................................................... 367 Establish risk assessments and mitigation paths ...................................................................................................... 367 Create a policy communication plan ............................................................................................................................. 368 Plan environments and variance ..................................................................................................................................... 369 Layer Data Loss Prevention policies............................................................................................................................... 374 Exercise - Create an Office 365 environment-specific Data Loss Prevention policy .................................. 381 Check your knowledge........................................................................................................................................................ 387 Summary ................................................................................................................................................................................... 388 Implementation recommendations for Power Automate environments ............................................................. 389 Introduction ............................................................................................................................................................................. 389 www.dynamicscompanions.com Dynamics Companions

-9-

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prerequisites for Power Platform DLP ........................................................................................................................... 390 Default DLP data group ...................................................................................................................................................... 390 Implement the recommended DLP policy for Office 365 users ......................................................................... 393 Implement the recommended DLP policy for Dynamics 365 customer experience users ...................... 396 Layer directional data governance on top of DLP policies ................................................................................... 399 Configure DLP for custom connectors ......................................................................................................................... 417 Configure DLP for HTTP connectors .............................................................................................................................. 418 Exercise - Publish a custom connector and apply a DLP policy ......................................................................... 420 Check your knowledge........................................................................................................................................................ 427 Summary ................................................................................................................................................................................... 428 Manage environmental changes in Power Automate ................................................................................................. 429 Introduction and best practices for building DLP change management plans............................................ 429 Prerequisites for Power Platform governance and change management...................................................... 430 Implement best practices for building DLP change management plans ........................................................ 430 View Power Platform Admin Analytics.......................................................................................................................... 431 Gain visibility by using Power Automate PowerShell cmdlets ............................................................................ 438 Exercise - List connections in a tenant.......................................................................................................................... 442 Check your knowledge........................................................................................................................................................ 443 Summary ................................................................................................................................................................................... 444 Use templates to enforce governance policies in Power Automate ...................................................................... 445 Introduction to Power Automate flow templates .................................................................................................... 445 Prerequisites ............................................................................................................................................................................ 447 Discover and implement Power Automate governance templates .................................................................. 447 Exercise - Build a digital tracking user list ................................................................................................................... 460 Check your knowledge........................................................................................................................................................ 472 Summary ................................................................................................................................................................................... 473 Couse PL-100T08: Create and use analytics reports with Power BI ............................................................................ 474 Get started building with Power BI ..................................................................................................................................... 475 Introduction ............................................................................................................................................................................. 475 Use Power BI ........................................................................................................................................................................... 477 Building blocks of Power BI............................................................................................................................................... 478 Tour and use the Power BI service ................................................................................................................................. 483 Check your knowledge........................................................................................................................................................ 490 www.dynamicscompanions.com Dynamics Companions

- 10 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary ................................................................................................................................................................................... 491 Get data with Power BI Desktop .......................................................................................................................................... 494 Overview of Power BI Desktop ........................................................................................................................................ 494 Explore Power BI Desktop.................................................................................................................................................. 495 Connect to data sources..................................................................................................................................................... 500 Get data from Excel .............................................................................................................................................................. 502 Transform data to include in a report ........................................................................................................................... 505 Combine data from multiple sources............................................................................................................................ 508 Clean data to include in a report .................................................................................................................................... 510 Check your knowledge........................................................................................................................................................ 512 Summary ................................................................................................................................................................................... 513 Model data in Power BI............................................................................................................................................................ 514 Introduction to modeling your data .............................................................................................................................. 514 How to manage your data relationships ..................................................................................................................... 515 Create calculated columns ................................................................................................................................................ 519 Optimize data models ......................................................................................................................................................... 522 Create measures .................................................................................................................................................................... 526 Create calculated tables ..................................................................................................................................................... 528 Explore time-based data .................................................................................................................................................... 530 Check your knowledge........................................................................................................................................................ 532 Summary ................................................................................................................................................................................... 533 Use visuals in Power BI ............................................................................................................................................................. 534 Introduction to visuals in Power BI ................................................................................................................................ 534 Create and customize simple visualizations ............................................................................................................... 535 Create slicers ........................................................................................................................................................................... 539 Map visualizations................................................................................................................................................................. 541 Matrices and tables .............................................................................................................................................................. 543 Create scatter, waterfall, and funnel charts................................................................................................................. 544 Modify colors in charts and visuals ................................................................................................................................ 549 Page layout and formatting .............................................................................................................................................. 552 Check your knowledge........................................................................................................................................................ 555 Summary ................................................................................................................................................................................... 556 Explore data in Power BI.......................................................................................................................................................... 557 www.dynamicscompanions.com Dynamics Companions

- 11 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to the Power BI service ............................................................................................................................. 557 Quick insights in Power BI ................................................................................................................................................. 558 Create and configure a dashboard ................................................................................................................................ 560 Ask questions of your data with natural language .................................................................................................. 562 Create custom Q&A suggestions ................................................................................................................................... 565 Share dashboards with your organization .................................................................................................................. 567 Display visuals and tiles in full screen ........................................................................................................................... 568 Edit tile details and add widgets ..................................................................................................................................... 569 Get more space on your dashboard .............................................................................................................................. 571 Check your knowledge........................................................................................................................................................ 572 Summary ................................................................................................................................................................................... 573 Publish and share in Power BI ............................................................................................................................................... 574 Introduction to content packs, security, and groups .............................................................................................. 574 Publish Power BI Desktop reports .................................................................................................................................. 575 Print and export dashboards and reports ................................................................................................................... 576 Introducing Power BI Mobile ............................................................................................................................................ 577 Create workspaces in Power BI ........................................................................................................................................ 579 Build apps ................................................................................................................................................................................. 580 Use apps ................................................................................................................................................................................... 582 Publish to web ........................................................................................................................................................................ 584 Check your knowledge........................................................................................................................................................ 586 Summary ................................................................................................................................................................................... 587 Course PL-100T09: Bring AI to your business with AI Builder ....................................................................................... 588 Get started with AI Builder ..................................................................................................................................................... 589 Introduction to AI Builder .................................................................................................................................................. 589 Choose an AI capability ...................................................................................................................................................... 591 Learn about the model ....................................................................................................................................................... 592 Create your first model ....................................................................................................................................................... 593 Ways to use your models................................................................................................................................................... 595 Check your knowledge........................................................................................................................................................ 597 Summary ................................................................................................................................................................................... 598 Manage models in AI Builder ................................................................................................................................................ 599 Model lifecycle ....................................................................................................................................................................... 599 www.dynamicscompanions.com Dynamics Companions

- 12 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manage model versions ..................................................................................................................................................... 600 Share your models ................................................................................................................................................................ 601 Check your knowledge........................................................................................................................................................ 602 Summary ................................................................................................................................................................................... 603 Course PL-100T09: Bring AI to your business with AI Builder ....................................................................................... 604 Get started with AI Builder ..................................................................................................................................................... 605 Introduction to AI Builder .................................................................................................................................................. 605 Choose an AI capability ...................................................................................................................................................... 607 Learn about the model ....................................................................................................................................................... 608 Create your first model ....................................................................................................................................................... 609 Ways to use your models................................................................................................................................................... 611 Check your knowledge........................................................................................................................................................ 613 Summary ................................................................................................................................................................................... 614 Manage models in AI Builder ................................................................................................................................................ 615 Model lifecycle ....................................................................................................................................................................... 615 Manage model versions ..................................................................................................................................................... 616 Share your models ................................................................................................................................................................ 617 Check your knowledge........................................................................................................................................................ 618 Summary ................................................................................................................................................................................... 619 Course PL-100T10: Use the UI and controls in a canvas app in Power Apps .......................................................... 620 Navigation in a canvas app in Power Apps...................................................................................................................... 621 Understanding navigation ................................................................................................................................................. 621 The navigation and back function .................................................................................................................................. 622 More ways to use the navigation function ................................................................................................................. 624 Check your knowledge........................................................................................................................................................ 626 Summary ................................................................................................................................................................................... 626 How to build the UI in a canvas app in Power Apps .................................................................................................... 628 Use themes to quickly change the appearance of your app ............................................................................... 628 Branding a control ................................................................................................................................................................ 630 Icons ........................................................................................................................................................................................... 631 Images ....................................................................................................................................................................................... 632 Personalization ....................................................................................................................................................................... 633 Using the tablet or phone form factors ....................................................................................................................... 634 www.dynamicscompanions.com Dynamics Companions

- 13 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge........................................................................................................................................................ 636 Summary ................................................................................................................................................................................... 637 Use and understand Controls in a canvas app in Power Apps ................................................................................ 638 Understand controls ............................................................................................................................................................ 638 Core properties of controls ............................................................................................................................................... 639 Entering and displaying data with text controls ....................................................................................................... 640 Additional controls for enhancing your app's usability ......................................................................................... 642 Media ......................................................................................................................................................................................... 644 Check your knowledge........................................................................................................................................................ 645 Summary ................................................................................................................................................................................... 646 Course PL-100T11: Create a business process flow in Power Automate .................................................................. 647 Introduction to business process flows in Power Automate..................................................................................... 648 Introduction to business process flows ........................................................................................................................ 648 Differences between a business process flow and a regular flow in Power Automate............................. 649 Uses of a business process flow and a standard Power Automate flow ......................................................... 652 Check your knowledge........................................................................................................................................................ 652 Summary ................................................................................................................................................................................... 653 Create an immersive business process flow in Power Automate............................................................................ 654 Introduction to immersive business process flows .................................................................................................. 654 Exercise - Create an immersive business process flow........................................................................................... 656 Exercise - Run the business process flow and view data....................................................................................... 669 Check your knowledge........................................................................................................................................................ 675 Summary ................................................................................................................................................................................... 675 Understand advanced business process flow concepts in Power Automate ..................................................... 677 Introduction to logical branching in business process flows............................................................................... 677 Instant flows ............................................................................................................................................................................ 679 Enhance the form to augment a business process flow ........................................................................................ 681 Exercise – Add branching logic to a business process flow ................................................................................. 681 Exercise – Add an instant flow ......................................................................................................................................... 690 Exercise – Enhance the main form that is associated with the business process flow .............................. 694 Check your knowledge........................................................................................................................................................ 708 Summary ................................................................................................................................................................................... 708

www.dynamicscompanions.com Dynamics Companions

- 14 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exam PL-100: Power Platform App Maker Associate The app maker builds solutions to simplify, automate, and transform tasks and processes for themselves and their team where they have deep expertise in the solution domain. They are skilled in key technical business analyst tasks such as data modeling, basic UX design, requirements analysis, process analysis, etc. The app maker creates and enforces business processes, structures digital collection of information, improves efficiency of repeatable tasks, and automates business processes. The app maker uses the maker tools of Power Platform to solve business problems. They may have experience with Visual Basic for Applications, Excel pivot tables, Teams, and other tools. They should have a basic understanding of data models, user interface, and processes. The app maker is aware of the capabilities and limitations of available tools and understands how to apply them. The app maker is self-directed, and solution focused. They may not have formal IT training but are comfortable using technology to solve business problems with a personal growth mindset. They understand the operational need and have a vision of the desired outcome. They approach problems with phased and iterative strategies.

Skills measured Design solutions (10-15%) Create a high-level design 

collect business requirements

identify data sources

describe real-world objects as entities

describe the user experience

create a high-level data model

Identify required Power Platform components 

determine required Power Apps

identify existing resources and licenses

identify gaps between existing functionality and requirements

map problem domain to Power Platform tools

www.dynamicscompanions.com Dynamics Companions

- 15 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

identify required business processes

evaluate accelerators, Microsoft apps and services, and third-party solutions

describe connectors including standard, premium, and custom connectors

Design data models 

determine required entities

identify relationships

identify fields and data types

determine requirements for offline access

Design User Interface 

identify opportunities for component reuse

apply user interface (UI) standards

design for accessibility

design for localization

Design output 

define data output requirements

define requirements for visualizations

identify repositories for analytical data

Design security, privacy, and compliance 

identify data that must be protected or requires special handling

identify tools that help ensure compliance with applicable government regulations

Understand Power Platform environments 

understand how to get started building apps

describe the different types of environments

describe Common Data Service solutions

describe other environment creation options

Create solutions (55-60%) Manage Power Platform development environments 

create a solution

add existing apps and flows to a solution

run Solution Checker and interpret results

www.dynamicscompanions.com Dynamics Companions

- 16 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create model-driven apps 

create model-driven apps

create a site map

create and configure Common Data Service entity forms

create and configure Common Data Service entity views

embed model-driven app records in Microsoft Teams channels

Create canvas apps 

create canvas apps within a solution

connect to data sources in canvas apps

build canvas apps screens

configure apps for offline access

use formulas

use collections and variables

describe the implications of design choices on app performance

interpret App Checker results

Create and Use Controls 

add canvas app assets and components to screens

build canvas app components

Create and configure data stores 

create a Common Data Service database

configure a connection

create Common Data Service entities based on a data model

link entities by using Common Data Service entity relationships

load or create data records for testing and development

Create business logic 

create Common Data Service business rules

create Common Data Service business process flows

create Common Data Service classic workflows

create business logic using Power Automate flows

create Canvas app formulas and events

www.dynamicscompanions.com Dynamics Companions

- 17 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create Power Automate flows 

create flows in a solution

configure triggers

build scheduled, automated, and instant flows

configure flow steps

interpret Flow Checker results

test a flow

implement common expressions and loops

create adaptive cards for Microsoft Teams

Analyze and visualize data (5-10%) Create Power BI reports 

create Power BI report by using Power BI Desktop

create Power BI report by using Power BI service

Implement other reports 

merge data from a data source into a Microsoft Word or Excel template

create model-driven dashboards

create model-driven charts

add existing Power BI tile or dashboard to a model-driven dashboard

Describe AI Builder models 

identify model types including prebuilt and custom models

describe the process for preparing data and training models

use a model from within Power Automate or Power Apps

Implement and manage solutions (15-20%) Configure Common Data Service security 

configure security roles

configure field security

Test apps and flows 

describe the testing process

implement Power Platform testing tools

www.dynamicscompanions.com Dynamics Companions

- 18 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

validate accessibility

Secure a solution 

manage data security

manage app security

share flows

share Power BI reports

Deploy the solution 

export solutions

move individual apps and flows between environments

support deployment of solutions to testing and production environments

Manage versions of canvas apps 

create new versions of an app

restore a previous version of an app

publish a new version of an app

www.dynamicscompanions.com Dynamics Companions

- 19 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T01: Create a canvas app in Power App Do you want to create apps to help make your business more efficient? Then this path is for you. It introduces you to Power Apps, helps you create and customize an app, and then manage and distribute it. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Familiarity with OneDrive, SharePoint, and Excel.

www.dynamicscompanions.com Dynamics Companions

- 20 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with Power Apps Learn the basics of Power Apps and how you can use it in your organization.

Learning Objectives In this module, you will: 

Explore how Power Apps can make your business more efficient.

Learn how to use different technologies to perform different tasks in Power Apps.

Learn about the different ways to build an app in Power Apps.

Create your first app from data in an Excel workbook.

Prerequisites Access to Microsoft Excel and OneDrive for Business.

Introducing Power Apps Welcome to Microsoft Power Apps. This self-paced, online module helps you build apps from the ground up. In this module, you will: 

Explore how Power Apps can make your business more efficient.

Learn which technologies to use to perform tasks in Power Apps.

Learn about the different ways to build an app in Power Apps.

Create your first app from data in a Microsoft Excel workbook.

In this introductory module, you'll learn how to create an app from data in an Excel workbook. As a prerequisite, you'll download a workbook that contains sample data. Next, you'll upload the workbook to Microsoft OneDrive for Business, where you can share the data with others. Then, you'll build the app without using code. Power Apps is a suite of apps, services, connectors, and a data platform that provides you with an opportunity to build custom apps for your business needs. By using Power Apps, you can quickly build custom business apps that connect to your business data that is stored either in the underlying data platform (Common Data Service) or in various online and on-premises data sources (SharePoint, Excel, Office 365, Dynamics 365, SQL Server, and so on). Apps that are built by using Power Apps provide rich business logic and workflow capabilities to transform your manual business processes to digital, automated processes. Power Apps simplifies the

www.dynamicscompanions.com Dynamics Companions

- 21 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

custom business app building experience by enabling users to build feature-rich apps without writing code. Power Apps also provides an extensible platform that lets pro developers programmatically interact with data and metadata, apply business logic, create custom connectors, and integrate with external data. With Power Apps, you can: 

Build an app quickly by using the skills that you already have.

Connect to the cloud services and data sources that you're already using.

Share your apps instantly so that coworkers can use them on their phones and tablets.

When it comes to using Power Apps to get things done and keep people informed, your options are nearly limitless. The following examples can help you think about how to use an app, instead of traditional paper notes, to run your business: 

Equipment in the field - Often, company representatives who visit customers in the field carry clipboards to help guarantee a paper trail of parts with scheduled replacement dates. By running an app on a tablet, reps can look up the customer's equipment, see a picture of a part, test and analyze the part, and then order new parts. Reps can perform these tasks on-site instead of leaving the customer's warehouse.

Restaurant employee management - Employees of a large restaurant might fill out work schedules and vacation requests on a piece of paper that's affixed to a wall. With Power Apps running on everyone's smartphone, employees can open the app to record the same information, anywhere, anytime. The app can even send reminders for the start of the next day's shift.

If you're a beginner with Power Apps, this module gets you going quickly; if you're familiar with Power Apps, it ties concepts together and fills in the gaps. www.dynamicscompanions.com Dynamics Companions

- 22 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps building blocks Power Apps is a collection of services, apps, and connectors that work together to let you do much more than just view your data. You can act on your data and update it anywhere and from any device. To create, share, and administer apps, you'll use the following sites: 1.

Make a Power App - On this site, you can open apps, specify the type of app that you want to create, share your app, and create data connections and flows. To use this site, you'll need to log in by using your organizational account.

2.

Power Apps Studio - On this site, you build apps by configuring user interface (UI) elements and Excel-like formulas.

3.

Power Apps admin center - On this site, you'll define environments and data policies.

Note To use these sites, you'll need to sign in by using your organizational account. When you've completed your tasks, you can run your apps in a browser or in Power Apps Mobile (available for Windows tablets, iOS devices, and Android devices).

Power Apps building blocks This unit explores each part of the following Power Apps components: 

Power Apps Home Page - Apps start here, whether you build them from data, a sample app, or a blank screen.

Power Apps Studio - Develop your apps further by connecting to data, adding and arranging user interface (UI) elements (known as controls), and building formulas.

Power Apps Mobile - Run your apps on Microsoft Windows, Apple iOS, and Google Android devices.

Power Apps Admin Center - Manage Power Apps environments and other components.

Power Apps Home Page If you are building an app, you'll start with the Power Apps Home Page. You can build apps from sample apps, templates, or a blank screen. All the apps that you've built appear here, along with any apps that others have created and shared with you.

www.dynamicscompanions.com Dynamics Companions

- 23 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps Studio Power Apps Studio is where you can fully develop your apps to make them more effective as a business tool and to make them more attractive. Power Apps Studio has three panes that make creating apps seem more like building a slide deck in Microsoft PowerPoint: 

Left pane - Shows a hierarchical view of all the controls on each screen or a thumbnail for each screen in your app.

Middle pane - Shows the canvas app that you're working on.

Right pane - Where you set options such as the layout, properties, and data sources for certain controls.

www.dynamicscompanions.com Dynamics Companions

- 24 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps Mobile Power Apps Mobile for Windows, iOS, and Android devices allows you to use all the apps that you've created, and those others have shared with you, on your mobile device. You or your users can download the Microsoft Power Apps app from the appropriate app store. When users log in with their credentials, they will see all apps that have been shared with them. The Power Apps Mobile app only needs to be downloaded once. When you use apps in Power Apps Mobile, you get the most out of your device's capabilities: camera controls, GPS location, and more.

www.dynamicscompanions.com Dynamics Companions

- 25 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps Admin center The Power Apps admin center is the centralized place for managing Power Apps for an organization. On this site, you can define and manage different environments to house the apps. For example, you might have separate environments for development and production apps. Additionally, you can define data connections and manage environment roles and data policies.

Licensing Most users get their initial start with Power Apps by utilizing one of the licenses that comes with their Microsoft 365 Plan or Microsoft Dynamics 365 license. These licenses allow you to extend the functionality of the app that is licensed. This means if you purchased a Microsoft 365 plan that included a Power Apps license then you can build apps that extend and use SharePoint as a data source. But Power Apps doesn’t have to stop at just extending that platform. Power Apps has over 300 available data source connectors available including Common Data Service. To incorporate Common Data Service or any of those additional connectors all users of the app will need a premium license. There are two different ways to acquire a Premium license: 

Per App model

Per User model.

The Per App license allows users to access premium connectors for a specific business solution. The Per User license allows users to run unlimited premium licensed apps. This gives you the ability to grow with Power Apps and control cost by purchasing the license that best matches your business goals.

www.dynamicscompanions.com Dynamics Companions

- 26 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In addition, Power Apps also has the capability to use Power Apps portals to build externally or internally facing websites using Common Data Service and Power Apps controls. Power Apps portals have their own licensing model and are not included in any of the licenses discussed previously above. With Power Portals you will purchase a capacity based license to meet your business needs. Review the following links about licensing. Microsoft Power Apps pricing Microsoft Power Automate pricing Microsoft Power Apps portals pricing.

Power Apps related technologies Microsoft Power Apps works with other technologies to help you build powerful apps for your organization. Some of these technologies include: 

Data sources - Without data, you don't have a business. Data sources bring cloud and on-premises data into your apps. You access data through built-in connections, custom connectors, and gateways.

Common Data Service - A compliant and scalable data service that's integrated into Power Apps.

Power Automate - Allows you to build automated workflows to receive notifications, run processes, collect data, and more.

Data sources, connections, and gateways In Power Apps, most canvas apps use external information that is stored in Data Sources. A common example is a table in an Excel file that is stored in OneDrive for Business or SharePoint. Apps access these data sources by using connections. Some connections allow Power Apps to read and write stored data. In Power Apps, you can add many data sources to your apps through built-in or custom connectors. Some of the most popular data sources are shown in the following figure.

Many data sources are cloud services, like Salesforce. Even Twitter can be a data source if, for example, you're tracking your company's hashtags. Connectors might not seem like the most exciting part of app development; however, they're essential when you work with data that you, your colleagues, and your

www.dynamicscompanions.com Dynamics Companions

- 27 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

customers care about. When an app shows up with your data source for the first time, you might suddenly find that they are, in fact, exciting. For data that's stored on-premises instead of in the cloud, you can use a gateway to provide a reliable connection between Power Apps and your data source. The gateway sits on an on-premises computer and communicates with Power Apps. An advantage of building your business apps in Power Apps is being able to connect to many data sources in a single app. With the connectors in Power Apps, you can connect to where your data lives. To learn more about data sources in Power Apps, refer to the Working With Data learning path.

Common Data Service An important data source option to explore further is the Common Data Service. Common Data Service lets you store and manage data that's used by business applications. Data within Common Data Service is stored within a set of entities. An entity is a set of records that are used to store data, similar to how a table stores data within a database. Common Data Service includes a base set of standard entities that cover typical scenarios, but you can also create custom entities that are specific to your organization and then populate them with data by using Power Query. App makers can then use Power Apps to build rich applications by using this data.

For information on purchasing a plan to use Common Data Service, refer to the License and Pricing information pages.

Reasons to use Common Data Service Standard and custom entities within Common Data Service provide a cloud-based storage option for your data. Entities let you create a business-focused definition of your organization's data for use within apps. If you're unsure if entities are your best option, consider the following benefits:

www.dynamicscompanions.com Dynamics Companions

- 28 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Simple to manage - Both the metadata and data are stored in the cloud. You don't need to worry about the details of how they're stored.

Helps to secure data - Data is stored so that users can see it only if you grant them access. Rolebased security allows you to control access to entities for different users within your organization.

Access your Dynamics 365 Data - Data from your Dynamics 365 applications is also stored within the Common Data Service, which allows you to quickly build apps that use your Dynamics 365 data and extend your apps by using Power Apps.

Rich metadata - Data types and relationships are used directly within Power Apps.

Logic and validation - Define calculated fields, business rules, workflows, and business process flows to ensure data quality and drive business processes.

Productivity tools - Entities are available within the add-ins for Microsoft Excel to increase productivity and ensure data accessibility.

Related Power Platform technologies As you continue developing your application, you may want to consider implementing additional Power Apps related technologies such as Power Automate and or Power BI. For example, you may have a simple Expense Report App that requires an approval before an item can be purchased. With Power Automate, you can create a simple Flow to make this happen. Or maybe you want to display your data with custom charts and graphs giving your users a more visual look into the data, which can often be useful. In this section, you will learn more about some of the other Power Platform technologies and how you could apply them in your own Power Apps solution. Keep in mind, if you decide to implement these Power Apps related technologies you should also review their licensing structure and associated costs.

Power Automate Power Automate brings automation to your business. This can be traditional workflows via flow, Robotic Process Automation (RPA) for automating legacy systems via UI Flows, or business process automation via Business Process Flows. Each of these capabilities increases your productivity to connect disjointed systems to build the business solution you need and make your app more powerful. www.dynamicscompanions.com Dynamics Companions

- 29 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can use Power Automate to create logic that performs one or more tasks when an event occurs in a canvas app. For example, configure a button to execute a flow to do one of the following: create an item in a SharePoint list, send an email or meeting request, or add a file to OneDrive. The button could be configured to do all of those in a single Power Automate flow. You can configure any control in the app to start the flow, which continues to run even if you close Power Apps. Below is an example using Power Automate to send a flow:

Identify Flows in your Solution Now that you have a general overview of Power Automate, how do you determine if the solution you’re building requires a Flow? There are a number of simple functions Power Apps can do, like sending an email when a button is pressed in your application. This email generated from Power Apps can also contain dynamic/specific information and be sent to any email address you would like. Often, customers will use Power Automate to create this same functionality even though Power Apps can do this out of the box. Power Automate should be used for more complex solutions, such as the approval workflows. With Power Automate you can run an approval when a button is pressed, on a schedule, when an item is created or modified, and so on.

www.dynamicscompanions.com Dynamics Companions

- 30 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For many Power Apps solutions Power Automate is used to handle complex business logic. Do you need a way to make sure someone actioned on the incident report that was generated by your app? Or, do you need a process to kick off every time new data is created in another system so Power Apps will have the data it needs? Do you need to check each morning to see if an inspection is due that day and then send an email with a link to your Power Apps inspection form? These are great uses of Power Automate to transform your app from a point solution to a fully featured business solution.

Power BI Power BI is an analytics tool within the Power Platform suite. Power BI connects data from multiple sources and transforms the data into graphical visualizations to gain insights. It allows business users to utilize a number of different visualizations to build comprehensive reports and dashboards. When creating Power BI reports to view and analyze your app data, you have the ability to customize them for personal use and will only be accessible by you, providing you with a more unique and custom experience. If you need to share the report with others, you and each of the report consumer will need a Power BI Pro license. This license allows you to not only share the content but also control what others are able to do with the shared report or dashboard. While Power Apps has capabilities to include simple graphs or tables, many solutions would be better served with a visualization provided by Power BI. Power Apps and Power BI have two options for seamless integration:

Embed a Power BI tile in a Power Apps app By embedding a Power BI tile in a Power Apps solution, you are able to bring valuable visualizations into the app to allow the user to consume that data within the context of the app. In the example below, you will see a simple Power BI Tile embedded in a Sales Planning app built in Power Apps. The visual is displaying the Profit and Gross Sales and the Power Apps form allows the user to enter sales predictions.

www.dynamicscompanions.com Dynamics Companions

- 31 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Embed a Power Apps app in a Power BI Dashboard Another integration between these two applications, is to embed a Power Apps app in your Power BI report. This allows the user to action on data while never leaving the dashboard resulting in a better user experience. Consider an inventory management dashboard for a manufacturing facility. Without leaving the dashboard, the user can submit to purchasing an order for additional material. While the solution may have been utilizing both the Power Apps and Power BI platforms, the user simply experiences a complete end to end solution in one window on their desktop. In the example below, we are analyzing the Sale Price and Profit by Country and Segment. Notice once you have embedded your Power App in a Power BI Dashboard you can navigate between screens.

www.dynamicscompanions.com Dynamics Companions

- 32 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In this next screenshot, still working with the same data as the previous example, you can utilize the native Power Apps features like Search with Power BI data.

In this last screenshot, for this example, you will see the embedded Power App is filtered by the Power BI selection.

www.dynamicscompanions.com Dynamics Companions

- 33 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Translating needs to the appropriate technology To build the best solution, think through the use cases and determine how you want to collect the data, use the data, and analyze the data. Once you have determined how the solution will be used in each one of those cases, you can begin to select the right technology to execute each function. It would be difficult to cover every use case and decision point, but to help you understand the decisionmaking process let’s explore sending an email via Power Automate versus sending an email via Power Apps. First consider the look and feel of the email, does your solution require special formatting of the email? To format the text of your email in Power Apps, like adding italics or bold text, you would need to write HTML. In Power Automate though, this functionality can be implemented by using the simple Design Interface that is provided out of the box. Below are examples of the formulas to execute sending an email via Power Apps versus via Power Automate. Send an Email via Power Apps

www.dynamicscompanions.com Dynamics Companions

- 34 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Send an Email via Power Automate

Also, the number of steps in your solution/process will aid you in determining which technology best suits your needs. Power Apps is great for performing simple solutions with minimal steps but as your solutions become more complex and requires multiple steps, Power Automate would be the better solution. Again for this particular example, both technologies can provide the same solution, but there are little nuances that should be considered and thoroughly discussed during the design process to determine your requirements and help you choose the best product for your solution. Let's not forget about discussing Power Apps and Power BI, and when to use one vs. the other. When deciding whether to use the basic charts, graphs, and visuals that come with Power Apps out of the box or

www.dynamicscompanions.com Dynamics Companions

- 35 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

to utilize a more powerful software like Power BI it really depends on your business solution and requirements. For example, if in your solution, you are wanting to add some basic graphs and charts to improve the apps overall look and feel while adding some visual flair for your users, Power Apps has you covered. Here is a quick look at one of the simple, out of the box Power Apps charts.

Simple and minimal design above, nothing crazy but it gets the job done. On the other hand, if your solution requires in-depth analysis of your data, and robust visuals, Power BI will be the best product for your solution. Keep in mind, with Power BI, each app user will need an additional license on top of the Power Apps license. This is a small price to pay though if our solution relies on intuitive dashboards, charts, graphs, and several other features to help you get the most out of your solution.

www.dynamicscompanions.com Dynamics Companions

- 36 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By identifying the needs of related Power Apps technologies in your solution and strategically implementing them, you will be able to provide your users with a better overall experience when using the solution.

Ways to build Power Apps This unit describes how to create an app from a template, a blank canvas, and a data source. In the next unit, you'll be able to get more hands-on with app creation. This learning path is focused on canvas apps, which give you the flexibility to arrange the user experience and interface the way that you want it. You can get started in many different ways; however, for all of the options, you will use the Power Apps Studio features and functionality to build your app.

Create an app from a template A good way to create an app is to start from a template. Templates use sample data to help you determine what's possible. By opening templates in Power Apps Studio, you can learn, hands-on, how an app is built. For example, you can use the Budget Tracker template to create an app that helps you track the budget for projects and events with custom categories, simple data entry, and visuals that highlight expenditures for an effortless inspection.

www.dynamicscompanions.com Dynamics Companions

- 37 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create an app from a data source Another great way to get started is to generate an app from your own data. Simply point Power Apps at the data source of your choice (for example, a list in Microsoft SharePoint or Common Data Service), and watch as Power Apps automatically builds a three-screen app. This three-screen app lets you display, edit, delete, and create records.

A special data source is SharePoint. Modern lists in SharePoint and Power Apps have a tight integration. You can either build an app from within a SharePoint site or you can use Power Apps to customize your modern list forms.

www.dynamicscompanions.com Dynamics Companions

- 38 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The following app was created from a SharePoint list and lets you browse items in the list, view item details, and create and edit items. After Power Apps generates an app, you can customize it to make it look and behave exactly the way you want.

Build from a blank canvas You can also build an app from the ground up and add all the pieces as you go. You can then branch out and use your imagination.

www.dynamicscompanions.com Dynamics Companions

- 39 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Designing a Power Apps app As an App Maker, before you begin building your Power Apps solution, it's recommended to go through a design process. When designing your Power Apps solution, there are several different factors to consider, such as: 

Business requirements

Data Model

User Experience (UX)

User Interface (UI)

Business Logic

Output

By going through a simple design process, you can flush out any minor issues before they become a larger problem once the app has been put into production. It is also important to understand that this design process is for Canvas apps. So how do you go from a simple blank Canvas app, as seen below?

To a fully customized Canvas app solution?

www.dynamicscompanions.com Dynamics Companions

- 40 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Understand the needs of the user One of the most powerful and, at the same time, challenging parts of building a canvas app is that you start with a blank screen. This gives you the ability to build what you want, but to do that you have to know what you want. In many cases, when purchasing software to solve and or streamline business solutions, there are many business processes that don't quite fall within the software's supported guidelines. When you run into this issue, typically, there are several internal discussions and meetings held to determine how those unsupported processes can be updated/altered to meet the software requirements. For most organizations, this isn't ideal because of the cost or time takes to update those business processes. The great news is, by using Power Apps to build your solution, you won't have to worry about unsupported business solutions. Why? With Power Apps, you can build a custom solution tailored to the exact needs of your business requirements. Often when building an app, you are tempted to recreate the piece of paper or legacy software-driven process exactly. This is possible but might not be the ideal solution. By challenging the existing process and asking what it is the business needs to do, not what does the piece of paper or old software allows you to do, it opens the possibility of better, more efficient processes. For example, maybe on the paper process, the user had to type notes about what they see. Would it be better instead to just take a picture? This type of thinking will lead to better apps and better outcomes.

Business Requirements Every app you develop will have a different set of business requirements based on the solution. Taking the time to think about all the requirements is key to rolling out a successful production app. Depending on the solution or company policies, you may have certain security, privacy, or compliance requirements you must follow. For example, let's say you are collecting secure personal information in the app. You will want to ensure this information is securely stored and not visible to everyone.

www.dynamicscompanions.com Dynamics Companions

- 41 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

During this process, you will also want to identify any government regulations or authentication/authorization requirements (if applicable). You don't necessarily have to have all the answers to your questions here; you just want to know all the requirements.

Offline Mode One of the first questions to consider when developing your application is, will the app need to function offline? If so, will the entire app or only part of the app needs to function offline? When will the data be synchronized to my data source? Are there any limitations? This is important to consider during the planning phase because if you were to build your app without this functionality, then decide to add it later, it will be more difficult than just doing it in the first place. Why is this? You will need to make sure you are using collections and additional functions like SaveData and LoadData as you go along to allow your app to function offline. Also, if you are using Forms and trying to implement Offline mode, you will run into issues. There is a thorough discussion that needs to take place around Offline mode, and it's best to have this early in the design process as it will affect the rest of the process.

Data Model In the "Power Apps related technologies" module, you learned about some of the common data sources for building apps, but with all these choices how do you actually decide which data source to use for your solution? Maybe you already have a data source implemented that users work with on a day to day basis, like SharePoint. Could you just use this as your data source to build your app? Do I need to connect to multiple data sources? These are all common questions you should ask yourself and there are number of additional factors to consider, such as: 

Business Requirements – Every data source and it's supported functionality is slightly different. So, depending on your app requirements you need to select the data source that supports your needs or modify your business requirements to comply with the supported functionality for the selected data source.

Licensing/Cost – Certain data sources like the Common Data Service or SQL are considered a "premium data source". A premium data source will require each user who uses the app to have a Power Apps Per App Plan or a Power Apps Per User Plan. For more information about licensing, see Power Apps pricing

User Experience (UX) By designing your Power Apps solution in a Canvas app, you have complete control of the end-user experience. This allows you to fully customize nearly every aspect of your app. However, just because you can doesn't necessarily mean you should. When designing your Power Apps solution your goal should be to keep it simple. When your end users open the application and begin using it, they should have no confusion about what to click on or where to go. If your app requires an extensive training program for users to understand how to use it, you may want to rethink your app. Some of the basic designs elements you will want to consider are things like:

www.dynamicscompanions.com Dynamics Companions

- 42 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Custom Branding (your logo and colors)

Pop-ups

Hide/show buttons based on users' access/permissions

One of the most common User Experience enhancements you can implement in your applications are Pop-ups. By implementing pop-ups, you can provide the users with a simple, but useful visual to confirm what the user clicked on went through or maybe your pop-up acts as a loading screen as the logic on the backend is processed. For example, in the screenshot below when a user clicks on "Submit", we might have a simple pop-up display to let them know their submission was successful. In this example app, the user completes a Survey for the training class they just attended.

Once all of the information has been written to the data source successfully, a pop-up is generated to confirm the submission was successful.

www.dynamicscompanions.com Dynamics Companions

- 43 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Without confirmation, a user may not be sure if their submission was accepted. They may try to click the button again, causing incorrect or inconsistent data being written to the data source. Remember, these are not the only customizations you can make to the app, these are just some of the common ones. Another thing to keep in mind as you add different design features is the more logic you add for the customization of the app the more code your application will need to process. So, for example, if you add several different functions for hiding buttons, or showing popups on a given screen, this could cause your application performance to slow as each piece of code runs. Finally, challenge yourself to do better with your user experience. Maybe today, the user records room temperatures by clicking in a box, changing the device keyboard from letters to numbers, and then typing in “70”. A better option may be to replace with a slider control that defaults to 70 and ranges from 65 to 75. Then, with a swipe of their finger, they can record the temperature. Small changes like this make for happier, more productive app users.

User Interface (UI) To fully visualize the User Interface or UI, you may want to consider creating a mockup of your application. Two common ways to create a mockup of your application are below: 

Use Visio to create a wireframe diagram. A wireframe is a visual representation of an application's user interface. To begin, there are various website and mobile wireframe templates available, or you could start from blank template. The diagrams are a quick way to show app functionality and gain team consensus on the design.

The example below shows a simple Visio wireframe of a Purchase Items screen in an inventory app.

www.dynamicscompanions.com Dynamics Companions

- 44 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use Power Apps to create a mockup of your application. You can add most of the controls, graphics, forms, and other items to your app screens and play with the layout and size for each element as if you were building the app for real. When designing the UI you don't need to add the logic behind the various elements you placed on the screen. The goal here is to focus on what the app could look like and how it could function. This similar to what you can do with a Visio wireframe but one of the biggest pros of going this route is that you will gain more experience working with Power Apps and also learn more about the various UI elements available in the process. All of the experience and knowledge you will gain by creating your app mockup in Power Apps will only payoff later when it's time to start on the production app. Another big upside to using Power Apps for your mockup is that if you show this to your team and they like what you did, you can continue building off this app or create a new app and copy the elements you would like to keep to your other application. By not having to redo the UI or only having to redo parts of it, you could potentially save yourself hours of work.

The example below shows a simple mockup of a New Purchase Order Screen.

www.dynamicscompanions.com Dynamics Companions

- 45 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

It really comes down to your preference and comfort with the software you are using to create the mockup. You should also consider licensing and costs when making this decision. Visio requires additional licensing to get the full functionality required for creating a wireframe diagram. Whereas with Power Apps, it doesn't matter which license you have. As long as you have Power Apps (and sufficient permissions in your environment), you can create apps and mockup apps. As you design the User Interface, a few additional things to think about are Accessibility and Localization. It's important to ensure the app interface follows accessibility guidelines so all your users can interact with your application without any issues. To review these guidelines and additional accessibility properties, see Create accessible canvas apps in Power Apps. Localization can be something you must consider when developing your application as well. Depending on where your app will be used, you may need to use different punctuation. For example, some regions of the world use a . (dot or period) as the decimal separator while others use a , (comma). For more information on building a globally supported application, see Build global support into canvas apps .

Business Logic When using the common data service, you can create business rules and recommendations to apply logic and validations without writing code or creating plug-ins. The great thing about the common data service and business rules is that they are applied at the data level. This means that you can apply rules that are enforced regardless of how the data is accessed. Often when building apps all of the business logic is built into the app. This works great if the data is only accessed via the app. The challenge is often business data is used in many ways and from different tools. This is where Business Rules shine. You can apply logic on the data in the Common Data Service, allowing your rules to be enforced no matter which tool interacts with the data. For example, you have built a capital project expense tracking application using Common Data Service as the data source. In your business process, the duration field is an optional field if your request is less than 10,000 but the duration field is required if the request is more than 10,000. After you set up your entity in

www.dynamicscompanions.com Dynamics Companions

- 46 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Common Data Service, you would then apply a business rule that says if Project Amount is greater than 10,000 then make Project Duration a required field. Now, regardless of how the user interacts with the data, the Business Rule will be enforced, keeping your data integrity.

Output Finally, you will want to discuss your app's data output. This simply means what type of data will your app generate, and once the data is generated what will be done with it? A few questions to ask your app stakeholders: 

How does the data need to be visualized?

What actions will be taken on the data once it is collected?

Are there specific format or file types the data are needed?

The answers to these questions will help determine if additional functionality needs to be added to the app such as a Power BI report, email output, PDF, or CSV. Let’s look at an example. Perhaps your organization has a legacy ERP solution and the orders submitted in your Power App need to be reflected in the ERP application. While one option might be to build a custom connector to that solution, another option may be to export the data to a CSV file using Power Automate and Power Apps together, see screenshot below:

The great thing about generating this CSV file export is that it's not linked to your data, so the changes you make to the file will not alter the app data.

www.dynamicscompanions.com Dynamics Companions

- 47 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For more information. see Planning a Power Apps project.

Exercise - Create your first app in Power Apps In this unit, you'll generate a mobile app where the data source is a Microsoft Excel workbook that's stored in Microsoft OneDrive for Business. This Excel workbook lists a company's inventory of flooring samples with pictures and prices. Keep in mind that you can use data from many other sources, including Microsoft SharePoint, cloud services like Salesforce, and on-premises sources like Microsoft SQL Server.

Note Power Apps requires either an Office 365 license or a free trial. Learn more about your licensing options. Microsoft products include Microsoft Power Apps and Power Automate. Before you begin, watch this video for a brief overview of what to expect when creating your first Power App.

Connect to a data source To connect to a data source, use the following procedure: 1.

Download the Flooring Estimates workbook and save it to OneDrive for Business.

2.

Go to https://make.powerapps.com and sign in with your organizational account.

3.

In the left pane, select Apps.

4.

Select + New app and then Canvas from the drop-down menu.

5.

For the OneDrive for Business data source, select Phone layout.

Generated apps are always based on a single list or table, but you can add more data to the app later. The next three steps explain how to connect to the Excel workbook. 6.

Under OneDrive for Business, select Create.

7.

Under Connections, select OneDrive for Business and browse to the file location. You might need to select New Connection to see the OneDrive for Business connection.

www.dynamicscompanions.com Dynamics Companions

- 48 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

Under Choose an Excel file, select the FlooringEstimates.xlsx file.

9.

Under Choose a table, select the FlooringEstimates table.

10. Select Connect on the bottom right. Power Apps generates the app by inspecting your data and matching it with Power Apps capabilities so that you get a working app as a starting point.

Explore the generated app Your new three-screen app now opens in Power Apps Studio. The following figure shows the main development window for Power Apps Studio, which you'll learn more about in later units.

Select Play in the upper-right corner to practice using the app. Notice that it includes all the data from the table and provides a good default experience. All apps that are generated from data have the same set of screens that you can view from the Screens pane: 

Browse screen - This screen appears by default. In it, you can browse, sort, filter, and refresh the data from the data source. In the browse screen, you can add items to the data source by selecting the plus sign (+).

Details screen - The details screen shows all information about a single item. In this screen, you can open an item to edit or delete it.

Edit/create screen - In this screen, you can edit an existing item or create a new one.

www.dynamicscompanions.com Dynamics Companions

- 49 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To make your app visible on the phone, it needs to be saved. Select File, Save as. Replace the current title "App" with flooring-estimates app, and then select Save. You will see a green check mark when all changes are successfully saved. You can now open the app on your phone.

Install the app on your device To see how the app runs on mobile, install the Power Apps Mobile app on your phone. When building an app, you should test it in the same form factor as your users. 1.

Download Power Apps Mobile from the app store for the platform that you want to use.

2.

Sign in by using your username and password.

3.

On your phone or tablet, run the flooring-estimates app in Power Apps Mobile. If you do not want to install the app, you can run it in a browser.

Check your knowledge 1.

2.

3.

Where do you configure and customize your app? 

In make.powerapps.com

In the Power Apps admin center

In Microsoft Dynamics 365

In Power Apps Studio

Which of these statements about data sources is true? 

In Power Apps, app data comes primarily from your local device.

Power Apps is not able to connect to external data. All data must be stored in the Power Apps app.

Power Apps uses connectors to connect to Data Sources. If the data source supports it, Power Apps can read and write to the data source.

Power Apps automatically creates three screens for you when you build an app from a data source. Which of the following is not one of the screens created? 

Browse Screen

New Screen

Edit Screen

Details Screen

Summary Congratulations on creating your first app with Power Apps!

www.dynamicscompanions.com Dynamics Companions

- 50 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In this module, you discovered what Power Apps can do for your business and the building blocks of creating your first app. You then created an app from data in a Microsoft Excel workbook. Additionally, you learned that: 

To create, share, and administer your apps, you will use make.powerapps.com, the Power Apps Studio, and the Power Apps Admin Center.

The power of Power Apps comes from the ability to connect to related technologies in your business. Examples of these are Common Data Service, Power Automate, Microsoft SharePoint, and other data sources.

You can create an app by using several different methods. Some of these methods include from a template, a data source (like Microsoft SharePoint), or a blank canvas.

See Create your first app if you're interested in more explanation.

www.dynamicscompanions.com Dynamics Companions

- 51 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Customize a canvas app in Power Apps Learn how to customize an app by adding controls, images, and logic.

Learning Objectives In this module, you will: 

Change the layout of a gallery.

Change the data that a control shows.

Change the order in which fields appear.

Change the control with which a user provides information.

Explore controls on each screen of an app.

Format a number as a price.

Color prices based on their values.

Explore formulas in a generated app.

Prerequisites Basic experience with developing canvas apps

Improve apps by making basic customizations in Power Apps In the previous module, you generated the Flooring Estimates app and started to explore its default design. While the default screens make a useful app out of the box, you'll often want to customize a generated app to suit your needs. This unit explains basic changes for each screen in the app. You can do a lot more to customize an app, but the best way to start learning is to take a generated app and make common customizations. This will allow you to become familiar with the controls, layouts, and functions. Before you begin, watch the following video for a brief overview of what to expect when customizing your app.

Browse screen The Flooring Estimates app already shows an image and some text for each product, but the layout could be better. To improve the layout, use the following procedure: 1.

On the Screens pane on the left, select BrowseGallery1.

www.dynamicscompanions.com Dynamics Companions

- 52 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The selection box around the gallery confirms your choice.

2.

On the right pane, open the Data pane by selecting the drop-down menu next to Layout.

3.

Select a different layout, such as the one that shows the image, the title, and the subtitle but not the body.

www.dynamicscompanions.com Dynamics Companions

- 53 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Select the category of the item at the top of the gallery.

5.

Change ThisItem.Category to ThisItem.Name in the formula bar.

6.

Repeat the previous two steps but change the other Label control to show the price of each item.

www.dynamicscompanions.com Dynamics Companions

- 54 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Changing the layout of a gallery and the types of data that it shows is that simple, and you might find that it's fun, too.

Details screen On the details screen, you want to change the order of the fields. The controls on this screen differ from the controls on the browse screen, so the process for changing them is also slightly different. 1.

On the Screens pane on the left, select DetailScreen1 > DetailForm1.

2.

On the right pane, select Edit fields.

www.dynamicscompanions.com Dynamics Companions

- 55 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Drag the Name field to the top of the list of fields and then drag the Image field to the bottom.

Edit/create screen On the screen where your users edit and create entries, you want to make it easier for them to enter information in a text box. 1.

On the Screens pane on the left, select EditScreen1 > EditForm1.

2.

On the right pane, select Edit fields.

3.

Expand Overview. Select the drop-down arrow for the Control type and then select Edit multi‐line text. A multi-line edit control will simplify your user's ability to add more than a few words in this field.

A few basic steps can greatly improve the appearance and experience of using an app, and Power Apps Studio provides many options for customizing those apps.

www.dynamicscompanions.com Dynamics Companions

- 56 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Explore screens and controls in Power Apps This unit examines the screens and other controls that define the behavior of apps that Microsoft Power Apps generates. All the details won't be covered; however, knowing more about how these apps work will help you build your own apps.

Controls in Power Apps A control is a UI element that produces an action or shows information. Many controls in Power Apps are similar to controls that you've used in other apps: labels, text-input boxes, drop-down lists, navigation elements, and so on. In addition to these typical controls, Power Apps has more specialized controls, which you can find on the Insert tab.

A few controls that can add interest and impact to your apps include: 

Galleries - These controls are layout containers that hold a set of controls that show records from a data source.

Forms - These controls show details about your data and let you create and edit records.

Media - These controls let you add background images, include a camera button (so that users can take pictures from the app), a barcode reader for quickly capturing identification information, and more.

Charts - These controls let you add charts so that users can perform instant analysis while they're on the road.

To see what controls are available, select the Insert tab, and then select each option in turn.

www.dynamicscompanions.com Dynamics Companions

- 57 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Explore the browse screen Each screen in the app has multiple controls, but one control takes up most of the screen space. The first screen in the app is the browse screen, which is named BrowseScreen1 by default. Controls in the browse screen that you'll want to become familiar with include: BrowseGallery1 - This control takes up most of the screen and shows data from your data source. NextArrow1 - When this control is selected, it opens the details screen. IconNewItem1 - When this control is selected, it opens the edit/create screen.

  

Explore the details screen The details screen is named DetailScreen1 by default. Some of its controls are as follows: 

DetailForm1 - This control contains other controls and contains a data card for each field of the record that is being displayed.

DataCard1 - This is a card control. Each card represents a single field of the record. In this case, it shows a flooring category from the Flooring Estimates table, as shown in the previous unit.

IconEdit1 - When this control is selected, it opens the edit/create screen so that the user can edit the current item.

www.dynamicscompanions.com Dynamics Companions

- 58 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Explore the edit/create screen The third screen in the app is EditScreen1. Some of its controls include: 

EditForm1 - This control contains other controls and contains a data card for each field of the record that is being edited.

DataCard8 - This is another card control that shows a flooring category from the Flooring Estimates table, as shown in the previous unit.

IconAccept1 - When this control is selected, it saves the user's changes.

www.dynamicscompanions.com Dynamics Companions

- 59 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Get started with functions in Power Apps When using Microsoft Power Apps, you don't have to write complicated application code the way that a traditional developer does. However, you must express logic in an app and control its navigation, filtering, sorting, and other functionalities. This is where formulas come in. If you've used Microsoft Excel functions, you should recognize the approach that Power Apps takes. This unit shows a couple of basic formulas for text formatting and then describes three of the formulas that Power Apps includes when it generates an app. With this information, you'll have a better idea of what formulas can do, and then you can also start to write your own.

Get started with formulas and properties Properties determine the appearance and behavior of controls. Each type of control has a different set of properties. The previous unit explored controls in all three screens of an app that Power Apps generated. In this section, you’ll use the properties of the label control to format the price in the gallery. By default, the price appears as a plain number without a currency symbol. Suppose that you want to add a dollar sign and change the text color based on the item's cost (for example, red if it's more than $5 but green otherwise). The following graphic shows the expected result.

www.dynamicscompanions.com Dynamics Companions

- 60 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, Power Apps pulls in a price value for each item. This value is set as the Text property of the label that shows the price.

Note Be sure to complete the steps in unit 1 of this module as the description field is changed to price as reflected in the next steps. 1.

In BrowseScreen1, select the price of the first item.

2.

In the drop-down list of properties, select Text.

3.

To add the currency symbol for US dollars, set the Text property to this formula: Text(ThisItem.Price, "$ ##.00")

The Text function specifies how to format the number. The formula is like an Excel function, but Power Apps formulas refer to controls and other app elements instead of cells in a workbook. If you select a control and then open the property drop-down list, a list of properties that are relevant to the control appears. For example, the following is a partial list of the properties for a Label control. Some properties are relevant across a wide range of controls, but others are relevant only for a specific control.

www.dynamicscompanions.com Dynamics Companions

- 61 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To conditionally format the price's color, set the Color property of the price's Label control to this formula: If(ThisItem.Price > 5, Color.Red, Color.Green)

Formulas included in the generated app Power Apps uses a couple of formulas in every app that it generates. Both examples are from the browse screen and work with the OnSelect property. This property defines what happens when a user selects a control. 

The first formula is associated with the IconNewItem1 control

. Select this control to open the

edit/create screen where you can create an item. To view the formula, select the select it in the formula bar. The formula is as follows:

and then

NewForm(EditForm1);Navigate(EditScreen1, ScreenTransition.None) The formula instantiates an edit page on the edit/create screen so that users can create an item. A value of ScreenTransition.None means that there's no transition, such as a fade, between screens. 

The second formula is associated with the IconSortUpDown1 control the items in the gallery. The formula is as follows:

. Select this control to sort

UpdateContext({SortDescending1: !SortDescending1}) The formula uses UpdateContext to update a variable called SortDescending1. The exclamation "!" symbol in the formula is a shortcut for the Not function. The value of the variable switches back and forth as you select the control. This variable tells the gallery on this screen how to sort the items. The app contains many other formulas, so take some time to select controls and determine what formulas are set for various properties.

www.dynamicscompanions.com Dynamics Companions

- 62 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For more information about these and other functions, refer to formula reference for Power Apps page. For additional information on customizing a canvas app, refer to the Use the UI and controls in a canvas app in Power Apps learning path and the Use basic formulas to make a better canvas app in Power Apps learning path.

Check your knowledge 1.

2.

3.

How do you specify what happens when a user selects a button or control? 

Use the click wizard

Set the OnSelect property to the formula that you want to run.

Set the OnClick property to the formula that you want to run.

Power Apps cannot run formulas based on user selections.

When you create an app from data, which of the following best describes your ability to customize? 

The app is read only.

You can modify the formulas but not the screens or layouts.

You can modify all aspects of the app including screens, layouts, and formulas.

You can modify the layout of the app, but you cannot customize the functionality.

What is the purpose of the Gallery control? 

To edit a single record

To display a single record

To display and select all records from the data source

To show images that might or might not be related to your app

Manage apps in Power Apps Manage app versions, app sharing, and environments in Power Apps.

Learning Objectives In this module, you will: 

Learn how to view and restore app versions.

Explore how to share an app, including permissions and notifications.

Learn about what environments are, how to create them, and how to manage security.

Find more information about Power Apps.

www.dynamicscompanions.com Dynamics Companions

- 63 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Manage app versions in Power Apps Microsoft Power Apps can help if you saved changes to an app that you shouldn't have or if something else goes wrong. For apps that you save in the cloud, Power Apps keeps a history of the changes that you make. You can view each version that you've saved and restore your app to a previous version if necessary. If you shared the app, the people whom you shared it with will also receive the restored version if you republish the app.

View versions of your app 1.

On make.powerapps.com, select Apps on the left pane.

2.

In the list of apps, select the ellipsis (...) next to the app name and then select Details.

3.

Select the Versions tab. The tab shows all versions of the app that you saved as you developed it.

Restore a previous version 1.

Select the ellipsis (...) next to the desired version and then select Restore.

2.

Select Restore again to confirm the action. A new version is added to your list.

www.dynamicscompanions.com Dynamics Companions

- 64 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you restore a version of an app, the newly restored version gets a new, incremented version number and appears at the top of the list. A new version never overwrites a previous version.

Note After restoring a previous version, the restored version needs to be published before users will see the new version. If for some reason you are not able to restore a previous version, you can try the following: 

Make sure the App is not open in Power Apps Studio. If the app is open, you will not be able to restore the version.

Verify the version you would like to restore is not older than six months. At the current time, only app versions less than six months old can be restored.

Exercise - Share apps in Power Apps You can share an app with specific users, groups, or your whole organization. When you share an app with other people, they can run it in a browser, from the Microsoft Dynamics 365 home page, or in Microsoft Power Apps Mobile for Microsoft Windows, Apple iOS, or Google Android. Even better, you can give someone permission to update the app.

Prepare to share an app To complete the following steps, open the app that you want to share in Edit mode. 1.

In Power Apps Studio, select the File menu and then select Settings. Give the app a meaningful name and a description so that your team knows what your app does and can easily find it in the apps list.

2.

On the File menu, select Save as and then select The cloud. You must save an app to the cloud before you can share it.

3.

Select Save and then select Share.

4.

On the Share tab, specify the users or groups with whom you want to share the app. To add everyone in your organization, type Everyone and select Everyone in Company Name. If you need to share with a large group of users, a best practice is to share through an Azure Active Directory Security Group. By default, the user receives the User permission. If you want the user to also be able to edit the app, then select the co-owner check box. The following is a description of both permissions: 

Co‐owner - Users can use, edit, and share the app, but can't delete or change the owner.

User - Users can view and use the app, but they can't change it.

Security-group considerations 

If you share an app with a security group, existing members of that group, and anyone who joins it, will have the permission that you specify for that group. Anyone who leaves

www.dynamicscompanions.com Dynamics Companions

- 65 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

the group loses that permission unless they belong to a different group that has access or if you give them permission as an individual. 

5.

Every member of a security group has the same permission for an app as the overall group does. However, you can specify greater permissions for one or more members of that group to allow them greater access. For example, you can give Security Group A permission to run an app, but you can also give User B, who belongs to that group, Coowner permission. Every member of the security group can run the app, but only User B can edit it. If you give Security Group A Co-owner permission and User B permission to run the app, that user can still edit the app.

To notify users by email, leave the Send an email invitation check box selected. If you elect to notify the users by email, everyone you shared the app with will receive an email message that has a link to the app. People whom you granted Co‐owner permission for the app will also receive a link to Edit App in Power Apps Studio.

6.

Select Share. If you make and save changes to a shared app, the people whom you shared it with will see your changes as soon as you publish them. This can be useful if you improve the app, but it can also negatively affect users if you remove or significantly change features. Remember to create a notification plan for alerting your users of major updates.

Permissions and licensing Basic information about permissions and licensing that you should be aware of are: 

Users and contributors need permissions to any data connections and gateways that a shared app uses. Some permissions come implicitly with the app, but you must explicitly grant others. If you create an app based on Common Data Service, you must also ensure that the users with whom you share the app have the appropriate permissions for the entity or entities on which the app relies. Specifically, those users must belong to a security role that can perform tasks such as creating, reading, writing, and deleting relevant records. In many cases, you'll want to create one or more custom security roles with the exact permissions that users need to run the app. You can then assign a role to each user as appropriate.

People who have Co‐owner permission also need a Power Apps Per app plan or Power Apps Per user plan to work directly with entities in Common Data Service.

Sharing an app is simple, and it's a great way to make an app that you find useful available to people across your organization.

Exercise - Understand environments in Power Apps An environment is a container for apps and other resources, such as data connections and flows from Power Automate. It's a way to group items based on business requirements.

www.dynamicscompanions.com Dynamics Companions

- 66 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you've followed along with this module, you've already been working in make.powerapps.com; therefore, you've been working in a specific environment the whole time. In the upper-right corner of the home page, you can view your current environment.

If you're new to Microsoft Power Apps, you might have only the default environment at this point. If a drop-down menu is visible next to the environment name, this indicates that other environments are available.

Note If you want to work with Power Apps environments, you need a Power Apps Per app plan or Power Apps Per user plan. Additionally, if you want to work with Dynamics 365 restricted entities, you must have a Power Apps for Dynamics 365 license. Learn more about licenses for Dynamics 365.

Reasons to use environments Reasons to create environments beyond the default one include: 

Separate app development by department - In a large organization, each department can work in a different environment. That way, department employees see only apps and company data that are appropriate to their needs.

Support application lifecycle management (ALM) - Separate environments let you separate apps that are in development stages from those that have already been shared. Alternatively, you might want to use a trial environment so that you can receive feedback from employees before publishing the final app. For some organizations, showing apps before they're completely developed and published can present security concerns.

Manage data access - Each environment can have its own source of business data, called a database for Common Data Service. Other data connections are specific to an environment and can't be shared across environments.

www.dynamicscompanions.com Dynamics Companions

- 67 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note Keep in mind that environments are relevant only to app creators and Power Apps admins. When you share an app with users, those users simply run the app, providing they have the correct permissions. In other words, they don't have to worry about what environment the app came from.

Create an environment Only an admin can create environments. If you aren't an admin, this information can still be helpful when you talk to your admin about setting up environments. 1.

On the make.powerapps.com home page, select the gear icon near the upper-right corner and then select Admin center. You can also go directly to https://admin.powerplatform.microsoft.com/

2.

In the Power Apps admin center, select + New.

3.

In the New environment dialog box, enter a name for the environment and then select a region and an environment type.

4.

To the left of Create a database for this environment, select the toggle to Yes.

5.

Select Next.

6.

Select the currency and language for the data that is stored in the database. You cannot change the currency or language after the database is created.

7.

Select Save. It might take several minutes to create the database on Common Data Service. After the database is created, the new environment appears in the list of environments on the Environments page.

You now have a new environment to work in. If you go back to make.powerapps.com, you will see it in the environments list.

Manage access to an environment By default, you can access an environment in one of two ways: 

System admin - A system admin has full permissions to create and manage environments.

Environment maker - An environment maker can view all apps in that environment, create apps, and work with Common Data Service (other permissions apply).

Environment admins can create other security roles as needed. They can also add and assign users to these roles. 1.

Start by going to https://admin.powerplatform.microsoft.com

2.

On the left pane, Environments should be selected by default, if it is not, select Environments.

3.

Select the test environment that you just created, and then select the Security tab.

www.dynamicscompanions.com Dynamics Companions

- 68 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Add the user by entering the email address of the user in your organization and then selecting Add user. Wait a few minutes for the user to be added.

5.

To verify if the user is now available, select list of users.

6.

Hover over the result that you want, select its check box, and then select MANAGE ROLES on the top bar.

7.

In the Manage User Roles box, select the role(s) for the user. In this example, assign the user to the Environment Maker role.

8.

Select OK.

Power Apps review Congratulations on building your first app! To review, so far you've learned how to: 

Build an app based on data in a Microsoft Excel workbook that's stored in Microsoft OneDrive for Business. You learned that Microsoft Power Apps can connect almost as easily to data sources that you're already using in the cloud (such as Microsoft SharePoint, Microsoft Azure, Google Drive, and Salesforce) or on-premises.

Customize an app to make it your own by modifying the appearance and behavior and adding Excel-like functions.

Share apps instantly with your co-workers across the web, tablets, and mobile devices.

Set up environments so that you can separate a working environment from the one that you want to share with your team.

The best way to advance your skills is to run the samples, practice using the templates, and generate more apps from your own data.

Next steps One goal of this module is to provide a clearer picture of what Power Apps is and how you can start creating apps, regardless of your experience level. The following are useful resources and downloads to help enhance your further learning.

Power Apps resources 

Explore further with the Power Apps documentation.

Stay current with the Power Apps blog.

Join the Power Apps community.

Expand your expertise with additional Power Apps learning paths: o

Use basic formulas to make better Power Apps canvas apps

www.dynamicscompanions.com Dynamics Companions

- 69 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

o

Work with data in a Power Apps canvas app

o

Use the UI and controls in a canvas app in Power Apps

o

Use advanced data options and connectors in Power Apps

o

Master advanced techniques for Power Apps canvas apps

Improve Power Apps by submitting an idea.

Power Apps downloads 

Power Apps Mobile for Windows

Power Apps Mobile for iOS

Power Apps Mobile for Android

Check your knowledge 1.

2.

3.

When you share an app, what two permission levels are available? 

User and Co-Owner

Editor and Co-Owner

User and Editor

Editor and Owner

When you publish a new version of your app, what do users need to do? 

To see the new version, everyone with whom the app was shared must reinstall it.

Everyone with whom you shared the app will automatically see the new version.

All previous versions are deleted.

Delete the old version app, then install the new version of the app.

Which of these is not a reason to use environments? 

Have separate environments for each department in your organization

Support application lifecycle management (ALM) of your apps

Share apps outside of your organization

Manage access to data

Summary In this module, you learned about app versions, sharing apps, and managing environments. Additionally, you learned how to: 

View and restore app versions

www.dynamicscompanions.com Dynamics Companions

- 70 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Share an app and manage its permissions

Create environments and how to manage security access

www.dynamicscompanions.com Dynamics Companions

- 71 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

www.dynamicscompanions.com Dynamics Companions

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

- 72 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T02: Create a model-driven application in Power Apps This learning path introduces you to creating a model-driven app in Power Apps that uses Common Data Service. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Familiarity with Power Apps, Excel, and Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 73 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to model-driven apps and Common Data Service Do you want to quickly build apps with little to no code? This module will focus on the building blocks of Common Data Service and model-driven apps. These key components will help you build quick business apps in your organization.

Introduction to Common Data Service Whether you are building a canvas app or a model-driven app, Common Data Service is the ideal data source because it is the foundational data source of Power Platform. As a result, you will experience the most functionality, the deepest integrations, the most features, and the best ease-of-use of any available data sources. From simple web-based data design to robust, role-based security, Common Data Service is a straightforward platform that you can use to begin designing your data structures and helping to keep them safe. Then, with your data in place, you have rich integration capabilities from Power Apps and the rest of Power Platform. Additionally, by applying business rules, you can trust that your business integrity will be maintained no matter what tool you use to interact with the data. Another benefit of using Common Data Service is that all of your data is stored in entities. An entity is a set of records that is used to store data, similar to how a table stores data within a database. Common Data Service includes a base set of standard entities that cover typical scenarios, but you can also create custom entities that are specific to your organization. Standard and custom entities within Common Data Service help provide a secure and cloud-based storage option for your data. Entities allow you to create a business-focused definition of your organization's data for use within apps. Some benefits of using Common Data Service and its entities include: 

Simple to manage - Both the metadata and data are stored in the cloud so that you're confident about the details of how they're stored.

Helps secure your data - Data is stored so that users can see it only if you grant them access. Role-based security allows you to control access to entities for different users within your organization.

Access your Dynamics 365 data - If you use Dynamics 365, data from your Dynamics 365 application is also stored within Common Data Service, allowing you to quickly build apps that use your Dynamics 365 data and extend your apps by using Power Apps.

Rich metadata - Data types and relationships are used directly within Power Apps.

Logic and validation - Define calculated fields, business rules, workflows, and business process flows to ensure data quality and drive business processes.

www.dynamicscompanions.com Dynamics Companions

- 74 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Productivity tools - Entities are available within the add-ins for Microsoft Excel to increase productivity and ensure data accessibility.

Now that you have a better understanding of how Common Data Service works and are aware of some of the benefits, you can now explore how these benefits can be applied in a model-driven app.

Introduction to model-driven apps Unlike canvas apps, where you build out an app screen-by-screen by adding logic and code as you go, model-driven apps can be created with a few simple steps. Model-driven apps use a component-focused approach to develop the app. When developing canvas apps, you have complete control over the appearance and behavior of your app, whereas with model-driven apps, the layout is mainly based on the components that you add to the app. With model-driven apps, a number of different components and component properties are available for you to add and modify when designing an app. Model-driven app design provides the following benefits: 

Rich component-focused, no-code design environments

An ability to create complex responsive apps with a similar UI across a variety of devices from desktop to mobile

Robust design capability

Apps can be distributed as a solution

Common Data Service and model-driven apps working together When creating a model-driven app, you can use entities from Common Data Service as your building blocks. Model-driven apps start with your data model, building up from the shape of your core business data and processes in Common Data Service to model forms, views, and other components. It's important to ensure that your business data and business processes at the data level are structured properly before you compose your app. Model-driven apps will automatically generate a UI that is responsive across devices; however, this outcome relies heavily on how your data is modeled in Common Data Service.

Approach to model-driven app making When creating model-driven apps, it's important to focus on three areas: 

Modeling business data

Defining business processes

Composing the app.

www.dynamicscompanions.com Dynamics Companions

- 75 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

More information on creating model-driven apps is included in the Create relationships, business rules, calculations, and rollups in Common Data Service Learning Path and in Overview of building modeldriven apps.

Exercise - Explore sample template apps On Power Apps , you can use a sample app to explore design possibilities. You'll also discover concepts that you can apply as you develop your own apps. Every sample app uses fictitious data to showcase a real-world scenario. For more details, be sure to check out the documentation that's specific to each sample app.

Get sample apps Before you can experiment with or edit the model-driven sample apps, you must set them up in a Common Data Service database. First, create a trial environment and a database, and then select the Include sample apps and data check box.

Important By selecting the Include sample apps and data check box, you will install all available sample apps in your database. Sample apps are for educational and demonstration purposes. We don't recommend installing them in production databases.

Run a sample app To run a sample app, follow these steps: 1.

Sign in to Power Apps to see a list of available sample apps. For this example, select Fundraiser. www.dynamicscompanions.com Dynamics Companions

- 76 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

At the top of the page, select Show Visual Filter to show graphs and charts where you can see how donations to fundraisers are performing. In the next steps, you'll create a new fundraiser and submit a donation to that fundraiser.

3.

On the left pane, under Fundraiser, select Fundraisers.

4.

Select + New to add a new fundraiser.

5.

Under the General tab, enter the following information: Name - My Fundraiser

6.

In the upper-right corner, select the drop-down arrow next to Total Donations.

7.

From the drop-down menu, enter the following information: Fundraiser Goal - 500

8.

On your keyboard, press Enter.

9.

Select Save & Close.

10. On the left pane, under Fundraiser, select Donations. 11. Select the drop-down arrow to the right of Other Activities. 12. From the drop-down menu, select Donation. 13. Enter the following information: 

Subject - My First Donation

Donation Amount - 100

From - Nancy Anderson (sample)

Regarding - My fundraiser

14. Select Save & Close. 15. On the left, select Dashboards. 16. Select Show Visual Filter.

www.dynamicscompanions.com Dynamics Companions

- 77 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

17. Notice Total Donations vs Goal by Fundraiser shows your donation. You have successfully run a sample model-driven app, added a new fundraiser, and added a donation to the fundraiser. While this is a quick look at an app and the related pieces, there is much more to learn about creating an app.

Check your knowledge 1.

2.

3.

In Common Data Service, where is your data being stored? 

Entities

Forms

SharePoint

Access

What is the benefit of building a model-driven app? 

Logic-focused design, no code required, and different UIs across multiple devices

Complex responsiveness with different UIs across multiple devices

Apps can be distributed by using complex coding and different UIs across mobile devices

Component-focused design, no code required, complex responsiveness with similar UI across multiple devices, and apps can be distributed as solutions

Which of the following sample apps is not created in your environment when you toggle “Include sample apps and data” to true? 

Asset Checkout

Innovation Challenge

Customer Survey

Fundraiser

Summary The goal of this module was to help you become familiar with the basics of Common Data Service and creating model-driven apps. Common Data Service lets you store and manage data that is used by business applications. Entities within Common Data Service are used to store data. To review, this module explained the following concepts: 

Common Data Service data is stored in entities.

You can use as many default entities as possible to quickly build apps.

You can create new entities.

Data is stored in a way that users can see it only if you grant them access.

www.dynamicscompanions.com Dynamics Companions

- 78 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Sample apps and templates are available to help you learn and create your own apps.

www.dynamicscompanions.com Dynamics Companions

- 79 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with Common Data Service Common Data Service lets you securely store and manage data that's used by business applications. Standard and custom entities within Common Data Service provide a secure and cloud-based storage option for your data.

Learning Objectives In this module, you will: 

Create entities with Common Data Service

Import data into a Common Data Service database

Prerequisites 

A Microsoft Power Apps account. If you don't already have a Power Apps account, select the Get started free link on powerapps.com.

Introducing Common Data Service Common Data Service lets you securely store and manage data used by business applications.

Entities Data within Common Data Service is stored within a set of records called entities. An entity is a set of records used to store data, similar to how a table stores data within a database. Common Data Service includes a base set of standard entities that support common business scenarios that connect to Dynamics 365 application data. You can also create custom entities specific to your organization and populate them with data that you import from lists in SharePoint, from Excel, or from PowerQuery. App makers can then use Power Apps to build rich applications using this data.

www.dynamicscompanions.com Dynamics Companions

- 80 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Dynamics 365 applications, such as Dynamics 365 Sales, Service, and Marketing, use Common Data Service to store and secure data used by the applications. This means you can build apps using Power Apps and Common Data Service directly against your core business data already used within Dynamics 365 without the need for manual integration.

Note Dynamics 365 Finance, Dynamic 365 Supply Chain Management, and Dynamics 365 Retail currently require the configuration of the Data Integrator to make your business data available within Common Data Service.

For most organizations, it's a good idea to use the standard entities and attributes as they were intended. But to meet your business needs, you can extend the functionality of standard entities by creating one or more custom entities to store information that's unique to your organization.

www.dynamicscompanions.com Dynamics Companions

- 81 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Logic and validation Entities within Common Data Service can leverage rich server-side logic and validation to ensure data quality. You can also reduce repetitive code in each app that creates and uses data within an entity. 

Business rules: Business rules validate data across multiple fields and entities, and provide warning and error messages, regardless of the app that's used to create the data.

Business process flows: Business process flows guide users to ensure they enter data consistently and follow the same steps every time. Business process flows are currently supported only for model-driven apps.

Workflows: Workflows automate business processes without requiring user interaction.

Business logic with code: Business logic supports advanced developer scenarios that extend the application directly through code.

Security Data in Common Data Service is securely stored so that users can see it only if you grant them access. Role-based security, based on the Dynamics 365 system allows you to control access to entities for different users within your organization.

Learn about entities Common Data Service is designed to let you quickly and easily create a data model for your application, based on the entities and the entity metadata that you include in your app. Entities describe the kinds of data that is stored in the Common Data Service database. Each entity corresponds to a database table and each field (also known as an attribute) within an entity represents a column in that table. In Common Data Service, metadata (data about data), is a collection of entities. Entity metadata is what controls the kinds of records you can create and what kind of actions can be performed on them. When you use customization tools to create or edit entities, fields, and entity relationships, you are editing this metadata. The apps that your customers use to interact with the data in your environment depend on the entity metadata, and they adapt as you customize the metadata.

When to use standard entities, and when to create new entities Common Data Service comes with a number of standard entities that support core business application capabilities. Each entity also contains a number of metadata fields that represent common data that the system needs to store for that entity. We recommend that you become very familiar with the catalog of

www.dynamicscompanions.com Dynamics Companions

- 82 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

standard entities, and use them where possible, because any applications written with standard entities will work as you expect in your environment without additional effort. For minor changes, you might not have to create a custom entity: 

To change the display name of a field, you can edit the entity. You don't have to create a new entity.

You can't delete standard entities, but you can hide them. To hide a standard entity, change the security role privileges for your organization to remove the Read privilege for that entity. This will remove the entity from most parts of the application.

If standard entities don't work for your business needs, and if they can't be edited to meet those needs, consider creating a new entity, field, or entity relationship. If a standard entity almost meets your business needs, you can use it as the basis for a new entity.

Entity relationships Entity relationships define the different ways entity records can be associated with records from other entities or the same entity. Entity relationships are metadata. They let queries retrieve related data very efficiently. Use entity relationships to define the formal relationships that define the entity or that most records can use. When you look at the solution explorer you might think that there are three types of entity relationships but actually there are only two, see below: 

One‐to‐many relationships: In a one-to-many (1:N) entity relationship, many related entity records are associated with a single primary entity record in a parent/child relationship.

Many‐to‐many relationships: In a many-to-many (N:N) entity relationship, many entity records are associated with many other entity records. Records that are related through N:N entity relationships are considered peers.

The N:1 (many-to-one) relationship type exists in the user interface because the designer shows you a view grouped by entities. 1:N relationships actually exist between entities and refer to each entity as either a Primary/Current Entity or Related Entity. The related entity, sometimes called the child entity, has a lookup field that allows storing a reference to a record from the primary entity, sometimes called the parent entity. A N:1 relationship is just a 1:N relationship viewed from the related entity. Besides defining how records can be related to other records, 1:N entity relationships also provide data to address the following questions: 

When I delete a record, should any records that are related to that record also be deleted?

When I assign a record to a new owner, do I also have to assign all related records to the new owner?

How can I streamline the data entry process when I create a new related record in the context of an existing record?

www.dynamicscompanions.com Dynamics Companions

- 83 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

How should people who view a record be able to view the related records?

Entity types Before creating or editing entities in Common Data Service, you should understand the different types of entities that you can create. After a custom entity is created, the entity type can't be changed.

Types of entity owners When you create a custom entity, the options for ownership are User or team owned, or Organizationowned. After an entity is created, you can’t change the ownership. 

User or team owned: Actions that can be performed on these records can be controlled at the user level.

Organization‐owned: Access to the data is controlled at the organization level.

Activity entities An activity is an action that a calendar entry can be made for. Activities have these characteristics: 

They have time dimensions (start time, stop time, due date, and duration) that help define when the action occurred or will occur.

They have data (like a subject and description) that helps define the action that the activity represents.

They can be opened, canceled, or completed. Several sub-status values will be associated with the Completed status of an activity to clarify how the activity was completed.

Activity entities can be owned only by a user or team. They can't be owned by an organization. The following default activity entities are available: 

Appointment: A commitment representing a time interval that has start/end times and duration.

Email: An activity that's delivered by using email protocols.

Fax: An activity that tracks the call outcome and number of pages for a fax. The activity can optionally store an electronic copy of the document.

Letter: An activity that tracks the delivery of a letter. The activity can store an electronic copy of the letter.

Phone Call: An activity that tracks a telephone call.

Recurring Appointment: The master appointment of a recurring appointment series.

Task: A generic activity representing work that must be done.

Custom activity entities You can create new custom activity entities. The metadata values of activity entities differ from the metadata values of other entities. For example, the Primary field is set to Subject.

www.dynamicscompanions.com Dynamics Companions

- 84 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Business Rules Business rules provide a simple interface to implement and maintain fast-changing and commonly used rules. The business rules defined for an entity apply to both canvas apps and model-driven apps if the entity is used in the app. By combining conditions and actions, you can do any of the following with business rules: 

Set field values

Clear field values

Set field requirement levels

Show or hide fields

Enable or disable fields

Validate data and show error messages

Create business recommendations based on business intelligence.

Differences between canvas and model-driven apps Model-driven apps can use all actions available on business rules, however not all business rule actions are available for canvas apps at this time. The following actions are not available on Canvas apps: 

Show or hide fields

Enable or disable fields

Create business recommendations based on business intelligence.

Create a Common Data Service entity In this unit, you'll create an entity and then customize key components, like fields, relationships, views, and forms. You'll learn how to: 

Create a custom entity.

Add custom fields to your entity.

Add an entity relationship.

Customize a view.

Customize a form.

The tutorial follows the Contoso company, which is a pet grooming business that grooms dogs and cats. Contoso needs an app for client and pet tracking that can be used by employees on a variety of devices.

www.dynamicscompanions.com Dynamics Companions

- 85 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create a custom entity Sign in to Power Apps and follow these steps to create a new custom entity. 1.

In the left navigation pane, expand Data, select Entities, and then select + New entity.

2.

Under New Entity, enter the following: Display name: Pet

3.

In the Primary Field section, enter the following: Display name: Pet Name

4.

At the bottom, click Create.

You will notice in our example, the new entity and primary field begins with cree0_. Additional fields created for this entity will also begin with cree0, this is specific to our demo environment. When testing in your own environment this may look different.

Add and customize fields 1.

In the list of entities, select the Pet entity that you created in the previous section.

2.

On the Fields tab, on the entity designer toolbar, select Add field.

3.

In the Field properties pane, enter the following values: Display name: Species Data type: Option Set Option set: New option set Searchable: Yes

4.

Create the option set: Replace New option with Dog. Select Add new item. Replace New option with Cat. Select Save.

www.dynamicscompanions.com Dynamics Companions

- 86 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Make sure Searchable is selected, and then select Done.

6.

On the entity designer toolbar, select Add field.

7.

In the Field properties pane, enter the following values, and then select Done: Display name: Breed Data type: Text Searchable: Yes

8.

On the entity designer toolbar, select Add field.

9.

In the Field properties pane, enter the following values, and then select Done: Display name: Appointment date Data type: Date Only Searchable: Yes

10. Select Save Entity.

Add a relationship 1.

On the Relationships tab, on the entity designer toolbar, select Add relationship, and then select Many-to-one.

2.

In the right pane, in the Related list, select Account.

3.

Select Done.

4.

Select Save Entity. Notice that when you add a many-to-one relationship, an Account field of the Lookup data type is automatically added to your list of fields on the Fields tab.

www.dynamicscompanions.com Dynamics Companions

- 87 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Customize a view 1.

On the Views tab, right-click Active Pets view and select Open Link in New Tab. If you don't see the Active Pets view, select Remove filter.

2.

In the view designer, select Add Columns, select the following columns, and then select OK: Account Appointment date Breed Species

3.

Select the Created On column, select Remove.

4.

To arrange the columns, select the column to move, and then select Move Left or Move Right until your view looks like this. You could also simply drag and drop the columns to arrange the order as well.

5.

On the view designer toolbar, select Save.

6.

Select Publish.

Customize the main form 1.

In the left navigation pane, expand Data, select Entities, and then select Pet.

www.dynamicscompanions.com Dynamics Companions

- 88 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

On the Forms tab, select Information next to the Main form type to open the form editor.

3.

In the form editor, drag the Species, Breed, Appointment date, and Account fields from the Field Explorer pane to the General section of the form canvas, so that the form looks like this.

4.

Select Save.

5.

Select Publish.

6.

Click the back arrow in your browser to close the form designer.

Exercise - Create an entity and import data into your Common Data Service database You can import data into your Common Data Service database in bulk from Microsoft Excel or CSV files. Every entity has required fields that must exist in your input file. We recommend that you create a template. A template will save you time and effort. First, export data from the entity. You'll use the same file (updated with your data) to import data into the entity.

www.dynamicscompanions.com Dynamics Companions

- 89 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create a file template You can do a one-time data export from a standard entity or a custom entity, and you can export data from more than one entity at a time. If you export data from more than one entity, each entity is exported into its own Microsoft CSV file. In this example, you'll see how to export the Pet entity but remember you could select several entities to export if you would like. 1.

On powerapps.com, in the left navigation pane, expand Data, select Entities, and then select Export data.

2.

Select the Pet entity, and then select Export data.

3.

After the export is finished, select Download exported data, and save the file.

Copy data into your template When you add data to a template file, you must make sure the data is unique. You can use either primary keys or alternate keys. 1.

Open the CSV file that you created in the previous section.

2.

Add at least one new row of data but you only need to add information to the following fields below. Appointment date Breed Pet Name Species

3.

Save the file.

Import the file 1.

In the left navigation pane, expand Data, and then select Entities.

2.

Select the Pet entity, select the drop down arrow next to Get Data, and then select Get data from Excel.

3.

Click Upload and select the file that you just updated and saved from the previous section.

4.

After the file is uploaded, click Map fields.

www.dynamicscompanions.com Dynamics Companions

- 90 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Set the following Pet fields Source values to None. Import Sequence Number Owning Business Unit Pet Status Reason Value Status Value Time Zone Rule Version Number UTC Conversion Time Zone Code Version Number

6.

In the upper right, click Save changes.

You will notice under Mapping status, it states "Mapping warnings exist". The reason for this mapping status is because we set some of the fields to None or Not. This is fine because we didn't want to include those fields so this warning can be ignored. 7.

In the upper right, click Import.

www.dynamicscompanions.com Dynamics Companions

- 91 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After the data has been successfully imported, you'll see the total number of inserts and updates. Now let's go take a quick look at the imported data 8.

On the left, select Entities.

9.

Select the Pet entity.

10. On the entity designer toolbar, select Data. Notice that the Account field is empty, this is because when you updated the Excel export file and update fields you were not instructed to update this field. The reason you were not instructed to update the Account field is because you cannot set a lookup value when importing data from Excel, this must be done from Power Apps.

Exercise - Create a custom entity and import data Scenario The current sales process for your company is manual and updates are only provided each Friday. To simplify this process, minimize the opportunity for mistakes, and improve visibility, you have decided you want to create a new app to track sales leads and automatically calculate the forecasted revenue. You want to use Common Data Service to store the list of potential customers.

Use Common Data Service to store data In this exercise, you will use Common Data Service to store the list of potential customers for your app.

Creating a Custom Entity 1.

Go to the Power Apps home page and sign in to Power Apps.

2.

On the menu, expand Data and Select Entities.

3.

Select New Entity.

4.

Enter the following information: Display name: Prospects

5.

In the Primary Field section, enter the following information: Display name: Prospect Name

6.

Select Create.

7.

Select Add field.

8.

Enter the following information: Display name: Stage Data Type: Option Set

www.dynamicscompanions.com Dynamics Companions

- 92 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For Option Set, Select the dropdown and select New option set. Enter the following information and Select Save. Display name: Prospect Stage Name: prospectstage Add the following items/options: Lead, Opportunity, Won, Lost

10. Once the option set has saved, continue entering the following information for the new field: Default value: Lead Check Required 11. Select Done. 12. Select Add field. 13. Enter the following information and then Select Done. Display name: Contract Amount Data Type: Currency 14. Select Add field. 15. Enter the following information and then Select Done. Display name: Probability Data Type: Whole Number 16. Select Save Entity, in the bottom-right corner. 17. Select Add field. 18. Enter the following information and then Select Done. Display name: Forecasted Revenue Data Type: Currency Select +Add for Calculated or Rollup Select +Calculation 19. On the popup, Select Save. 20. A new browser window will open. Select Add action. 21. Enter the following formula, but do not copy and paste, type it in as your field names will not be exactly the same as the example below. The crXXX_ is likely to be different than below. cree0_contractamount * (cree0_probability / 100) 22. Select the checkmark to save your changes. You may need to scroll right to see it. 23. Select SAVE AND CLOSE. 24. Select Done.

Add a Business Rule 1.

On the entity designer toolbar, Select Business rules.

www.dynamicscompanions.com Dynamics Companions

- 93 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

Select Add business rule, a new browser tab will open.

3.

Select on the Condition New Condition from the design pane.

4.

In the right-hand pane, for Field choose Contract Amount.

5.

For the Operator, choose contains data.

6.

Select Apply.

7.

In the right-hand pane, Select Components.

8.

Select and hold Set Business Required and drag to the plus symbol to the right of the purple checkbox in the design pane.

9.

In the right-hand pane, for Field choose Probability.

10. For the Status, choose Business Required. 11. Select Apply. 12. In the top left of the screen, Select the dropdown next to Prospects New business rule and set the Business rule name to Make Probability Required. 13. Select Save in top-right corner of screen. 14. Select Activate to activate the rule. 15. Select Activate to confirm activation. 16. Close the browser tab. 17. Now back on the Entity management screen, Select Done.

Importing Data from an Excel file You will use the Excel spreadsheet named Prospects for this exercise. Open the link, and select the Download button and save it locally. 1.

Open the file. Notice the “Stage” column is empty, you will need to look these up and enter them manually.

2.

Go to the Power Apps home page and sign in to Power Apps.

3.

Go back to your Excel file and in the Stage column enter the values as below: Contoso Flooring: Won. Fabrikam Inc: Won. Adventure Works: Lead. Adatum: Lead. VanArsdel: Lost. Relecloud: Opportunity.

4.

Save and close the Excel file.

5.

Continue with the Prospects entity.

6.

Select the drop-down arrow to the right of Get data and select Get data from Excel.

www.dynamicscompanions.com Dynamics Companions

- 94 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

7.

Select Upload, locate the Prospects Excel file, and Select Open.

8.

Select Map Fields. Map the following Prospect fields to the associated Source values: Contract Amount: ContractAmount Prospect Name: Name Stage Value: Stage Probability: Probability

9.

Select Save Changes at the top.

10. Select Import. 11. Select Entities. 12. Select the Prospects entity and Select Data. 13. Ensure that the data has successfully imported.

Check your knowledge 1.

2.

3.

When creating an Entity, what are the two types of relationships you can create? 

One-to-many and One-to-one

One-to-many and Many-to-many

Many-to-one and Many-to-many

One-to-one and Many-to-many

How many apps can use the same Entity? 

1

20

100

Unlimited

When deploying role-based security in the Common Data Service, which of the following products allows you to control access to entities for different users? 

SQL Server

Azure portal

Dynamics 365

SharePoint

Summary Congratulations on using Common Data Service, and creating your first entity!

www.dynamicscompanions.com Dynamics Companions

- 95 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Common Data Service lets you securely store and manage data that's used by business applications. Standard and custom entities within Common Data Service provide a secure and cloud-based storage option for your data. Let's review what you've learned: 

Common Data Service stores data in entities.

If you can, it's preferable to use as many default entities as possible, so that your system is easy to maintain.

Creating new entities is easy.

The best way to get data into an entity is to export a template, add data, and upload it.

www.dynamicscompanions.com Dynamics Companions

- 96 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with model-driven apps in Power Apps Model-driven app design is an approach that focuses on quickly adding components to your apps. These components include dashboards, forms, views, and charts. With little or no code, you can make apps that are simple or complex.

Learning Objectives In this module, you will: 

Learn about model-driven app design

Create a model-driven app

Prerequisites A Microsoft Power Apps account. If you don't already have a Power Apps account, select the Get started free link on the Power Apps home page.

Introducing model-driven apps Model-driven app design is an approach that focuses on adding dashboards, forms, views, and charts to your apps. With little or no code, you can build apps that are simple or very complex. In canvas apps, the app maker has total control over the app layout. In model-driven apps, on the other hand, much of the layout is determined by the components you add. The emphasis is more on quickly viewing your business data and making decisions instead of on intricate app design.

www.dynamicscompanions.com Dynamics Companions

- 97 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The approach to making model-driven apps Model-driven apps have three design phases: 4.

Model your business data

5.

Define your business processes

6.

Build the app

Model your business data Model-driven design uses metadata-driven architecture so that designers can customize apps without writing code. To model business data, you determine what data the app will need and how that data will relate to other data. Metadata means data about data and it defines the structure of the data stored in Common Data Service.

Define your business processes Defining and enforcing consistent business processes is a key aspect of model-driven app design. Consistent processes help ensure that your app users can focus on their work and not worry about having to remember to perform a set of manual steps. Processes can be simple or complex, and they often change over time.

Build the app After modeling data and defining processes, you build your app by selecting and setting up the components you need in the App Designer.

www.dynamicscompanions.com Dynamics Companions

- 98 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Building blocks of model-driven apps A model-driven app consists of several components that you select by using the App Designer. The components and component properties become the metadata. Let's look more closely at these components.

Data The data components determine what data the app will be based upon. Component Description

Designer

Entity

Entities are items with properties that you track. Examples include contacts and accounts. Many standard entities are available. You can customize a non-system standard entity (or production entity). You can also create a custom entity from scratch.

Entity designer

Field

Fields are properties that are associated with an entity and help define that entity. Entity designer A field is defined by a data type, which determines the type of data that can be entered or selected. Examples of data types include text, number, date and time, currency, and lookup (which creates a relationship with another entity). Fields are typically used with forms, views, and searches.

Relationship Relationships define how entities can be related to each other. There are 1:N (one- Entity to-many), N:1 (many-to-one), and N:N (many-to-many) relationships. For example, designer adding a lookup field to an entity creates a new 1:N relationship between the two entities and lets you add that lookup field to a form.

www.dynamicscompanions.com Dynamics Companions

- 99 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Component Description Option set field

Designer

Entity This type of field shows a control that lets the user select among predefined options. Each option has a number value and a label. Option set fields can require designer either a single value or multiple values.

User interface The user interface components determine how users will interact with the app. Component Description

Designer

App

Apps determine the app fundamentals, like components, properties, the client type, and the URL.

App designer

Site map

A site map specifies the navigation for your app.

Site map designer

Form

Form Forms include a set of data entry fields for a given entity. This set of data entry fields matches the items that your organization tracks for the entity. One example designer is a set of data entry fields where users enter relevant information to track a customer's previous orders together with specific requested reorder dates.

View

Views define how a list of records for a specific entity appears in your app. A view defines the columns shown, the width of each column, the sort behavior, and the default filters.

www.dynamicscompanions.com Dynamics Companions

- 100 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved

View designer


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Logic The logic components determine what business processes, rules, and automation the app will have. Microsoft Power Apps makers use a designer that's specific to the type of process or rule. Type of Description logic

Designer

Business Business process flows walk users through a standard business process. Use a process business process flow if you want everyone to handle customer service requests the same way. Or you can use a business process flow to require staff to gain flow approval for an invoice before submitting an order.

Business process flow designer

Workflow Workflows automate business processes without a user interface. Designers use workflows to initiate automation that doesn't require any user interaction.

Workflow designer

Actions

Process designer

Actions are a type of process that lets you manually invoke actions, including custom actions, directly from a workflow.

Business Business rules apply rules or recommendation logic to a form to set field rule requirements, hide fields, validate data, and more. App designers use a simple interface to implement and maintain fast-changing and commonly used rules.

Business rule designer

Flows

Power Automate

Power Automate is a cloud-based service that lets you create automated workflows between apps and services to get notifications, sync files, collect data, and more.

Visualization The visualization components determine what type of data and reporting the app will show. Component

Description

Designer

Chart

Charts are individual graphical visualizations that can appear in a view or a form or that can be added to a dashboard.

Chart designer

Dashboard

Dashboards show one or more graphical visualizations that Dashboard designer provide an overview of actionable business data.

Embedded Microsoft Power BI

Power BI adds embedded Power BI tiles and dashboards to A combination of chart designer, dashboard your app. Power BI is a cloud-based service that provides designer, and Power BI business intelligence (BI) insight.

www.dynamicscompanions.com Dynamics Companions

- 101 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Advanced model-driven apps Solution Explorer is used to make advanced model-driven apps. By using the navigation pane on the left side of the tool, you can navigate a hierarchy that consists of all app components. To access the classic Solution Explorer, you must first select a Solution then select Switch to classic.

www.dynamicscompanions.com Dynamics Companions

- 102 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Design model-driven apps As an App Maker, before you begin building your Power Apps solution, it’s recommended to go through a design process. When designing your Power Apps solution, there are several different factors to consider: 

Business requirements

Data Model

Business Logic

Output

By going through a simple design process, you can flush out any minor issues before they become a larger problem once the app is in production. Here is a quick look at the App Designer for an example Model-driven app called “Fundraiser.”

www.dynamicscompanions.com Dynamics Companions

- 103 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When the app is put into Play Mode, it looks completely different.

Understand the needs of the user With Model-driven apps, the name says it all. Your primary design goal is to get your Common Data Service data model in order. With that in place, you can connect Power Apps, and a Model-driven app will be created for you from that model. Model-driven apps are created using the App Designer. You will choose the entities, dashboards, Business Process flows, forms, and other components that you want to make available in your app, and then the

www.dynamicscompanions.com Dynamics Companions

- 104 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

app will be created for you. This means you will need to spend more time understanding what your user needs than how it is going to look.

Business Requirements The first step in the process is to understand your business requirements. Work with the app stakeholders to consider your security, accessibility, data, and design needs. For security, the Common Data Service has a robust security model. You will want to consider how securing your app’s data affects your app and what security model best supports your business needs. There are lots of options available, including hierarchy security, row-level security, to name a few. You will need to confirm your data is secured to meet your needs, and then your app will honor that security. For more information, see Security in Common Data Service. During this process, you will also want to identify any government regulations or authentication/authorization requirements (if applicable). You may want to implement multi-factor authentication but will need to think about how this will affect users connecting to your application. You don’t necessarily have to have all the answers to your questions here; you just want to flush out all of the requirements. Finally, does your app need to be available when the user is disconnected from the internet? This is called Offline Mode and is supported by the Common Data Service and Model-driven apps when using iOS or Android clients. It does require additional design considerations. For more information, see Set up mobile offline synchronization.

Data Model As you begin the data modeling process, there are a couple of important questions to ask yourself: 

What type of data will your solution be storing and or collecting?

How will this data relate or coincide with the other data you are working with?

These questions are important when designing a model-driven application because of how model-driven applications function. Remember, model-driven applications use a metadata-driven architecture. This means a large portion of the model-driven app is based on how your data is modeled, and there is no need to write custom code to alter the app design. To expand on this a little further, when thinking about Metadata this simply means “data about data” and this data defines the structure stored in the system. You can view the app metadata by reviewing the Entity in the Common Data Service.

www.dynamicscompanions.com Dynamics Companions

- 105 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can also view the app metadata by putting the app in Play mode.

In the example above, for the Fundraiser Entity, there are several pieces of metadata being collected, such as: 

Name

Fundraiser Goal

Owner

Total Donations

Created On

Each solution you develop and deploy will have its own set of metadata to collect. This basic understanding of metadata is important as you continue the design process and modeling your app data. As you think about your data model also think about field types. When adding fields to your entity in the Common Data Service, the field type you choose will determine how users enter and view that in your Model-driven app. Option sets show as dropdowns, currency shows with currency symbols, while decimal numbers don’t. These little changes in the entity can have a profound effect on how your user experiences your app.

Note If a field type needs to be changed to a different field type, (i.e. text field to an option set), then you will need to delete that field and recreate with the correct field type. This will cause you to lose any data associated with that field.

www.dynamicscompanions.com Dynamics Companions

- 106 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

User Interface (UI) and User Experience (UX) When building a Model-driven app, most of the UI and UX are predetermined for you. You define the data model to build from, and then Power Apps determines the controls used in the app. You can influence these controls by determining what entity assets you include. You define in the App Designer What Forms, Views, Charts, and Dashboards are used in the app. You also control the navigation options via the Site Map. As you are planning your app, determine which components are needed in the app design, and create them before building your app. To continue building off of the example we’ve been using throughout this module, below is a simple Model-driven Form, which captures various pieces of information for creating a New Fundraiser. Here is an example of what the New Fundraiser form looks like when editing from the App Designer.

www.dynamicscompanions.com Dynamics Companions

- 107 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Business Logic When incorporating business logic in your app, there are two primary options available. You can set Business Rules on your Common Data Service entities or you can build Business Process Flows. With Business Rules, you will define behaviors at the data layer. This is great for changing when a field is required, setting a default value, or even showing or hiding a field based on a criteria. An example could be an entity for tracking expenses. You could have a field for type of travel and then build a business rule that says if they choose automobile then the mileage field is required, else it is optional. This gives you great power to make sure you maintain data consistency in all scenarios. Business Process Flows are used to guide users through using your app. These workflows can provide visuals on next steps based on the status of the data and facilitate other actions that you want to occur as the user uses the app. Business Process Flows let you bring automation to your app and make it more of a guided experience than just a place to enter data.

Output A common output need for apps is to visualize the data. For this requirement, you can implement Dashboards with custom filters and visual graphics to tie all of this data together right in your app. When creating your Dashboards, make sure it’s simple for your users to consume without overwhelming them with all the data. Provide high-level snapshots of your data and allow them to use filters to dive deeper into the data if needed.

www.dynamicscompanions.com Dynamics Companions

- 108 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Additional third-party solutions and app accelerators It is also important to know about the different App accelerators and third-party solutions available to you. Depending on the industry you are in, Health, Financial, Banking, Education, Non- Profit, Automotive, or Media, Microsoft has released a number of accelerators or foundational components to assist you with quickly standing up your solution. For more information, see Industry accelerators overview. For more information. see Planning a Power Apps project.

Exercise - Create a model-driven app In this unit, you'll create a model-driven app by using one of the standard entities that's available in your Microsoft Power Apps environment.

Create a model-driven app 1.

Sign in to Power Apps by using your organizational account.

2.

Select the environment you want, or go to the Power Apps admin center to create a new one.

3.

On the Home page, select the Model-driven app from blank.

4.

Click Create.

5.

On the Create a New App page, enter a name and description for the app.

6.

Select Done. Your new app appears in the App Designer, and you can now add components to it.

Add components to your app You add components to your app by using the App Designer. 1.

Select the Open the Site Map Designer pencil icon to open the site map designer.

2.

In the site map designer, select New Subarea, and then, in the right pane on the Properties tab, select the following properties:

www.dynamicscompanions.com Dynamics Companions

- 109 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Type: Entity Entity: Account

3.

Select Save And Close.

4.

In the App Designer, select Forms, and then, in the right pane under Main Forms, select the Account form.

5.

In the App Designer, select Views, then select the following properties: Active Accounts All Accounts My Active Accounts

6.

In the App Designer, select Charts, then select the Accounts by Industry chart.

7.

On the App Designer toolbar, select Save.

www.dynamicscompanions.com Dynamics Companions

- 110 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Publish your app On the App Designer toolbar, select Publish. After you publish the app, it's ready for you to run or share with others. Above My Active Accounts, select Show Chart. If the sample data for your accounts does not have an Industry populated, go into a few accounts and add an Industry. Once you have updated a few accounts with an industry the chart will update as well.

Exercise - Control security when sharing model-driven apps Microsoft Power Apps uses role-based security for sharing. A security role includes privileges that define a set of actions that can be performed in the app. All app users must be assigned to one or more predefined or custom security roles. Roles can be assigned to individual users or to teams. When a user or a team is assigned to a role, that user or all members of that team are granted the set of privileges associated with the role. In this unit, you'll learn how to share a model-driven app so that others can use it. Specifically, you'll learn how to: 

Create a custom security role.

Assign users to the custom security role.

Assign the security role to an app.

To share an app, you must have the Environment Admin or System Admin role.

Scenario This unit uses the example of a company named Contoso, which has a pet grooming business that services dogs and cats. An app that has a custom entity for tracking the pet grooming business has already been created and published. The app must be shared so that the pet grooming staff can use it. To share the app, an admin or app maker assigns one or more security roles to users and to the app.

www.dynamicscompanions.com Dynamics Companions

- 111 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create or set up a security role The Power Apps environment includes predefined security roles. These roles reflect common user tasks, and the access levels that are defined follow the security best practice of providing access to the minimum amount of business data that's required to use the app. Remember that the Contoso pet grooming app is based on a custom entity. Because the entity is custom, privileges must be explicitly specified before users can work in it. To do this, you can use either of the following approaches: 

Expand an existing predefined security role so that it includes privileges on records that are based on the custom entity.

Create a custom security role to manage privileges for users of the app.

Because the environment that will maintain the pet grooming records is also used for other apps that the Contoso company runs, a custom security role that's specific to the pet grooming app will be created. Additionally, two different sets of access privileges are required: 

Pet grooming technicians just need to read, update, and attach other records. Therefore, their security role will have read, write, and append privileges.

Pet grooming schedulers need all the privileges that pet grooming technicians have. In addition, they must be able to create, append to, delete, and share records. Therefore, their security role will have create, read, write, append, delete, assign, append to, and share privileges.

To learn more about access and the scope of the different privileges, see Security roles.

Create a custom security role 1.

Sign in to Power Apps by using your organizational account. If you don't already have an account, select Get started free.

Note To complete this exercise, you will first need to create an app as described in the previous unit of this module and create the Pet entity as described in unit Create a Common Data Service entity of Get started with Common Data Service module. 2.

For your new app, select the ... to the right of the name, and then click Share.

3.

In the Share dialog box, select your app at the top and then select the drop-down next to the environment on the right. Select Manage security role.

4.

On the All Roles page, click New.

5.

In the Role Name box, enter Pet Grooming Technicians.

6.

In the Security Role designer, on the Custom Entities tab, find the Pet entity.

7.

On the Pet row, click Read, Write, and Append four times, to set the scope for each to organization

is selected:

www.dynamicscompanions.com Dynamics Companions

- 112 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

8.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The pet grooming app also has a relationship with the account entity. On the Core Records tab, on the Account row select the Read privilege four times until it is set to organization scope

9.

.

Click Save and Close.

10. In the Security Role designer, select New and then in the Role Name box, enter Pet Grooming Schedulers. 11. On the Custom Entities tab, find the Pet entity. 12. On the Pet row, click each of the following privileges four times, until the organization scope and Share.

is selected: Create, Read, Write, Delete, Append, Append To, Assign,

13. The pet grooming app also has a relationship with the account entity, and schedulers must be able to create and change account records. Therefore, on the Core Records tab, on the Account row, select each of the following privileges four times, until the organization scope and Share.

is selected: Create, Read, Write, Delete, Append, Append To, Assign,

14. Select Save and Close.

Assign security roles to users Security roles control a user's access to data through a set of access levels and permissions. The combination of access levels and permissions that's included in a specific security role sets limits on the user's view of data and interactions with that data.

Assign a security role to the pet grooming technicians 1.

Select the model-driven app you created in the previous unit and click Share.

2.

Select the app at the top and then choose the Pet Grooming Technicians role.

3.

In the list below the app, select a few of your users to be pet groomers.

4.

Select Manage Roles.

www.dynamicscompanions.com Dynamics Companions

- 113 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Manage User Roles dialog box, select the Pet Grooming Technicians security role you created earlier, and then select OK.

Assign a security role to the pet grooming schedulers 1.

In the Share this app dialog box, under Assign users to a security role, select Security Users.

2.

In the list that appears, select a few users to be pet grooming schedulers.

3.

Select Manage Roles.

4.

In the Manage User Roles dialog box, select the Pet Grooming Schedulers security role you created earlier, and then select OK.

Add security roles to the app Next, one or more security roles must be assigned to the app. The apps that users can use depends on the security roles they're assigned to. 1.

In the Share this app dialog box, under Add the security role to your app, select My Apps.

2.

On the tile for your Pet Grooming app, select the More options button (...), and then select Manage Roles.

www.dynamicscompanions.com Dynamics Companions

- 114 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

In the Roles section, you can choose whether to give app access to all security roles or just selected roles. Select the Pet Grooming Schedulers and Pet Grooming Technicians roles you created earlier.

4.

Select Save.

Share the link to your app 1.

In the Share this app dialog box, under Share the link to your app directly with users, copy the URL that's shown.

2.

Select Close.

3.

Paste the URL in a location where your users can access it. For example, you can post the URL on a Microsoft SharePoint site or send it in an email. You can also find the app URL on the Properties tab in the App Designer.

www.dynamicscompanions.com Dynamics Companions

- 115 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

About predefined security roles The following predefined roles are available with a PowerApps environment. Unless otherwise noted, all the privileges have global scope. Security role Privileges

Description

Environment None Maker

Users who have this role can create new resources that are associated with an environment, including apps, connections, custom application programming interfaces (APIs), gateways, and flows that use Microsoft Flow. But these users can't access the data in an environment. To learn more about environments, see Announcing Power Apps environments.

System Create, Read, Administrator Write, Delete, Customize

This role has full permission to customize or administer the environment, including creating, changing, and assigning security roles. User who have this role can view all data in the environment. To learn more, see Privileges required for customization.

System Customizer

Create (self), Read This role has full permission to customize the environment. But users (self), Write (self), who have this role can view records only for environment entities that they create. To learn more, see Privileges required for customization. Delete (self), Customizations

Read, Create (self), Users who have this role can run an app in the environment and Common Data Service write (self), delete perform common tasks for the records they own. (self) User

www.dynamicscompanions.com Dynamics Companions

- 116 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Security role Privileges

Description

Delegate

This role lets code run as or impersonate another user. This role is typically used with another security role to provide access to records. To learn more, see Impersonate another user.

Act on behalf of another user

Incorporate business process flows You can help ensure that people enter data consistently and follow the same steps every time they work with a customer by creating a business process flow. For example, you might want to create a business process flow to have everyone handle customer service requests the same way, or to require that people get approval for an invoice before submitting an order. Business process flows use the same underlying technology as other processes, but the capabilities that they provide are very different from other features that use processes. To learn how to create or edit a business process flow, see Create a business process flow

Use business process flows Why should you use business process flows? Business process flows provide a guide for people to get work done. They provide a streamlined user experience that leads people through the processes their organization has defined for interactions that need to be advanced to a conclusion of some kind. This user experience can be tailored so that people with different security roles can have an experience that best suits the work they do. You should use business process flows to define a set of steps for people to follow to take them to a desired outcome. These steps provide a visual indicator that tells people where they are in the business process. Business process flows reduce the need for training because new users don’t have to focus on which entity they should be using. They can let the process guide them. You can configure business process flows to support common sales methodologies that can help your sales groups achieve better results. For service groups, business process flows can help new staff get up to speed more quickly and avoid mistakes that could result in unsatisfied customers.

System business process flows The following business process flows can be found in Power Automate. To understand how business process flows work, review these system business process flows: 

Lead to Opportunity Sales Process

Opportunity Sales Process

www.dynamicscompanions.com Dynamics Companions

- 117 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Phone to Case Process

Multiple entities in business process flows You can use a business process flow for a single entity or to span multiple entities. For example, you may have a process that begins with an opportunity, then continues to a quote, an order, and then an invoice, before finally returning to close the opportunity. You can design business process flows that tie together the records for up to five different entities into a single process so that people using the app can focus on the flow of their process rather than on which entity they are working in. This way, they can easily navigate between related entity records.

Multiple business process flows are available per entity Not every user in an organization may follow the same process and different conditions may require that a different process be applied. You can have up to 10 active business process flows per entity to provide appropriate processes for different situations.

Exercise - Create a model-driven app Scenario In the exercise in the previous module of this learning path, you created the Prospects entity in Common Data Service and imported the existing leads, now in this exercise you will use this data to create a modeldriven app. This app will allow the sales team to enter and edit leads on the go and keep the managers up to date on the current leads and forecasted revenue.

Create the model-driven app for the prospects entity 1.

Sign in to Power Apps by using your organizational account.

2.

Select the environment you want, or go to the Power Apps admin center to create a new one.

3.

On the Home page, select the Model-driven app from blank.

4.

Select Create.

5.

Enter the following and Select done. Name: Prospect Entry

6.

Select the Open the Site Map Designer pencil icon to open the site map designer.

7.

Select New Subarea.

8.

On the right, for Title enter Prospects Area.

9.

Click the drop down for select a type, then choose Entity.

10. For Entity, select Prospects.

www.dynamicscompanions.com Dynamics Companions

- 118 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

11. Select New Group. 12. On the right, for Title enter Prospects Group. 13. Click Save. 14. Click Publish.

Creating a chart 1.

Select Charts.

2.

Select Create New.

3.

For the Chart Name, enter Forecasted Revenue by Stage.

4.

For Legend Entries (Series), check the box, and select the Forecasted Revenue field.

5.

For Horizontal (Category) Axis Labels, select the Stage Field.

6.

Select Save and Close.

7.

Back on the App Designer, select the checkbox next to Forecasted Revenue by Stage.

8.

Select Save.

9.

Select Publish.

Creating the form You can attempt to create a new form in the App Designer but if you run into any issues, you can follow the steps below to create a new main form. 1.

Go to the Power Apps Home Page, and on the left, Select Data.

2.

Select Entities.

3.

Locate and select the Prospects entity.

4.

Select Forms.

5.

Select the drop-down arrow next to Add form, and then select Main Form from the drop down. A new window will open.

6.

Drag the Stage field from the right and place it below the Owner field in the center.

7.

Drag the Contract Amount field and place it below the Stage field.

8.

Drag the Probability field and place it below the Contract Amount field.

9.

Drag the Forecasted Revenue field and place it below the Probability field.

10. Now select Forecasted Revenue and then select Change Properties on the ribbon. 11. Select the checkbox for Read-only field. 12. Select Save. 13. Select Publish. 14. Close the window.

www.dynamicscompanions.com Dynamics Companions

- 119 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

15. Select Done.

Check your knowledge 1.

2.

3.

When building model-driven apps, which designer is used to define the navigation of your app? 

App designer

View designer

Site map designer

Dashboard designer

If you wanted to create a standard procedure or process for handling service requests what type of logic would be best to implement? 

Business process flow

Business rule

Workflow

Flow

When sharing a model-driven app, which of the following statements is true? 

Users just need to be added to a predefined security role.

Users just need to be added to a custom security role.

Model-driven apps do not need to be shared, they are accessible to anyone with the app link.

Users need to be added to a predefined or custom security role and then you also need to assign one or more security roles to the app.

Summary Congratulations on creating your first model-driven app! Defining and enforcing consistent business processes is a key aspect of model-driven app design. Consistent processes help ensure that your app users can focus on their work and not have to remember to perform a set of manual steps. Let's review what you've learned: 

Model-driven app design is an approach that focuses on quickly adding components to apps. These components include dashboards, forms, views, and charts.

Little or no code is required to build model-driven apps.

Model-driven design uses metadata-driven architecture so that designers can customize their apps.

www.dynamicscompanions.com Dynamics Companions

- 120 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The best way to get started building model-driven apps is to use sample apps and data; then customize the apps.

www.dynamicscompanions.com Dynamics Companions

- 121 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T03: Automate a business process using Power Automate This learning path introduces you to Power Automate, teaches you how to build workflows, and how to administer flows. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Familiarity with SharePoint, OneDrive, and Excel.

www.dynamicscompanions.com Dynamics Companions

- 122 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with Power Automate Power Automate is an online workflow service that automates actions across the most common apps and services.

Learning Objectives In this module, you will: 

Create a flow that automatically saves email attachments

Learn how to create a button flow to send yourself a reminder

Prerequisites 

Signed up for Power Automate

Have a OneDrive for Business account

Introducing Power Automate Welcome to Power Automate! In this module, you'll learn how to build flows. If you're a beginner with Power Automate, this module will get you going. If you already have some experience, this module will tie concepts together and fill in the gaps.

Learning objectives In this module, you will: 

Learn what Power Automate is and how it can be used

Create a flow that automatically saves email attachments

Learn how to create a button flow to send yourself a reminder

Create a flow that sends you notifications

Create a flow that copies files

Create a flow that runs on a schedule

Create a flow that posts tweets

Create a flow that your team can use

www.dynamicscompanions.com Dynamics Companions

- 123 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

What is Power Automate? Power Automate is an online workflow service that automates actions across the most common apps and services. For example, you can create a flow that adds a lead to Microsoft Dynamics 365 and a record in MailChimp whenever someone with more than 100 followers tweets about your company. When you sign up, you can connect to more than 220 services, and can manage data either in the cloud or in on-premises sources like SharePoint and Microsoft SQL Server. The list of applications you can use with Power Automate grows constantly.

www.dynamicscompanions.com Dynamics Companions

- 124 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

What can you do with Power Automate? You can use Power Automate to automate workflows between your favorite applications and services, sync files, get notifications, collect data, and much more. For example, you can automate these tasks: 

Instantly respond to high-priority notifications or emails.

Capture, track, and follow up with new sales leads.

Copy all email attachments to your OneDrive for Business account.

Collect data about your business, and share that information with your team.

Automate approval workflows.

A common use of Power Automate is to receive notifications. For example, you can instantly receive an email or a push notification on your phone whenever a sales lead is added to Dynamics 365 or Salesforce.

You can also use Power Automate to copy files. For example, you can ensure that any file that's added to Dropbox is automatically copied to SharePoint, where your team can find it.

You can monitor what people are saying about your business by creating a flow that runs whenever someone sends a tweet with a certain hashtag. The flow can add details about each tweet to a Facebook post, a SQL Server database, a SharePoint list, or even a Microsoft Excel file that's hosted on OneDrive for Business–-whichever service works for you.

www.dynamicscompanions.com Dynamics Companions

- 125 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can create actions to connect the data you collect to Microsoft Power BI, spot trends in that data, and ask questions about it. The following example shows a flow that saves tweets with the hashtag #MicrosoftFlow to an Excel file.

Also, you can automate approval loops for things like vacation requests on a SharePoint list.

www.dynamicscompanions.com Dynamics Companions

- 126 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For more ideas, browse our list of templates. Templates help you build flows by making a few configuration changes. For example, you can use templates to easily build flows to send yourself weather forecasts, reminders at regular intervals, or phone notifications whenever your manager sends you mail.

www.dynamicscompanions.com Dynamics Companions

- 127 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Have an idea for a flow that you don't see in the list? Create your own from scratch and, if you want, share it with the community!

Where can I create and administer a flow? You can create a flow and perform administrative tasks in a browser or, if you download the Power Automate mobile app, on your phone. Here are some of the tasks you can perform with the mobile app: 

Turn flows on or off from wherever you are.

See when a flow has failed.

Review detailed run history reports.

View and filter runs by notification type.

A brief tour of Power Automate Let's jump into Power Automate, and we'll show you around. We have tons of information for you to learn about how to use Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 128 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you sign in to Power Automate, you'll find these menus: 

Action items, where you can manage approvals and business process flows.

My flows, where your flows reside.

Create, where you start a new flow.

Templates, where you can take a look at some of the most popular templates. These should give you some great ideas for flows you want to try.

Connectors, where you can connect from one service to another.

Data, where you can access entities, connections, custom connectors and gateways.

Solutions, where you can manage your solutions.

Learn, where you can find information that will help you quickly ramp up on Power Automate.

For now, let's focus on the ? menu next to your login, which has these options: 

Documentation is where our advanced topics reside. If you want to really understand a feature or function, you can do a deep dive here to figure things out.

Learn has learning paths to guide you through using Power Automate, all the way from beginning techniques to advanced scenarios.

Support is a great landing place to find help.

Roadmap is where you can get a glimpse into what will be made in the next product update.

Community is a place to plug into and find out how other people use Power Automate.

Give Feedback taps into a community of power users, and is where you can send comments and questions to developers and other experienced users.

Blog keeps you up to date about the most recent developments and releases in the Power Automate ecosystem.

Pricing can help you choose the right plan for you or your business.

www.dynamicscompanions.com Dynamics Companions

- 129 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

What's next? Now that you have a taste of what Power Automate is and what it can do, let's take a look at what makes a flow.

Exercise - Create your first flow In this unit, you'll see more of Power Automate as you build your first flow. It can be time consuming to search for attachments through email. The flow that you'll build saves time by storing all your email attachments in a folder on your Microsoft OneDrive for Business account.

Choose a template Our many templates will get your flows flowing quickly. They'll help you connect the services you're already using in more meaningful ways. Sign in to Power Automate, and select the Templates menu. You can sign up for Power Automate with a Microsoft account. Select the Save Office 365 email attachments to OneDrive for Business template.

www.dynamicscompanions.com Dynamics Companions

- 130 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create the flow Save Office 365 email attachments to OneDrive for Business is one of our one-click templates, in which you can answer questions that are necessary to build the flow, so that you don't have to write a line of code. On the template graphic, there's a description of what the template does and what it needs to succeed. You'll be asked to provide credentials for the Microsoft Office 365 Outlook and Microsoft OneDrive for Business services. If you regularly use both services, you'll already be signed in. 1.

Click on the template and select Create Flow.

2.

On the next page, Power Automate creates the flow for you. 

It will connect to your work email to get any attachments.

It will then create a folder on your OneDrive for Business account to automatically put every attachment that's sent to your work email address in that folder.

3.

Select the My flows menu.

4.

Select the flow you just created and click Edit to see how it works.

www.dynamicscompanions.com Dynamics Companions

- 131 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Send an email with an attachment, or have another user send an email with an attachment. You then should see a green check mark, which indicates that the flow succeeded.

6.

Select Edit to see how the flow is defined.

7.

Select Succeeded to see the run history and the results.

In this case, all parts of the flow were successful.

www.dynamicscompanions.com Dynamics Companions

- 132 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Important concepts in Power Automate Keep these concepts in mind when building flows: 

Every flow has two main parts: a trigger, and one or more actions.

You can think of the trigger as the starting action for the flow. The trigger can be something like a new email arriving in your inbox or a new item being added to a SharePoint list.

Actions are what you want to happen when a trigger is invoked. For example, the new email trigger will start the action of creating a new file on OneDrive for Business. Other examples of actions include sending an email, posting a tweet, and starting an approval.

These concepts will come into play later, when you build your own flows from scratch. In the next unit, we'll look at the Power Automate mobile app and its capabilities.

Exercise - Learn to use the Power Automate mobile app Of course we have an app -- the Power Automate mobile app! From this app, you can access these features: 

Activity Feed

Browsing

Buttons

Managing Flows

First, you'll need to download and install the Power Automate mobile app from your app store. After it's installed, start it and sign in. When you first start the app, you'll see the Activity Feed. The Activity Feed is the place to see what's happening with your flows. It won't be the full experience you'd expect from your PC, but it will show you useful details.

www.dynamicscompanions.com Dynamics Companions

- 133 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For example, you'll see a flow's last activity. You can see whether the flow succeeded or failed. If it failed, you'll see which step it failed on.

How button flows are started Buttons are flows that are started through a manual action. For example, you can create a button to send a Working from home today email to your manager. If you live far from your workplace, you can then use this button on days when the traffic is a mess! 

Select Buttons to use some of these flows.

Select Browse to check out templates for more button flows that you can add to your collection.

To show you how you can use buttons, we'll use the Send myself a reminder in 10 minutes button template. 1.

Select Browse.

2.

Select the Send myself a reminder in 10 minutes button flow.

3.

Select Use this template.

www.dynamicscompanions.com Dynamics Companions

- 134 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Create, and then select Done.

The flow is saved.

www.dynamicscompanions.com Dynamics Companions

- 135 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Select Buttons to see the new flow.

6.

Select the flow. In 10 minutes, you'll get a reminder.

It's simple to add more buttons to your collection.

Modify or delete a flow If you want to change or delete one of your flows, it's easy.

www.dynamicscompanions.com Dynamics Companions

- 136 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

1.

Select Flows.

2.

Select one of your flows.

3.

Select one of the options:

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To enable or disable the flow, toggle the Enable flow option on or off.

To change the flow, select Edit flow.

To get an idea of the successful and unsuccessful runs of the flow, select Run history to view the history of the flow.

To delete a flow, select Delete flow.

The next unit shows how to receive text and email notifications from flows.

Exercise - Receive text and email notifications from flows A common use of Power Automate is to get a notification when something happens. Notifications can be emails, text messages, or push notifications on your phone. In this unit, you'll create a flow that generates a push notification whenever you receive an email from your manager.

Get the mobile app It's easy to create a flow that sends push notifications to your mobile device. Keep in mind that you'll need the Power Automate mobile app to receive push notifications. The mobile app is available for Google Android, Apple iOS, and Windows Phone. www.dynamicscompanions.com Dynamics Companions

- 137 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you're using an unsupported mobile device, consider using Short Message Service (SMS) messages (that is, text messages) instead of push notifications to receive notifications.

Create a flow that sends push notifications Power Automate comes with many templates to get you started with creating flows. Let's create a flow by using a template. 1.

Sign in to Power Automate by using your organizational account.

2.

Select My flows.

3.

Select New, and then select Create from template.

4.

Scroll down, and select Get a push notification when you receive an email from your boss. You can also quickly find this template by entering notifications in the search field.

5.

Select Create Flow. The flow will automatically render and open to the details and run history page.

6.

To edit the flow and see the steps which will be used to get your email profile and your boss's, select Edit.

7.

Scroll to the bottom of the flow steps to find the Check if it is my manager section. Expand it by clicking on the title of that section. Your email address and your manager's are automatically filled in from the profile information that you entered. If your organization does not store your manager information in the active directory, you can manually input your manager's email here. Only administrators have the right to change this information so you cannot edit this portion of your profile data unless you have administrator rights.

8.

In the Send a push notification section, select the title bar to change the text of the notification that you'll get when an email is received from your boss.

www.dynamicscompanions.com Dynamics Companions

- 138 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To change the text of the email, in the Text field, enter a new message. You can also select dynamic content fields in the list.

10. Select Save to save and test the flow. Now, when emails arrive from your boss, you'll get a push notification on your phone.

Exercise - Copy files with flows At some point, most of us have needed to copy files from one storage service to another. Power Automate makes it easy to automatically move and copy files between two services, like Microsoft OneDrive and Google Drive.

www.dynamicscompanions.com Dynamics Companions

- 139 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In this unit, you'll use a flow template to copy files from your personal OneDrive to Microsoft OneDrive for Business. Power Automate must have permissions to your OneDrive folders to do this.

Create a flow that copies files 1.

Sign in to Power Automate by using your organizational account.

2.

Select My flows.

3.

Select New, and then select Create from template.

4.

Scroll down, and select Copy files to OneDrive for Business when they're added to OneDrive.

5.

You can also quickly find this template by entering OneDrive for Business in the search field.

6.

Select Continue.

7.

In the OneDrive Folder field, select the folder button.

8.

Select the OneDrive folder that files should be copied from.

9.

In the OneDrive for Business Folder Path field, select the folder button, and then select the folder that files should be copied to.

10. Select Create Flow. 11. To change the flow, select Edit flow. Now, whenever a file is put in the selected folder on OneDrive, it will be copied to the selected folder on OneDrive for Business.

Exercise - Create recurring flows In this unit, you'll learn how to build prescheduled flows by using a trigger called recurrence. You'll build a flow for the Contoso marketing team that automatically pulls customer email addresses from a Microsoft

www.dynamicscompanions.com Dynamics Companions

- 140 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Excel workbook on Microsoft OneDrive. You'll then set up the flow so that, once a day, any new email addresses that were added to the workbook are added to a MailChimp customer list.

Prerequisites For this scenario, you will need to make an excel file with a table that contains the following columns: ContactEmail, FirstName, and LastName.

Create a scheduled flow 1.

Sign in to Power Automate by using your organizational account.

2.

Select My flows.

3.

Select New, and then select Scheduled-from blank.

4.

Name your flow and under Run this flow set the flow to repeat every one Day.

5.

Select Create.

6.

Select New step, to add an action.

7.

In the search field, enter excel, select the Excel Online (Business) service, and then select the List rows present in a table action.

8.

In the File name field, select the folder button, and then select the Excel file to use.

9.

In the Table name box, select the drop-down arrow, and then browse to and select the worksheet to use.

www.dynamicscompanions.com Dynamics Companions

- 141 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Select New step, and then select Add an action. 11. In the search field, enter chimp, select the MailChimp service, and then select the MailChimp Add member to list action. Note MailChimp is a premium connector. Depending on your Power Automate license, you might need to sign up for a trial to use this connector. 12. In the List Id field, select the desired MailChimp mailing list. In the Status field, select subscribed. 13. In the Email Address field, use the dynamic content feature to add the ContactEmail field. 14. Notice that the flow automatically creates an additional step. Flow detects that you're setting up an action that requires an additional action. Whenever the flow reads a new email address, it will also create a new action for each row. 15. Use the dynamic content feature to fill in the First name and Last name fields.

And there you have it!

www.dynamicscompanions.com Dynamics Companions

- 142 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This flow will now run once a day, get the new rows from the Excel worksheet, grab the email address and name from each row, and enter the email address and name in the Contoso MailChimp mail list, saving you both time and money.

Exercise - Send an email when a tweet is posted You can create a flow that automatically performs one or more actions after it's triggered by an event. For example, the flow can notify you by email when someone posts a tweet that includes a keyword that you specify. In this example, posting a tweet is the event (also known as a trigger), and sending an email notification is the action. In this unit, you'll learn how to create this example flow.

Prerequisites 

An account on flow.microsoft.com

A Twitter account

Microsoft Office 365

Specify an event to start the flow First, you must select the trigger (event) that starts the flow. 1.

Sign in to Power Automate by using your organizational account.

2.

Select My flows.

3.

Select New, and then select Automated--from blank.

4.

Under Choose your flow's trigger, enter twitter, select the Twitter - When a new tweet is posted trigger and select Create.

www.dynamicscompanions.com Dynamics Companions

- 143 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

If you haven't already connected your Twitter account to Power Automate, select Sign in to Twitter, and then enter your credentials.

6.

In the Search text box, enter the keyword to find.

Specify an action 1.

Select New step, and in the search field, enter send email, and then select the Office 365 Outlook - Send an email action.

2.

If you're prompted to sign in, select the sign-in button, and then enter your credentials.

3.

In the To field, enter or paste your email address, and then select your name in the list of contacts that appears.

www.dynamicscompanions.com Dynamics Companions

- 144 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

In the Subject field, enter New tweet from: followed by a space.

5.

In the list of dynamic content, select the Tweeted by token to add a placeholder for it.

6.

Select the Body field, and then, in the list of dynamic content, select the Tweet text token to add a placeholder for it.

7.

Optional: Add more tokens, other content, or both to the body of the email.

8.

Select Save to save the flow.

9.

Post a tweet that includes the keyword that you specified, or wait for someone else to post such a tweet. Within a minute after the tweet is posted, an email message will notify you of the new tweet.

Exercise - Create team flows Team flows extend the potential of Power Automate to groups of people. After all, why should just one person enjoy the benefits of increased automation in his or her work environment? Here are some advantages of team flows: 

Multiple people can own and manage a flow together.

If the creator of a team flow leaves the organization, the other owners of the flow can continue to run it.

All owners of a team flow can view its history, manage its properties, edit it, add and remove owners, and delete it.

If you're the creator or an owner of a team flow, you'll find it listed on the Team flows tab in Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 145 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note 

Shared connections can be used only in the flow in which they were created.

Owners can use services in a flow, but they can't change the credentials for a connection that another owner created.

Prerequisites To create a team flow, you must have a paid Power Automate plan. Additionally, to add other owners to a team flow or remove owners from it, you must be the creator or an owner.

Create a team flow You create a team flow by adding other owners to an existing flow. After new owners are added to a flow, the flow will appear on the Team flows tab. 1.

Sign in to Power Automate by using your organizational account.

2.

Select My flows.

3.

Select the Share button for the flow that you want to change.

4.

Enter the name, email address, or group name of the person or group that you want to add as an owner.

5.

In the list that appears, select the user or group. The user or group becomes an owner of the flow.

Keep in mind that when you create a team flow, it appears on the Team flows tab. It no longer appears on the My flows tab.

Add a SharePoint list as a co-owner of a flow You can add Microsoft SharePoint lists as co-owners of a flow. In that way, everyone who has edit access to the list automatically gets edit access to the flow. After the flow is shared, you can just distribute a link to it.

www.dynamicscompanions.com Dynamics Companions

- 146 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Restrictions on changes to flows Any owner of a team flow can contribute connections to a flow. After another person has access to the flow, that person can use any connections in it, but only within the scope of that flow. For example, John creates a flow that updates items in SharePoint with his account, and he shares the flow with Mary. In this case, Mary will be able to change the use of SharePoint inside that flow, but not in any of her personal flows. Likewise, Mary can change the flow so that it uses her SharePoint connection, but John still won't able to use that new SharePoint connection in any of his flows. To view all the connections that are used by a flow, select the Share button, and inspect the list of embedded connections.

Remove an owner Important If you remove an owner whose credentials are used to access Power Automate services, be sure to update the credentials for those connections, so that the flow continues to work correctly. 1.

On the Team flows tab, select the Share button for the flow that you want to change.

2.

Select the Delete button

for the owner that you want to remove.

Embedded and other connections The connections that are used in a flow fall into two categories: 

Embedded: These connections are used in the flow.

Other: These connections have been defined for the flow, but they aren't used in it.

If you stop using a connection in a flow, that connection appears in the Other connections list. It will remain there until an owner includes it in the flow again. To view the list of connections, change the team flow.

www.dynamicscompanions.com Dynamics Companions

- 147 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

On the Team flows tab, select the Invite another owner button for the flow that you want to change. The list of connections appears under the list of owners in the flow's properties.

Troubleshoot flows In this unit, you'll learn how to troubleshoot common issues that might occur while you run your flows.

Identify the error Before you can fix a flow, you must identify why it failed. You will get an email with a list of failures each week. 1.

Select the Settings button (the gear symbol) at the top of the web portal and select Activity (or selec the Activity tab in the mobile app), and then select your flow in the list that appears.

2.

Details about the flow appear, and at least one step has a red exclamation point (!) symbol. Open that step, and review the error message.

www.dynamicscompanions.com Dynamics Companions

- 148 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Authentication failures In many cases, flows fail because of an authentication error. If this type of error occurs, the error message includes the word "Unauthorized," or an error code of 401 or 403 appears. You can usually fix authentication errors by updating the connection. 1.

You can view the connections by opening up the flow details by selecting the flow from My Flows.

2.

Scroll to the connection that you saw the "Unauthorized" error message for.

3.

Next to the connection, select the Verify password link in the message that states that the connection hasn't been authenticated.

4.

Verify your credentials by following the instructions that appear. Then return to your flow-run failure, and select Resubmit.

The flow should now run as expected.

Action configuration issues Flows sometimes fail if a setting in one of the flow's actions doesn't work as expected. In this case, the error message includes the phrase "Bad request" or "Not found," or an error code 400 or 404 appears. The error message should indicate how to fix the failure. 1.

Select the Edit button, and then fix the issues inside the flow definition.

2.

Save the updated flow, and then select Resubmit to try to run the flow again with the updated configuration.

Temporary issues If error code 500 or 502 appears, the failure is temporary or transient. 

Select Resubmit to try to run the flow again.

Issues with your pricing plan Sometimes your flows might behave unexpectedly because you aren't using the correct plan. 

To view your plan, in Power Automate, select Learn. It will redirect you to another page. Here select Learn, and then select Pricing.

Learn more about pricing and how to switch plans.

Issues with data usage You might have run out of data that you can use.

www.dynamicscompanions.com Dynamics Companions

- 149 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you're on a free plan or a trial plan, select the Settings button (the gear symbol) to show your current usage against your plan.

If you're on a paid plan, runs are pooled across all users in your organization. We're working on features that will show information about available quotas and usage across an organization.

Important If you exceed your data limit, Power Automate throttles your flow runs. Learn more about usage limits.

You might be running flows too often Your plan determines how often your flows run. For example, your flows might run every 15 minutes if you're on the free plan. If a flow is triggered less than 15 minutes after its last run, it's queued until 15 minutes have passed. Whenever a flow is triggered, whether by an automatic trigger or because you manually start it, the action counts as a run. Checks for new data don't count as runs. Learn more about usage limits.

You might be using an incorrect account If you sign in by using a Microsoft account (for example, an account that ends with *@outlook.com* or *@gmail.com*), you can use only the free plan. To take advantage of the features of the paid plan, sign in by using your organizational account or school email address. To upgrade, use an organizational account or a school account, or create a Microsoft Office 365 trial account.

www.dynamicscompanions.com Dynamics Companions

- 150 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Some flows run more often than expected Some flows might run more often than you expect. For example, you create a flow that sends you a push notification whenever your manager sends you an email. That flow must run every time you get an email from anyone, because the flow must check whether the email came from your manager. This action counts as a run.

Other issues that are based on limits, and caveats You might have issues that are based on other limits: 

Each account can have up to: o

250 flows.

o

15 custom connectors.

o

20 connections per application programming interface (API) and 100 connections total.

You can install a gateway only in the default environment.

Some external connectors, like Twitter, implement connection throttling to control the quality of service. Your flows might fail when throttling is in effect. If your flows are failing, review the details of the run that failed in the flow's run history.

Check your knowledge 1.

2.

3.

How can you create a flow that reoccurs daily? 

Create the flow and connect the flow to a calendar.

Create the flow and set the flow flag frequency to daily reoccurrence.

Set the Schedule – Recurrence trigger frequency to daily and interval to 1.

Create the flow and set the flow flag frequency to hourly and the value to 24.

Every flow has two main parts, a trigger, and one or more actions. Which of the following best describes an action? 

Actions are what you want to happen when a trigger is invoked.

Actions will trigger the frequency of the flow reoccurrence.

Triggers are what you want to happen when an action is invoked.

Flow actions trigger the flow to occur as long as the defined value of the trigger is met.

You would like to be alerted to when a change is made to a SharePoint list, what are some ways in which Power Automate can help? 

Power Automate can send up a flare near you to alert you of changes.

You can write a flow with Power Automate to send push notifications, texts or emails for a variety of triggers.

www.dynamicscompanions.com Dynamics Companions

- 151 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Sorry, Power Automate can't help with that.

Power Automate can send out a tweet whenever a list item is changed.

Summary Let's quickly review what we covered in this module. In this module, you learned the basics of Power Automate, including the difference between triggers and actions and how to create flows for yourself or your team. You created a flow that automatically saves email attachments, one that alerts you of relevant tweets and a button flow to send yourself a reminder.

Next steps Congratulations! You've finished the first module of this learning path for Power Automate. Continue learning by checking out the next module in this learning path. See you in the next module!

www.dynamicscompanions.com Dynamics Companions

- 152 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Build more complex flows with Power Automate Power Automate is an online workflow service that automates actions across the most common apps and services. In this module, you'll build more advanced flows to streamline your business, save time, and work more efficiently.

Learning Objectives Build more advanced flows to get notifications, copy files between online services, posts tweets, convert and store documents, and more.

Prerequisites You must have signed up for Power Automate, and have a OneDrive for Business account.

Learn to build more complex flows In the previous module for Power Automate, you learned how to build some basic flows that save email attachments and send you reminders from your phone. In this module, you'll now build some more complex flows and increase your knowledge. If you're a beginner with Power Automate, this module will expand your business flow skills. If you already have some experience, this module will tie concepts together and hopefully help fill in the gaps. Be more productive, automatically: that's what Power Automate is all about. So, let's get started!

Exercise - Build an approval request In this unit, you'll learn how to build a business-friendly scenario that uses approvals. In this scenario, anyone who has access to the Microsoft SharePoint list can contribute tweets without knowing anything about Twitter. The social media team can then approve or reject those tweets allowing that team to remain in control of the account and the content that goes out to customers.

www.dynamicscompanions.com Dynamics Companions

- 153 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Step one: Create a SharePoint list for tweets You'll use a template that starts an approval process whenever a new item is created in a specific list. If the item is approved, a tweet is posted to Twitter. For this unit, you'll change the process by adding steps that update a SharePoint list with the approval response, indicate whether the item was approved, and add any comments that the approver added to the proposed tweet. First, let's create the SharePoint list. 1.

On your SharePoint site, create a SharePoint list named ContosoTweets.

2.

Open the list, and select Add column.

3.

Select + Add column to add the following columns. Select Save after you create each column.

4.

Add a column of the Multiple lines of text type that's named TweetContent. This column will hold the content of the tweets that will be approved later.

Add a column of the Date type that's named TweetDate. Toggle the Include Time option to yes.

Add a column of the Yes/No type that's named ApprovalStatus. The approver can then select Yes or No to approve or reject the tweet.

Add a column of the Single line of text type that's named ApproverComments. The approver can then add a comment about the approval status.

Copy the URL of the SharePoint list. You'll use it when you create the flow.

Step two: Create an approval request flow 1.

Sign in to Power Automate, and then select Templates.

2.

Search Post list items to Twitter under Approvals and select the appropriate template.

3.

Make sure that your account credentials for SharePoint, Approvals, and Twitter are correct, and then select Continue.

4.

In the When a new item is created action, enter the following values:

www.dynamicscompanions.com Dynamics Companions

- 154 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Site Address: Enter the URL of your team's SharePoint site. List Name: Select ContosoTweets. 5.

In the Start an approval action, in the Title field, enter New tweet for, and then select Title in the dynamic content list.

6.

In the Assigned to field, enter and select either your name or the name of a test user.

7.

In the Details field, remove the default items, and add dynamic fields and text to get TweetContent on TweetDate by Created by DisplayName.

8.

In the Item Link field, add the dynamic content Link to Item. In the Item Link Description field, enter Contoso Tweet List.

9.

In the If yes section of the Condition, select Add an action.

10. Search for update item, select the SharePoint connector, and then select the SharePoint – Update item action.

www.dynamicscompanions.com Dynamics Companions

- 155 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

11. In the Site Address, enter the URL of the team's SharePoint site again. In the List Name field, select ContosoTweets again. In the Id field, add ID from the dynamic content list. The Id field is used to match the actual tweet request in the SharePoint list. 12. Select the Title field, and then, in the dynamic content list, search for title. Add Title from the When a new item is created action. 13. In the ApprovalStatus field, select Yes. Then select the ApproverComments field, and add Comments from the dynamic content list.

14. Click and drag Post a Tweet to below the Update Item action. 15. In the If no section of the Condition, select Add an action.

www.dynamicscompanions.com Dynamics Companions

- 156 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

16. Repeat steps 10 through 13 to create a SharePoint – Update item action. Set the same values that you set for the IF YES condition. The only difference is that you set the ApprovalStatus field to No this time. 17. Expand the Post a tweet action by selecting the title bar. Then select the Tweet text field, and add TweetContent from the dynamic content list. This step will create the actual tweet and then post it to Twitter when it's approved.

18. Select Save. Congratulations! You just created your first approval flow. This unit showed just one way that Power Automate can empower your team to be more productive. Your team can contribute ideas, relevant news, or product guidance, but you maintain control over what's tweeted out to customers. In the next unit, you'll see what it looks like when an approver receives a new request for a proposed tweet.

Exercise - Build a flow that processes an approval request In the previous unit, you learned how to build an approval process for tweets that are stored in a Microsoft SharePoint list. In this unit, you'll see what the experience looks like when an approver receives a new approval request.

Step one: Change the SharePoint list First, we need to add an item to our SharePoint list. We can then process an approval request for that item. 1.

In SharePoint, open the ContosoTweets list that you set up in the previous unit, and then select New to create a list item (tweet).

2.

Enter the following values, and then select Save: Title: Promotions TweetContent: Check out the new product line of Contoso Flooring #OhSoContoso Tweet Date: Today's date.

www.dynamicscompanions.com Dynamics Companions

- 157 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Step two: Change the flow 1.

In Power Automate, select My flows.

2.

Select the Post list items to Twitter after approval flow that you set up in the previous unit, and then, under Run history, select the flow that's running.

3.

Select the When a new item is created trigger. Make sure that the information for the list item that you just created is shown.

4.

In Microsoft Outlook, open the automated approval mail in the inbox, and then select Approve. Add a comment and press Submit.

www.dynamicscompanions.com Dynamics Companions

- 158 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

In Power Automate, click on Approvals under Actions. You can see the approval you just submitted in your history.

6.

In SharePoint, refresh the ContosoTweets list. Make sure that the ApprovalStatus field is set to Yes, and that the comment that you just entered is shown.

In this unit, you saw the experience from the approver's point of view, from receiving an approval request email to processing the request in the Approval Center.

Exercise - Create a flow that stores documents In this unit, you'll see how Contoso Flooring uses Power Automate to automatically convert documents to a standard format and then store them in Microsoft SharePoint Online. You'll create a flow that detects when a new file has been added to a Microsoft OneDrive for Business folder. The flow then converts that file to a PDF and stores it in a SharePoint Online folder.

Prerequisites For this scenario, you need an account with Muhimbi, a PDF conversion service. If you don't already have a Muhimbi account, you can sign up for a free 30-day trial.

Create the source and target folders First, you must create the source and target folders in OneDrive for Business and SharePoint Online. 1.

In OneDrive for Business, under Files, create a folder named Finished Documents.

2.

In SharePoint Online, in Shared Documents, create a folder named PDF – Finished files.

www.dynamicscompanions.com Dynamics Companions

- 159 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create the flow 1.

In Power Automate, select My Flows, and then select Automated--from blank.

2.

In the Choose your flow's trigger search field, enter OneDrive, and select the OneDrive for Business - When a file is created trigger. Name your flow and press create.

3.

In the Folder field, select the folder button, and then select the Finished Documents folder that you created in the previous step.

4.

Select New step.

5.

In the search box, enter muhimbi, select the Muhimbi PDF connector, and then select the Muhimbi PDF – Convert document action.

6.

If Power Automate prompts you to sign in to Muhimbi, sign in. If you don't have a subscription to Muhimbi, you can use a free 30-day trial.

7.

In the Convert document action, set the following values: Source file name: In the dynamic content list, select File name. Source file content: In the dynamic content list, select File content.

www.dynamicscompanions.com Dynamics Companions

- 160 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Output format: Select PDF.

So far, you've set up these steps for your flow: a.

The flow is triggered whenever a new file is added to a specific OneDrive for Business folder.

b. The Muhimbi service converts that file to PDF. For the final step, you'll add an action that moves the PDF document to a SharePoint Online folder where the team can access it. 8.

Select New step.

9.

In the search field, enter sharepoint, and then select the SharePoint – Create file action.

10. In the Create file action, set the following values: Site address: Enter the URL of your SharePoint site.

www.dynamicscompanions.com Dynamics Companions

- 161 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Folder path: Select the folder button, and browse to the PDF - Finished files folder. File name: In the dynamic content list, under Convert document, select Base file name. Then enter .pdf so that the file will be saved with the .pdf file name extension in SharePoint. File content: In the dynamic content list, under Convert document, select Processed file content.

11. Select Save at the top of the page to save your work.

Test the flow 1.

To test the flow, add a new file to your Finished Documents folder in OneDrive for Business.

2.

In Power Automate, select My flows, and then select the new flow to view the run history.

3.

After the flow runs, make sure that the file was converted to a PDF and saved to the PDF – Finished files folder in SharePoint.

Exercise - Build a flow that uses information like locations or date You can build button flows that use information like Global Positioning System (GPS) data, date information, or email. This information is available as trigger tokens. Trigger tokens are data points that are known and available to the device that a button flow is running on. These tokens change, based on factors like the current time or the current geographic location of the device. For example, if you run a button flow on a phone, the phone probably knows the time at your current location, the date, and your current address. In other words, the time and date, and the address where the phone is located, are all determined when the button flow runs. They're automatically available for use in any button flows that are run on the device.

www.dynamicscompanions.com Dynamics Companions

- 162 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can use these trigger tokens to build useful flows that minimize repetitive tasks like providing your location to someone or tracking how much time you spent on a particular job/service call.

List of button trigger tokens Here's the list of button trigger tokens that are available to you when you create button flows. Parameter

Description

City

The city where the device that's running the flow is located.

Country/Region

The country/region where the device that's running the flow is located.

Full address

The full address where the device that's running the flow is located.

Latitude

The latitude where the device that's running the flow is located.

Longitude

The longitude where the device that's running the flow is located.

PostalCode

The postal code where the device that's running the flow is located.

State

The state where the device that's running the flow is located.

Street

The street where the device that's running the flow is located.

Timestamp

The time in the area where the device that's running the flow is located.

Date

The date in the area where the device that's running the flow is located.

User name

The user name of the person who's signed in to the device that's running the flow.

User email

The email address of the person who's signed in to the device that's running the flow.

Create a button flow that uses trigger tokens When you create a button, you can use trigger tokens to add rich functionality to it. Let's create a button flow on a mobile device. The button flow will use trigger tokens to send the date and your full address in a "Working from home" email to your boss. Although the procedures in this unit show screenshots from an Apple iOS device, the experience is similar on Android and Windows Phone devices.

Prerequisites 

A work or school email address, or a Microsoft account that has access to Power Automate

The Power Automate mobile app for Android, iOS, or Windows Phone

www.dynamicscompanions.com Dynamics Companions

- 163 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create the button flow 1.

Launch the Power Automate mobile app and sign in using your organizational account.

2.

Select Browse.

3.

Search for and select the Send a 'Working from home today' email to your manager service.

4.

Select Use this template.

www.dynamicscompanions.com Dynamics Companions

- 164 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Press the title of the Send an email card to expand your options. Note that this is a part of simultaneous actions. We've turned the screen so you can see more of the flow here.

6.

Select the Subject field, and enter WFH today. Notice that when you selected the Subject field, a list of tokens appeared. While the cursor is still in the Subject field, scroll through the list of tokens, and select Date. Notice that the date token now appears in the Subject field.

www.dynamicscompanions.com Dynamics Companions

- 165 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

7.

Scroll to the Body field, and select the default message so that you can add tokens there.

8.

Select the Full address token.

9.

Select Create.

www.dynamicscompanions.com Dynamics Companions

- 166 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Select Done. Your button flow is now created.

Run the button flow Note This button flow will send your current location via email. 1.

Select the Buttons tab at the bottom of the window. You'll see a list of the buttons that you have permissions to use. Select the button that represents the button flow that you just created:

www.dynamicscompanions.com Dynamics Companions

- 167 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

Your device may prompt you to let the button flow access your device's location information. If necessary, press Allow

3.

In a few moments, you'll notice that the email was sent to your boss.

Congratulations! You just created a button flow that uses both the Date and Full address trigger tokens.

www.dynamicscompanions.com Dynamics Companions

- 168 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Build a flow accepts user input when run You can customize button flows by letting the user provide specific details that will be used when the flow runs. You can create a button flow either on the Power Automate website or in the mobile app for Power Automate. For this unit, you'll use the website.

Prerequisites You must have an account on the Power Automate website.

Open the template 1.

Launch Power Automate and sign in using your organizational account.

2.

Select Templates and search Create a New Outlook Task.

3.

Sign in if you are prompted to do so and select Create Flow.

Customize the user input You'll notice that this flow already requests additional input, but let's add another field. 1.

On the trigger card, select Add an input.

www.dynamicscompanions.com Dynamics Companions

- 169 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For each custom field that should be available when someone runs your flow, enter values in the Input title and Input description field. In this example, you'll create one custom input field, Due Date.

Customize the task 1.

On the Create a task card, select the title bar to expand the card.

2.

In the Due Date field, select Due Date from the dynamic content.

3.

Select Save.

Run the flow You'll now use the mobile app for Power Automate to run the button flow that you just created. You'll provide all the user input that's needed to create a task with a name, description, and due date. 1.

In the mobile app for Power Automate, select the Buttons tab at the bottom of the window, and then select the Create new Outlook Task button.

www.dynamicscompanions.com Dynamics Companions

- 170 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

Enter the requested inputs and select Done.

3.

The flow runs.

4.

Select the Activity tab at the bottom of the window to view the results.

www.dynamicscompanions.com Dynamics Companions

- 171 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To view the detailed results of the flow run, select the Create a task step.

Now you can not only run button flows with the already available information, but also request inputs from the user.

www.dynamicscompanions.com Dynamics Companions

- 172 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Learn to build a flow that runs at recurring time intervals You can create a flow that performs one or more tasks (for example, sending a report by email) on a specific schedule: 

Once a day, an hour, or a minute

On a date that you specify

After a number of days, hours, or minutes that you specify

Create the flow 1.

Launch Power Automate and sign in using your organizational account.

2.

In the left pane, select My flows.

3.

Select New, and then select Scheduled‐‐from blank.

4.

In the dialog box, specify the flow's name and how often the flow should run. For example, if you want the flow to run every two weeks, enter 2 in the Interval field, and select Week in the Frequency field. You can also specify the day of the week your flow should run. The text at the bottom of the dialog box explains your inputs in plain language.

5.

Once you are satisfied with your inputs, select Create.

www.dynamicscompanions.com Dynamics Companions

- 173 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Specify advanced options 1.

Follow the steps in the previous section. Once your flow is created, select the title of the Recurrence card to expand it. Select Edit and then Show advanced options. Note The advanced options vary, depending on the value of the Interval and Frequency fields. If the dialog box that you see doesn't match the graphic that follows, make sure that the Interval and Frequency fields are set to the same values that are shown in the graphic.

2.

Here you can specify a time zone to reflect the local time zone, Universal Coordinated Time (UTC), or another time zone.

3.

If you selected Day in the Frequency field, you can specify the time of day when the flow should run. If you selected Week, specify the day or days of the week when the flow should run, and the time or times of day when the flow should run. For example, set up the flow as shown in the following graphic to start it no earlier than noon (Pacific time) on Monday, January 1, 2018, and to run it every two weeks, at 5:30 PM (Pacific time) on Tuesday.

4.

Add the action or actions that the flow should take.

Delay the flow Next, you'll learn how to delay a flow. 1.

On the top navigation bar, select My flows, and then select Automated‐‐from blank.

2.

In the Search all triggers field, enter Twitter, and then select Twitter ‐ When a new tweet is posted. select Create and finish the steps in the flow.

3.

Select New step.

4.

In the list of actions, search Delay and select either Delay or Delay until.

www.dynamicscompanions.com Dynamics Companions

- 174 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Follow one of these steps, depending on the action that you just selected: 

If you selected Delay, specify a count and a unit of time, like second, minute, or hour.

If you selected Delay until, specify a date in this format: YYYY-MM-DDTHH:MM:SSZ

Exercise - Build a flow that runs when an event in Dynamics 365 occurs You can create flows that start when an event occurs in Microsoft Dynamics 365 or some other service. These flows then perform an action in that service. In Power Automate, you can set up automated workflows between your favorite apps and services to sync files, get notifications, collect data, and more. In this unit, we'll look to build two flows: 

The first flow creates a task in Dynamics 365 when a lead is created in another instance of Dynamics 365.

The second flow copies a list item to the Wunderlist website when a task is created in Dynamics 365.

Here are some other examples of flows that you can create by using Dynamics 365: 

Create a list item in Microsoft SharePoint when an object is created in Dynamics 365.

Create Dynamics 365 lead records from a Microsoft Excel table.

www.dynamicscompanions.com Dynamics Companions

- 175 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Copy Dynamics 365 accounts to customers in Microsoft Dynamics 365 for Finance and Operations.

Important To invoke a flow trigger, the Dynamics 365 customer engagement entity that's used with the flow must have change tracking turned on. For more about how to turn on change tracking, see Enable change tracking to control data synchronization.

Example one: Create a task from a lead This example shows how to create a task in Dynamics 365 whenever a lead is created in another instance of Dynamics 365. 1.

Sign in to Power Automate by using your organizational account.

2.

In the left pane, select My flows.

3.

Select New, and then select Automated--from blank.

4.

In the list of flow triggers, select Common Data Service - When a record is created. Dynamics 365 keep information in the Common Data Service, so we will use this connector throughout.

5.

If you're prompted to sign in to Common Data Service, do so.

6.

In the Environment field, select the instance where the flow should listen.

7.

In the Entity Name field, select the entity to listen to. This entity will act as a trigger that starts the flow. For this unit, select the Lead entity.

8.

For Common Data Service, you also need to specify the Scope. This will determine if your flow runs if you create a new record, if a new record is created by a user within your business unit, or if a new record is created by any user in your organization. For this example, choose Organization.

9.

Select New step. www.dynamicscompanions.com Dynamics Companions

- 176 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Select Common Data Service – Create a new record. 11. In the Environment field, select the environment where the flow should create the record. Note that this doesn't have to be the same environment that the event is triggered from. 12. In the Entity Name field, select the entity that will create a record when the event occurs. For this unit, select the Tasks entity. 13. More fields appear on entity selection. Select the Subject field. A dynamic content pane appears, where you can select fields from the previous steps. For this unit, select Full name.

Tip In the dynamic content pane, select See more to see more fields that are associated with the entity. For example, you can also insert the Company Name, Customer, Description, or Email field for the lead into the Subject field for the task. 14. Select Save.

Example two: Create a Planner task from a Dynamics 365 task This example shows how to create a task in Microsoft Planner whenever a task is created in Dynamics 365. Planner is a service that you can use to create to-do lists, add reminders, and track errands. 1.

Sign in to Power Automate by using your organizational account.

2.

In the left pane, select My flows.

3.

Select New, and then select Automated--from blank.

www.dynamicscompanions.com Dynamics Companions

- 177 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

In the list of flow triggers, select Common Data Service - When a record is created. Dynamics 365 keep information in the Common Data Service, so we will use this connector throughout.

5.

If you're prompted to sign in to Common Data Service, do so.

6.

In the Environment field, select the instance where the flow should listen.

7.

In the Entity Name field, select the entity to listen to. This entity will act as a trigger that starts the flow. For this unit, select the Tasks entity.

8.

In the Scope field, choose Organization.

9.

Select New step.

10. In the search field, enter Planner, and then select Planner – Create a task. 11. See create a task parameters for information about the fields. 12. In the Title field, add Subject from the dynamic content pane. 13. Select Save.

Limitations of trigger-based logic Triggers like When a record is created, When a record is updated, and When a record is deleted will start your flow within a few minutes after the event occurs. But in rare cases, it might take up to two hours for your flow to be triggered. When the trigger occurs, the flow receives a notification, but the flow runs on the data that exists when the action runs. For example, if your flow is triggered when a new record is created, and you update the record twice before the flow runs, your flow runs only once with the latest data.

Specify advanced options When you add a step to a flow, you can select Show advanced options to add a filter or order-by query that controls how the data is filtered in the flow. For example, you can use a filter query to retrieve only active contacts, and you can order them by last name. Enter the statuscode eq 1 Open Data Protocol (OData) filter query, and select Full name in the dynamic content pane. For more about filter and order by queries, see MSDN: $filter and MSDN: $orderby.

www.dynamicscompanions.com Dynamics Companions

- 178 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Best practices for advanced options When you add a value to a field, you must match the field type, regardless of whether you enter a value or select a value in the dynamic content pane. Field type

How to use

Text fields

Text fields require a single line of text or Settings > Customizations > Customize category Single Line of dynamic content that's a text-type field. the System > Entities > Task > Fields Text Examples include the Category and Sub‐ Category fields.

Integer Some fields require an integer or fields dynamic content that's an integer-type field. Examples include the Percent Complete and Duration fields. Date fields

Where to find

Name

Data type

Settings > Customizations > Customize percent Whole the System > Entities > Task > Fields complete Number

Some fields require a date that's entered Settings > Customizations > Customize created in mm/dd/yyyy format or dynamic the System > Entities > Task > Fields on content that's a date-type field. Examples include the Created On, Start Date, Actual Start, Last on Hold Time, Actual End, and Due Date fields.

Date and Time

Fields Some fields that reference another entity Settings > Customizations > Customize accountid Primary Key record require both the record ID and the the that System > Entities > Account > Fields require lookup type. both a record ID and a

www.dynamicscompanions.com Dynamics Companions

- 179 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Field type

How to use

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Where to find

Name

Data type

lookup type

Exercise - Build a flow that uses SQL This unit shows how to create a flow that monitors a source for new or changed items, and then copies those changes to a destination. You might create a flow of this type if your users enter data in one location, but your team needs that data in a different location or format. In this unit, you'll copy data from a Microsoft SharePoint list (the source) to a Microsoft Azure SQL Database table (the destination). Keep in mind that you can copy data over more than 275 services that Power Automate supports.

Important Changes that you make in the destination aren't copied back to the source, because two-way synchronization isn't supported. If you try to set up two-way synchronization, you'll create an infinite loop where changes are sent endlessly between the source and destination.

Prerequisites 

Access to a data source and a destination. This unit doesn't include the steps to create the source and destination.

Access to Power Automate.

A basic understanding of how your data is stored.

Familiarity with the basics of creating flows. For this unit, it's assumed that you know how to perform these actions.

Tip Column names in the source and destination don't need to match, but you must provide data for all required columns when you insert or update an item. Power Automate identifies the required fields for you.

Quick overview of the steps If you're comfortable with Power Automate, use these quick steps to copy data from one data source to another.

www.dynamicscompanions.com Dynamics Companions

- 180 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

Identify the source that you'll monitor and the destination that you'll copy changed data to. Confirm that you have access to both the source and the destination.

2.

Identify at least one column that uniquely identifies items in the source and destination. In the example that follows, we use the Title column, but you can use any columns.

3.

Set up a trigger that monitors the source for changes.

4.

Search the destination to check whether the changed item exists.

5.

Use a condition like this:

6.

If the new or changed item doesn't exist in the destination, create it.

If the new or changed item exists in the destination, update it.

Trigger your flow, and then confirm that new or changed items are being copied from the source to the destination.

Note If you haven't previously created a connection to SharePoint or a SQL Database, follow the instructions when you're prompted to sign in. Here are the detailed steps to create the flow.

Monitor the source for changes First, we'll set up the SharePoint site to monitor changes. 1.

Launch Power Automate and sign in using your organizational account.

2.

In the left pane, select My flows.

3.

Select New, and then select Automated--from blank.

4.

Name your flow. Search all triggers triggers for the SharePoint - When an item is created or modified trigger and select it. Press Create.

5.

On the When an item is created or modified card, enter the site address, and then select the name of the SharePoint list that your flow monitors for new or updated items.

Search the destination for the new or changed item Next, we'll use the SQL Server - Get rows action to search the destination for the new or changed item. 1.

Select New step.

2.

Under Choose an action, search for Get rows, and then select SQL Server - Get rows (V2).

3.

Set the Server name, Database name, and Table name for the table you wish to monitor.

www.dynamicscompanions.com Dynamics Companions

- 181 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Select Show advanced options.

5.

In the Filter Query box, enter Title eq followed by a space and a single quotation mark ('). Then select the Title token in the dynamic content list, and enter another single quotation mark. This step assumes that you're matching the titles of the rows in the source and destination. The Get rows card should now look like this image.

Check whether the new or changed item was found Next, we'll check whether the new or changed item was found. 1.

Select New step, and then select Condition.

2.

On the Condition card, select the field on the left. The Add dynamic content from the apps and connectors used in this flow list opens.

3.

Select Expression and choose length. Your cursor should be between the parentheses in the equations.

www.dynamicscompanions.com Dynamics Companions

- 182 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Without leaving the open pane, select Dynamic content. In the Get rows category, select value.

Tip Confirm that you've selected value in the Get rows category. Don't select value in the When an item is created or modified category. 5.

In the field in the center, select is equal to.

6.

In the field on the right, enter 0 (zero). The Condition card should now look like this image.

Tip The addition of the length() function lets the flow check the value list and check whether it has any items. When your flow gets items from the destination, there are two possible outcomes. Outcome

Next step

The item exists.

Update the item.

The item doesn't exist.

Create a new item.

Create the item in the destination If the item doesn't exist in the destination, create it by using the SQL Server - Insert row action. 1.

On the If yes branch of the condition, select Add an action, search for insert row, and then select SQL Server - Insert row (V2).

2.

On the Insert row card, set the Server name, Database name, and Table name for the table to insert the new item into (the information you entered above).

www.dynamicscompanions.com Dynamics Companions

- 183 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The Insert row card expands and shows all fields in the selected table. Fields that are marked with an asterisk (*) are required and must be filled in for the row to be valid. 3.

Select each field that you want to fill in, and enter the data. You can manually enter the data, select one or more tokens in the dynamic content pane, or enter any combination of text and tokens into the fields.

Note The Insert row and Update row cards show the names of the columns in the SQL Database table that's being used in the flow. Therefore, the cards that are shown in the images in this procedure might differ from the cards that you see.

Update the item in the destination Next, if the item exists in the destination, update it with the changes. 1.

Add the SQL Server - Update row action to the If no branch of the condition.

2.

Select Save to save the flow.

Now, whenever an item in your SharePoint list (the source) changes, your flow is triggered. It either inserts a new item or updates an existing item in SQL Database (the destination).

Note Your flow isn't triggered when an item is deleted from the source. If this scenario is important to you, consider adding a separate column that indicates when an item is no longer needed.

Exercise - Integrate Power Apps, Power Automate, and SharePoint The data that fuels business processes is often buried in separate systems that are difficult to connect to and navigate. This is one reason why business processes don't stop becoming complex, and why people rarely stop worrying about them. But the Power Platform with Power Automate, Power Apps, and Power BI along with tools like Microsoft SharePoint make it all easier. Together, these apps and services provide these advantages: 

The data can easily be tapped.

Critical business decisions can be made more quickly and more intelligently.

People can worry less about what their data is doing and concentrate more on moving their business forward.

This unit gives an overview of: 

Integration of Power Automate with Power Apps.

www.dynamicscompanions.com Dynamics Companions

- 184 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Integration of Power Automate and Power Apps with SharePoint for easy sharing of data in lists.

Add a flow in Power Apps Adding a flow to a Power Apps application is very straightforward. 1.

Go to https://make.powerapps.com, and sign in by using your organizational account.

2.

Open your app for editing.

3.

On the Action tab, select Power Automate on the toolbar.

4.

In the Data dialog box, select Create a new flow.

Power Automate is started and shows templates filtered by the trigger PowerApps Button.

For more about how to create flows, see Create a flow from a template in Power Automate.

Add a Power Apps application from Power Automate You can also go in the other direction. You can start in Power Automate and then select a template to add an app from Power Apps.

www.dynamicscompanions.com Dynamics Companions

- 185 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

Launch Power Automate and sign in using your organizational account.

2.

In the left pane, select Templates.

3.

Select one of the many Power Apps templates. To see all the Power Apps templates that are available, you can search for Power Apps. Once the template is selected and opened, you can start building your flow.

For more about how to create apps by using Power Apps, see Create a canvas app from a template in Power Apps.

Integration of SharePoint with Power Automate Customers regularly exchange data between SharePoint lists and other systems to support business processes. These scenarios become more powerful through the deep integration of Power Automate with SharePoint lists. Power Automate allows for automating the exchange of workflows and data between SharePoint and a variety of Microsoft and third-party services. You can create and start flows directly from a SharePoint list, and store and change that data in SharePoint. 1.

From a SharePoint list, select Flow on the top toolbar, and then select Create a flow.

2.

In the Create a flow pane, select the template to use. Power Automate is started, and you can finish creating the flow.

Integration of SharePoint with Power Apps Power Apps lets you connect to, create, and share business apps on any device in minutes. You can build efficient mobile forms and apps directly from a SharePoint list, without writing a line of code. Power Apps and Power Automate share a common connector framework that lets you weave in dozens of data sources that are located on premises or in the cloud. These data sources include Microsoft Exchange, Microsoft SQL Server, Microsoft Dynamics, Salesforce, Google, MailChimp, Twitter, and Wunderlist. 1.

From a SharePoint list, select Power Apps on the top toolbar, and then select Create an app.

2.

In the Create an app pane, enter a name for your app, and then select Create. Power Apps is started, and you can finish creating the app.

Exercise - Create a business process flow This unit shows how to create a business process flow by using Microsoft Power Apps. For more about how to create a mobile task flow, see Create a mobile task flow.

www.dynamicscompanions.com Dynamics Companions

- 186 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When a user starts a business process flow, the process bar at the top of the page shows the stages and steps of the process.

Tip When you create a business process flow definition, you can define who has privileges to create, read, update, or delete instances of the business process flow. For example, for service-related processes, you might give customer service reps full access to change the business process flow instance. But you might give sales reps just read-only access to the instance, so that they can monitor post-sales activities for their customers. To set security for a business process flow definition that you create, select Enable Security Roles on the action bar.

Create a business process flow 1.

Launch Power Automate and sign in using your organizational account.

2.

In the left pane, select Flows.

3.

On the top bar, select New and Business process--from blank.

4.

In the Build a business process flow pane, fill in the required fields: 

Flow name: The display name of the process doesn't have to be unique, but it should be meaningful for people who must choose a process. You can change this name later.

Name: A unique name that's based on the display name. You can change the name when you create the process, but you can't change it after the process has been created. Power Automate can generate this for you.

Common Data Service entity: Select the entity on which to base the process. The entity that you select affects the fields that are available for steps that can be added to the first stage of the process flow. If you can't find the entity that you want, make sure that the Business process flows (fields will be created) option is set for the entity in the entity definition. You can't change the entity after you save the process.

5.

Select Create. The new process is created, and the business process flow designer is started. The designer page has three sections:

6.

On the left, a single stage named Customer New Stage has already been created for you.

Beneath this stage is the mini map, which lets you see the whole process or quickly go to a part of the process.

On the right are components that you can drag to the designer. You can also set properties to create a business process flow.

Add stages so that users can proceed from one business stage to another in the process: a.

Drag the Stage component from the Components tab to the plus sign (+) in the designer.

b. Select the stage, and then, on the Properties tab on the right, set the properties:

www.dynamicscompanions.com Dynamics Companions

- 187 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

i. Enter a display name. ii. Optional: Select a category for the stage (for example, Qualify or Develop). This category appears as a chevron on the process bar.

iii. When you've finished setting the properties, select Apply. 7.

Add steps to each stage:

Tip To see the steps in a stage, select Details in the lower-right corner of the stage. a.

Drag the Step component from the Components tab to the stage.

b. Select the step, and then, on the Properties tab, set the properties: i. Enter a display name for the step. ii. If users should be able to enter data to finish a step, select the appropriate field in the drop-down list. iii. If users must fill in the selected field to finish the step before they can proceed to the next stage of the process, select Required. iv. When you've finished, select Apply. 8.

Add a branch (condition) to the process: a.

Drag the Condition component from the Components tab to the plus sign (+) between two stages.

b. Select the condition, and then, on the Properties tab, set the properties. When you've finished, select Apply. 9.

Add a workflow to the process: a.

Drag the Workflow component from the Components tab to either a specific stage or the Global Workflow item:

www.dynamicscompanions.com Dynamics Companions

- 188 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Drag the Workflow component to a specific stage if the workflow should be triggered when the process enters or exits that stage. The Workflow component must be based on the same primary entity as the stage.

Drag the Workflow component to the Global Workflow item if the workflow should be triggered when the process is activated or archived (that is, when the status changes to Completed or Abandoned). The Workflow component must be based on the same primary entity as the process.

b. Select the Workflow, and then, on the Properties tab, set the properties: i. Enter a display name. ii. Select when the workflow should be triggered. iii. Search for an existing on-demand active workflow that matches the stage entity, or create a workflow by selecting New. iv. When you've finished, select Apply. 10. To validate the business process flow, select Validate

on the action bar.

11. To save the process as a draft while you continue to work on it, select Save on the action bar.

Important No one can use a process while it's a draft. 12. To activate the process and make it available to your team, select Activate on the action bar. 13. To define who has privileges to create, read, update, or delete the business process flow instance, select Edit Security Roles on the action bar. For example, for service-related processes, you might give customer service reps full access to change the business process flow instance. But you might give sales reps just read-only access to the instance, so that they can monitor postsales activities for their customers. a.

In the Security Roles pane, select the name of a role to open the details page for that role.

b. On the Business Process Flows tab, select options to assign the role appropriate privileges for the business process flow.

Note By default, the System Administrator and System Customizer security roles have access to new business process flows. c.

Select Save.

Tip

Keep these tips in mind as you work on your business process flow in the designer:

www.dynamicscompanions.com Dynamics Companions

- 189 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To take a snapshot of everything in the business process flow designer, select Snapshot on the action bar. This option is useful if you want to share and get comments about the process from a team member.

Use the mini map to quickly go to different parts of the process. This option is useful when you have a complicated process that scrolls off the screen.

To add a description of the business process, select the arrow beside the process name in the upper-left corner of the page. You can enter up to 2,000 characters in the description field.

Edit a business process flow You can edit the business process flow after it has been created. 1.

On the Power Apps main page, select Flows in the left pane.

2.

In the list of business process flow, select the flow that you created, and then select Edit at the top.

Keep the following points in mind when you edit the stages of a business process flow: 

Business process flows can have up to 30 stages.

You can add or change the following properties of a stage: o

Stage Name: You can change the stage name after you create the stage.

o

Entity: You can change the entity for any stage except the first one.

o

Stage Category: A category lets you group stages by the type of action. It's useful for reports that will group records by the stage that they're in. The options for the stage category come from the Stage Category global option set. You can add more options to this global option set and change the labels of existing options. You can also delete options, but we recommend that you keep the existing options. If you delete an option, you won't be able to add it back later. If you don't want an option to be used, change the label to Do not use.

o

Relationship: Enter a relationship when the preceding stage in the process is based on a different entity than the current stage. For the current stage, select Select relationships, and then specify the relationship that should be used when the flow moves between the two stages. We recommend that you specify relationships, because they provide the following benefits: 

Attribute maps are often defined for relationships. These attribute maps automatically carry over data between records. Therefore, they help minimize the amount of data entry that's required.

When you select Next Stage on the process bar for a record, any records that use the relationship are listed in the process flow. Therefore, the reuse of records in the process is promoted. In addition, you can use workflows to automate the creation of records. Users then just have to select the workflow instead of creating a record. Therefore, the process is streamlined.

www.dynamicscompanions.com Dynamics Companions

- 190 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

o

Set Process Flow Order: If you have more than one business process flow for an entity (record type), you must specify which process is automatically assigned to new records. On the action bar, select Order Process Flow. For new records or records that don't already have a process flow associated with them, the first business process flow to which a user has access will be used.

o

Enable Security Roles: A user's access to a business process flow depends on the privileges that are defined for the business process flow in the security role that's assigned to the user. By default, only the System Administrator and System Customizer security roles can view a new business process flow.

Exercise - Create a business process flow that has conditions Business process flows guide you through the different stages of sales, marketing, or service processes, toward completion. For a simple process, a linear business process flow is a good option. But in more complex scenarios, you can use an enhanced business process flow that branches into different directions, depending on conditions within the flow. Branches are automatically selected in real time, based on rules that are defined in the process definition. 

If you have Create permissions on business process flows, you can use If‐Else logic to create business process flows that have multiple branches.

The branching condition can be formed from multiple logical expressions that use a combination of AND or OR operators.

For example, for the process of selling cars, you can set up a single business process flow that starts with a common qualification stage but then splits into separate branches, based on a rule: 

One branch manages the case of a customer who prefers a new car or a pre-owned car.

Another branch manages the case of a customer whose budget is above or below $20,000.

A third branch might be for purchasing or declining a maintenance or service plan.

The following diagram shows a business process flow that has branches.

Guidelines for business process flows that have branches Keep the following points in mind when you design a business process flow that has branches: 

A process can span a maximum of five unique entities.

You can use a maximum of 30 stages per process and a maximum of 30 steps per stage.

Each branch can be no more than five levels deep.

Branching rules must be based on the steps in the stage that immediately precedes them.

You can combine multiple conditions in a rule by using the AND operator or the OR operator, but not both.

www.dynamicscompanions.com Dynamics Companions

- 191 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you define a process flow, you can optionally select an entity relationship. This entity relationship must a one-to-many (1:N) relationship.

More than one active process can run concurrently on the same data record.

When branches are merged, either all the peer branches must be merged to a single stage, or each peer branch must end the process. A peer branch can't merge with other branches and end the process at the same time.

Note 

An entity that's used in the process can be revisited multiple times (that is, there can be multiple closed entity loops).

A process can go back to the previous stage, regardless of the entity type. For example, if the active stage is Deliver Quote on a quote record, process users can move the active stage back to the Propose stage on an opportunity record.

Dynamics 365 customer engagement example: Car selling process flow that has two branches Let's look at an example of a business process flow that has two branches. In this example, the business process flow is used for sales of new and pre-owned cars. First, we'll create a process named Car Sales Process. 1.

Launch Power Automate and sign in using your organizational account.

2.

In the left pane, select Flows.

3.

On the top bar, select New Business process‐‐from blank.

4.

In the Create business process flow pane, fill in the required fields: 

Display name: Enter Car sales process.

Name: A unique name that's based on the display name that you entered. You can change the name when you create the process, but you can't change it after the process has been created.

Common Data Service entity: Select the Lead entity. The entity that you select affects the fields that are available for steps that can be added to the first stage of the process flow. If you can't find the Lead entity, make sure that the Business process flows (fields will be created) option is set for that entity in the entity definition. You can't change the entity after you save the process.

5.

Select Create.

6.

Once the new page spins up in PowerApps, add the first stage to the process, name the stage Qualify, and add two data steps to it: Purchase Time frame and Car Preference.

7.

After the common Qualify stage, split the process into two separate branches by adding a Condition component:

www.dynamicscompanions.com Dynamics Companions

- 192 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

a.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Set up the condition with rules that meet your business requirements.

b. To add the first branch, which will be run when the condition is satisfied, add a Stage component to the Yes path of the Condition component. c.

To add the second branch, which will be run when condition isn't satisfied, add a Stage component to the No path of the Condition component.

Tip To create more complex branching, you can add another a Condition component to the No path of an existing Condition component. If Car preference = New, the process branches out to the New Car Sales stage, as shown here. Otherwise, the process goes to the Pre‐Owned Car Sales stage in the second branch, as shown here. After all the steps in either the New Car Sales stage or the Pre‐Owned Car Sales stage are finished, the process returns to the main flow, at the Deliver Quote stage.

Prevent information disclosure example There are a few things that you need to consider to prevent people from seeing specific information about a process flow. This section uses the example of a business process flow that has branches for processing a loan request at a bank. In the following diagram, the custom entities that are used in the stages are shown in parentheses. In this scenario, the bank loan officer needs access to the Request record, but she shouldn't have any visibility into the investigation of the request. At first glance, it looks as though we can easily meet this requirement by assigning the loan officer a security role that doesn't grant access to the Investigation entity. But let's look at the example in more detail to see whether things will really be that easy. Let's say that a customer submits a loan request for more than $60,000 to the bank. Here is a high-level view of the stages and branches: 

In the first stage, the loan officer reviews the request.

A branching rule checks whether the amount that's owed to the bank will exceed $50,000. If this branching rule is satisfied, the next stage in the process is to investigate whether the request is fraudulent.

If it's determined that the request is fraudulent, the process moves on to taking legal action against the requestor.

The loan officer shouldn't have visibility into the two investigative stages, because she doesn't have access to the Investigation entity.

www.dynamicscompanions.com Dynamics Companions

- 193 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

But if the loan officer opens the Request record, she can see the entire end-to-end process. Not only will she be able to see the Fraud Investigation stage, but she'll also be able to identify the outcome of the investigation, because she can see the Legal Action stage in the process.

The loan officer can preview the steps in the investigative stages by choosing the stage. Although she won't be able to see the data or the step completion status, she'll be able to identify the potential actions that were taken against the requestor during the Fraud Investigation and Legal Action stages.

In this process flow, the loan officer will be able to see the Fraud Investigation and Legal Action stages, and this ability constitutes improper information disclosure. Pay special attention to the information that might become disclosed because of branching. In our example, to prevent information disclosure, split the process into two separate processes: one for the request processing and one for the fraud investigation. The process for the loan officer will then look like this. The process for the investigation will be self-contained and will include the following stages. You'll have to provide a workflow to synchronize the Approve/Deny decision from the Investigation record to the Request record.

Exercise - Monitor flows You can view a summary of the number of times that each flow succeeded or failed today, yesterday, and on previous days. You can also explore details about each run, like when it ran, how long each step took, and, if a step failed, why it failed.

Prerequisites 

Install the Power Automate mobile app for Google Android, Apple iOS, or Windows Phone on a supported device. The screenshots in this unit were taken on the Apple iPhone version of the app, but the mobile app for Android and Windows Phone are similar.

If you don't already have a flow, create one on the Power Automate website. For easier testing, use a flow that you can trigger yourself instead of waiting for an external event.

The flow in this tutorial runs when you receive email from a specific address.

Tip For testing, you can set up the flow with your personal email address. Then, when the flow is ready for real use, you can set it up with a different address (for example, your manager's). When the flow runs, it sends a custom push notification to your phone.

Show a summary of activity 1.

If your flow hasn't run before, trigger a run to generate data.

www.dynamicscompanions.com Dynamics Companions

- 194 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

It might take some time for the data to appear in the app. 2.

Start the mobile app. Select the Activity tab. This tab organizes data by day, and today's data appears at the top. Each entry shows the name of the flow and icons that correspond to the flow's trigger events and actions. If at least one run of a flow has succeeded in a day, an entry shows the number of successful runs and the time of the most recent success. A different entry shows similar information if a flow has failed. If a flow sends push notifications, the text of the most recent notification appears at the bottom of the entry for successful runs.

Show details of a run 1.

In the activity summary, select an entry to show details for the most recent run. For each event and action, a symbol indicates whether the event or action succeeded or failed. If it succeeded, the amount of time that it took (in seconds) also appears.

2.

Tap Run history to list all runs of the flow. Then select a specific run to view its details.

Check your knowledge 1.

2.

What are connectors used for in Power Automate? 

Connectors are used to start a flow.

Connectors let you share an app.

Connectors let you connect to a service like Twitter.

How can you define who has privileges to create, read, update, or delete a business process flow instance? 

Only a system administrator has access privileges to new business process flows.

Only a system customizer has access privileges to new business process flows.

Activate the business process flow, and then define access privileges for users and administrators.

Activate the business process flow, and select Edit Security Roles, and define who will have privileges.

www.dynamicscompanions.com Dynamics Companions

- 195 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary Congratulations! You've expanded your skills for creating flows that let you do more while working less. In the previous modules for Power Automate, you learned how to build simple flows. You've now increased your knowledge by learning about complex data sources, flow scheduling, integration, and complex business processes.

Continue your journey Microsoft Learn provides several learning paths, based on your role and interests. Here are some ways that you can use Power Automate to get more done with less work when you use dynamics 365 and the Power Platform. Because these technologies work together, it's easy to measure your business, act on the results, and automate your workflows. 

In this Power Apps learning path, you'll learn how to build apps that use flows to track or update business processes on any device.

In this Power BI learning path, you'll learn how to turn your unrelated sources of data into coherent, visually immersive, and interactive insights.

In this Customer Service learning path, you'll learn how to capture, track, and follow up on sales leads, and how to connect to your customer relationship management (CRM) platform.

What's even more exciting is that you can do all this without writing a line of code!

www.dynamicscompanions.com Dynamics Companions

- 196 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use the Admin center to manage environments and data policies in Power Automate Tenant and environment admins use the Power Automate Admin center to manage data policies and environments for Power Automate deployments.

Learning Objectives In this module, you will: 

Learn about the Admin center

Learn how to import and export flows

Learn how to share flows

Prerequisites 

Signed up for Power Automate and a working mobile device with the Power Automate mobile app loaded.

Administer flows Welcome to the Admin center! The Admin center is the central location where tenant admins and environment admins manage an organization's data policies and environments. Any changes that you make in the Admin center are immediately available to users in the organization. In this module, you'll learn how to: 

Import and export flows.

Share flows.

Monitor flows.

Open the Admin center There are two ways to open the Admin center.

www.dynamicscompanions.com Dynamics Companions

- 197 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Option 1: Power Automate settings 1.

Go to Power Automate, and sign in by using your organizational account.

2.

Select the Settings button (the gear symbol), and then select Admin Center on the menu.

The Admin center is opened.

Option 2: Open the admin center directly 

Go directly to the Admin center, and sign in by using your work account.

Environments An environment is a space where you can store, manage, and share your organization's business data, apps, and flows. It also serves as a container to separate apps that might have different roles, security requirements, or target audiences. The way that you use environments depends on your organization and the apps that you're trying to build. Here are some examples: 

You can create separate environments to group the test and production versions of your apps.

You can create separate environments that correspond to specific teams or departments in your company. Each environment holds the relevant data and apps for each team/department.

You can create separate environments for different global branches of your company.

You can build all your apps in a single environment.

Data policies When you use Power Automate, the data is automatically protected with whatever security roles your organization already has in place. It isn't possible to use Power Automate to get access to information that the user doesn't already have access to in the organization. Some organizations may want to add an additional, optional layer of security that can proactively block flows that violate certain policies.

www.dynamicscompanions.com Dynamics Companions

- 198 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Export and import flows Power Automate allows you to export and then import a flow so that others can use it.

Export a flow 1.

Go to Power Automate, and sign in by using your organizational account.

2.

In the left pane, select My flows.

3.

For the flow that you want to export, select the More commands button (the three vertical dots), select Export, and then select Package (.zip).

4.

Fill in the package details:

5.

Name: Enter a name for the flow.

Environment: Enter the environment for the flow.

Description: Enter a description of the flow.

Review package content: Select export options, and add comments to provide instruction or add version notes.

Select Export to export the zip file. You can then select the folder to in which to download.

When you export a flow, the dependent resources for your flow are also exported into the package.

Import a flow After a flow has been exported, anyone that you send the zip file to can import it. 1.

Go to Power Automate, and sign in by using your organizational account.

2.

In the left pane, select My flows.

3.

Select Import.

www.dynamicscompanions.com Dynamics Companions

- 199 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

On the Import package page, select Upload, and then, in the dialog box, select the zip file that you exported. 

Back on the Import package page, select Import.

In the flow settings, you can select whether to create a new flow or update an existing one with the flow definition from the package.

You must also select the connections that are required to set up the flow as part of the import process.

The Import button should become available after you've configured all the required settings.

After the flow is completely imported, you will have a link to open it and see the flow in My Flows.

Learn how to distribute button flows In the Power Automate mobile app, you can share button flows with other users or groups in your organization. The users or groups with whom you share a button can then run it the same way they run their own buttons. You can also share a link to buttons that another person shared with you. You can stop sharing your buttons at any time. The screenshots in this unit were taken on a Apple iOS device. If you're using an Android or Windows device, what you see might differ, but the functionality is the same.

Prerequisites To share buttons, you need: 

An account that has access to Power Automate.

A flow to share.

A mobile device that has the Power Automate mobile app for Android, Apple iOS, or Windows Phone.

A person or group in your organization with whom to share your button.

Share a button You share a button by using the Buttons tab of the Power Automate mobile app. 1.

Start the Power Automate mobile app.

2.

On the Buttons tab, select the three dots next to the button that you want to share.

www.dynamicscompanions.com Dynamics Companions

- 200 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

On the pop up, select Invite others.

4.

On the following page you can manage users with whom you have already shared the flow. For this exercise, select Invite others again to continue with sharing.

5.

Search for and select the person or group that you want to share the button with.

6.

Select Send.

7.

On the page that states that the button sharing action was successful, select Done.

www.dynamicscompanions.com Dynamics Companions

- 201 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Require users to use their own connections When you share a button with other people, you can either let them use all the connections that the button uses or require that they use their own connections. Follow these steps to require the people with whom you share your button to use their own connections.

Note If you let other people use your connections, they can't access the credentials in your connection. They also can't reuse those connections in any other flow. 1.

On the page that appears immediately after you share a button, select Manage connections.

2.

Select Edit for the connection that you want to manage.

3.

Select Provided by user or your email address to specify whose connections must be used in the shared button.

You can view or change your selection at any time. a.

On the Flows tab, select the flow that you shared.

b. On the Users and connections page, on the Connections tab, select Edit for the button that you want to manage.

Stop sharing a button You can stop sharing a button by following these steps. 1.

On the Buttons tab, select the three dots next to the button that you want to share.

www.dynamicscompanions.com Dynamics Companions

- 202 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

On the pop up, select Invite others.

3.

On the following page you can manage users with whom you have already shared the flow. On this page, select the user which you wish to remove.

4.

On the user's page, select Remove user.

www.dynamicscompanions.com Dynamics Companions

- 203 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Wait for the removal action to be finished. The list on the Button users page is refreshed, and the user or group that you removed is no longer listed.

Monitor the run history You can view the whole run history, even for runs started by a person that a button is shared with. 1.

Start the Power Automate mobile app.

2.

Select the Activity tab to view the run history.

Use shared buttons Before you can run a button that someone has shared with you, you must add it to your Buttons tab from the Add buttons page. 1.

On the Buttons tab, select Get more (or the New buttons are available banner if it appears).

2.

Select the button to use. The button is immediately added to the Buttons tab. You can then run the button from the Buttons tab, just like any other button that's listed there.

Re-share a button You can share a link to a button that has been shared with you. 1.

On the Buttons tab, select the three dots next to the button that you want to share.

www.dynamicscompanions.com Dynamics Companions

- 204 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

Select Share button link.

3.

Select the app that you want to use to share the button.

4.

Follow the steps for sending a button to a person that you want to share it with.

Stop using a shared button If you no longer want to use a button that was shared with you, you can remove it. 1.

On the Buttons tab, select the three dots next to the button that you no longer want to use.

www.dynamicscompanions.com Dynamics Companions

- 205 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Remove.

Note After you remove a shared button, you can add it back by selecting Get more on the Buttons tab.

Check your knowledge 1.

2.

3.

After a flow has been exported, who can import the flow? 

Only System Customizers

Only System Administrators

Only the user that exported the flow

Anyone that receives the zip file can import it

Which of the following is a requirement to share button flows? 

An account that has access to Power Automate.

An account that is a System Customizer.

An account that is a System Administrator.

A SharePoint account and Power Automate sharing rights.

What are some actions for which you can use the Power Automate admin center? 

Connect to Dynamics 365 and write flows

Share and create button flows

Manage Environments and Data policies www.dynamicscompanions.com Dynamics Companions

- 206 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Import and Export flows

Summary Congratulations! You've grown your skills by administering flows. In the previous modules of this learning path for Power Automate, you learned how to build simple and more complex flows. Now you've learned how to take care of them when things aren't quite right. You learned how to: 

Export and import flows.

Share button flows with other team members.

Monitor flow activity.

Continue your journey Want to learn more about the Power Platform and how to solve problems? Check out these resources: 

Power Apps learning path. You'll learn how to build apps that use flows to track or update business processes on any device.

Power BI learning path. You'll learn how to turn your unrelated sources of data into coherent, visually immersive, and interactive insights.

Customer Service learning path. You'll learn how to capture, track, and follow up on sales leads and connect to your CRM platform.

Even more exciting, you can do all of this without writing a line of code!

www.dynamicscompanions.com Dynamics Companions

- 207 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Implement robotic process automation with Microsoft Power Automate, Teams, UI flows, and AI Builder Automate your approval processes, infuse intelligence, and integrate legacy apps with Power Automate, UI flows, and AI Builder, which are all part of Microsoft Power Platform.

Learning Objectives In this module, you will: 

Create a Power Automate flow to automate routing and approval of an invoice.

Use AI builder to create a prediction model to automatically parse information from sample invoice documents.

Implement robotic process automation with UI flows to automate entry of information into a legacy application.

Prerequisites 

Familiarity with the basic concepts of Power Automate

Be able to sign-in to Power Automate

Introduction Microsoft Power Platform is a powerful low code platform that helps you build intelligent modern apps and experiences around your data and business processes, even as a business user, without being a professional developer or data architect. Power Automate, a pillar of Power Platform, is used to automate repetitive business processes. With AI Builder and robotic process automation, businesses can take business process automation to a new level, by infusing intelligence into the automation and broadening the scope of use by integrating with legacy applications. In this module, you will: 

Create a Power Automate flow to automate routing and approval of an invoice.

Use AI builder to create a prediction model to automatically parse information from sample invoice documents.

www.dynamicscompanions.com Dynamics Companions

- 208 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Implement robotic process automation with UI flows to automate entry of information into a legacy application.

With each unit in this module we will walk you through the process of taking a simple Power Automate flow that routes an invoice to a Teams channel and quickly and easily add AI builder functionality to parse content needed to process the invoice, automate the approval process, and then use a UI flow to enter information into a legacy business application.

Build a Power Automate flow to route an invoice to a Teams channel Power Automate provides a low code platform for workflow and process automation. This will be the foundation upon which you will add additional functionality. To recap, the steps to build the basic flow to route an invoice to a Teams channel are as follows. You can download a sample pdf invoice file, by going to download sample invoices . 1.

Login to Power Automate .

2.

Select + Create from the left navigation bar.

3.

Select Automated flow.

4.

In the dialog box that appears: a.

Enter a name for the flow, Invoice Processing.

b. In the search box for selecting a trigger, type email, then select When an email arrives (V3). c. 5.

Select Create.

Create a connection to the inbox where you will receive the invoices. For the purpose of this exercise, if you don’t have a shared inbox, you can select your own inbox. a.

Select the ellipses on the top right corner of the trigger action box.

b. Under My connections, select your own inbox or add a new connection. c.

Select the email folder where invoices will arrive.

d. Select Show advanced options. e.

From the Has Attachment drop-down box, select Yes.

f.

From the Include Attachments drop-down box, select Yes.

g. Under Subject Filter, in the String to look for in the subject line field, type Invoice. h.

Select Hide advanced options to collapse the trigger box.

www.dynamicscompanions.com Dynamics Companions

- 209 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

6.

Select + New step, to add a new action.

7.

For the new action you will need to select the required connector and action for that connector. a.

Since the flow needs to route and post the invoice to a Teams channel, you will need to connect your flow to Teams (enables integration with Teams). Select the Teams connector.

b. From the list of actions available for the Teams connector, select Post a message (V3). 8.

In the Teams action box: a.

Select the team, where you want to post the message.

b. Select the channel. c.

Compose the message to post. You can use information from previous steps by selecting the dynamic values icon (Control+Space). Use the From field from the email step. If you do not see this option in the list, enter it search box, then select it.

www.dynamicscompanions.com Dynamics Companions

- 210 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Save

10. To test the flow, select Test from the top right corner of the page. a.

Select, I’ll preform the trigger action.

b. Create an email, with an attachment, and send it to the same inbox you configured in the flow. c.

Check the Team channel to verify the message was posted.

Use AI Builder to build a forms processing model AI Builder is a Power Platform capability that enables you to add intelligence to your automated processes, predict outcomes, and help improve business performance. There is great value in being able to intelligently extract specific information from a form so that it is available to use as part of a business process automation. To recap, here are the steps to create the forms processing model for the sample invoices. The sample files can be downloaded by going to download sample invoices .

Note Some features in AI Builder have not yet released for general availability (GA), and remain in preview status. In addition, AI Builder requires the use of Common Data Service, which is the data platform for Power Apps and allows you to store and manage business data. Refer to the Summary and Resources section of this module for links to additional information.

www.dynamicscompanions.com Dynamics Companions

- 211 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

In your demo tenant navigate to Power Automate. Make sure you are in the same environment in which you created the flow.

2.

In the left navigation click AI Builder, then click Build.

3.

On the Enhance your business with AI page, under Refine a model for your business needs click Form Processing (preview).

4.

In the Form Processing (preview) dialog, on the Get started tab, under Name this AI model click the field and type Contoso Invoice Processing (or any meaningful name you choose), then click Create.

5.

On the Add document examples page, click Add documents.

6.

Under Select a data source, select the option that applies, based on where you stored the invoices; for example, if you saved the files on your local machine, select Upload from local storage, then navigate to the location where you saved the file and select the following documents: a.

Contoso INVOICE (Fabrikam_UK).pdf

b. Contoso INVOICE (Litware_CAN).pdf c.

Contoso INVOICE (Proseware_NY).pdf

d. Contoso INVOICE (TailSpin).pdf e.

Contoso INVOICE (Wing Tip).pdf

7.

Click Open.

8.

Click Upload 5 documents.

9.

Click Close.

10. On the Add document examples page, at bottom left, click Analyze. 11. Below Select the form fields you want to save page, click the tile displaying the invoice. 12. Click the data highlighted with blue dashed lines. As you click on each item, a pop-up box opens. Select the check mark below the data value (it will get added the Selected fields pane on the right side of the screen). a.

Select the Due Date value highlighted with the blue dashed line, then select the check mark.

b. Select the Bill to value highlighted with the blue dashed line, then select the check mark. c.

Select the Balance due value highlighted with the blue dashed line, then select the check mark.

d. Select the Contact value highlighted with the blue dashed line, then select the check mark.

www.dynamicscompanions.com Dynamics Companions

- 212 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

13. At top right, click Done. 14. Click Next. 15. Click Train. It may take a few minutes for training to complete. 16. Click Go to Details page. 17. On the Models > Contoso Invoice Processing page, in the Training document tile, click Publish or you may choose to do a Quick test, prior to publishing, as follows: a.

Select Upload from my device.

b. Upload one of the pdf invoice files and select Open. c.

One the quick test is done, you will see a pop-up box that shows the invoice with the fields that were selected as part of the modeling, highlighted. Select Close.

d. Select Publish. With the predict model published, you can now incorporate it into your flow, to automate the invoice approval process.

Use Power Automate and your AI model to automate the invoice approval process Power Automate flows can be enhanced by using prebuilt or custom AI Builder models. To recap, here are the steps to incorporate the forms processing model, in to the flow created in unit 1; and automate the routing and approval of the invoice.

Note The predict action, which is based on AI Builder and requires the use of Common Data Service, is a premium connector. Refer to the Summary and Resources section of this module for links to additional information. Also, some features in AI Builder have not yet released for general availability (GA), in certain regions, and remain in preview status. To use AI Builder models in Power Automate, while in preview mode, you have to create the flow inside a solution (the steps below will not apply). To learn more, visit Create a flow in a solution. 1.

Open the flow you created in unit 1 a.

Login to Power Automate .

www.dynamicscompanions.com Dynamics Companions

- 213 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

b. Select My flows from the left navigation panel and then click on the edit icon (or select the ellipses and then select Edit) for flow previously created, Invoice Processing. 2.

Click the arrow beneath the trigger statement to Insert a new step and select Add an action.

3.

In the search bar, enter predict, then select Predict (Premium) Common Data Service (current environment).

4.

To select the model you created in the previous unit: a.

In field labeled Model, select the drop-down and in the search box enter the name of the model you created in the previous unit, Contoso Invoice Processing.

b. For Document type, enter the type of data to send to the predict model. Use the dynamic value selection, from the previous step, by selecting Attachments Content-Type.

www.dynamicscompanions.com Dynamics Companions

- 214 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

c.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For Document, select the add dynamic value icon and select Attachments Content.

d. Click Predict to collapse the box. 5.

Drag the Post a message (V3) action into the Apply to each box, so that it sits under the predict action.

6.

Select the arrow underneath the Predict action and select Add an action.

7.

Select the Teams connector. a.

From the set of Microsoft Teams actions, select Post a choice of options as the Flow bot to a user.

b. In the Options Item – 1 field, enter, Approve. c.

Select Add new item.

d. In the Options Item – 2 field, enter, Reject. e.

Select Add new item.

f.

In the Options Item – 3 field, enter, Approve Manually.

g. In the Headlines field, enter New invoice received. h.

Enter the recipient's email (this person who will approve/reject invoices). For test purposes, you may choose to enter your email.

www.dynamicscompanions.com Dynamics Companions

- 215 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

i.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the message field, compose the message you want to send. The message will include information from the previous steps, specifically the information from AI Builder and from the email. Type the text you want followed by the values from the previous steps: i. In the message box, type An invoice was received from: ii. Select the Add a dynamic value icon. You want to select dynamic content from When a new email arrives (V3). In the search box, type from, and select From. iii. Press Enter then type The contact is: iv. Select the Add a dynamic value icon. You want to select dynamic content from AI builder that represents the contact. Select Contact value. v. Press Enter then type The due date is: vi. Select the Add a dynamic value icon. You want to select dynamic content from AI builder that represents the Due Date. Select Due Date value. vii. Press Enter then type The balance due is: viii. Select the Add a dynamic value icon. You want to select dynamic content from AI builder that represents the Balance due. Select Balance due value. ix. Press Enter then type Would you like to approve this invoice?

x. Click Post a choice of options as the Flow bot to a user to collapse the box. 8.

Now add the switch statements to define how the invoice is routed, based on the selected option. Select Add an action (you are adding this action inside the Apply to each box, as you want to this action to happen with each invoice attachment received).

9.

Select Control.

10. From the set of control actions, select Switch. Here you define the actions for each of the three cases (approve, reject, manually approve). a.

For the Approve case: i. For the On field, select the Add a dynamic value icon and select selectedOption. ii. For the first Case, set the Equals field to Approve. iii. Select Add an action. iv. In the search box, type Outlook, and select the Office 365 Outlook connector.

www.dynamicscompanions.com Dynamics Companions

- 216 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

v. In the search box for the Office 365 Outlook actions, type Reply and select Reply to email (V3). vi. In the Message Id field, select the Add a dynamic value icon (if you don't see it, click on the field). vii. From the list of dynamic values associated with When a new email arrives (V3). Select Message Id. viii. In the Body field, enter the desired message. For simplicity type Invoice approved. ix. To collapse the box, click on Reply to email (V3). b. For the Reject case: i. Select the Add Case Icon (plus sign in the circle). ii. In the Case 2 equals box, enter Reject. iii. Select Add an action. iv. In the search box, type Outlook, and select the Office 365 Outlook connector. v. In the search box for the Office 365 Outlook actions, type Reply and select Reply to email (V3). vi. In the Message Id field, select the Add a dynamic value icon (if you don't see it, click on the field). vii. From the list of dynamic values associated with When a new email arrives (V3). Select Message Id. viii. In the Body field, enter the desired message. For simplicity type Invoice rejected. ix. To collapse the box, click on Reply to email (V3). c.

For the Default case (Process Manually), you will use the Post a message (V3) action that was created in the original flow created in unit 1. Simply drag the box Post a message (V3) into the default case.

11. Save the flow. 12. Select Test from the top right of the page. 13. choose, I'll perform the trigger action. 14. Select Test. 15. Send an email to the Inbox used to receive the emails with the attached invoices, for approval. 16. Teams will send a notification Flow sent a card.

www.dynamicscompanions.com Dynamics Companions

- 217 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

With the routing approval process automated, the last step is to automate the entry of information into the legacy business application.

Build a UI flow to automate data entry into a legacy application UI flows bring Robotic Process Automation (RPA) capabilities to Power Automate. By recording and playing back user interface actions (clicks, keyboard input, etc.) for Windows and Web applications that don't have easy-to-use or complete APIs., UI flows can automate repetitive tasks. The final step to fully automate the invoice approval process is to take the information that the UI builder model parsed from the invoice and have the flow automatically enter the information into the business legacy application. Watch this video to learn how to build a UI flow that you can use to automate data entry in your desktop legacy application. The video showed steps for building a UI flow to automate the steps associated with a specific desktop legacy application. Your application will be different. The prerequisites and general steps for creating a UI flow, however, are common. Listed below are links with detailed information to guide you through the setup and creation of UI flows. 

Set up UI flows

Create and test desktop UI flows

Use inputs and outputs in desktop UI flows

Edit desktop UI flows

Run attended and unattended UI flows

Note When running a Power Automate flow that includes a UI flow, it is currently necessary that the computer in which the flow is running be configured with a single display monitor. Business can automate their approval processes, infuse intelligence, and integrate their legacy apps in just a fraction of the time, using Power Automate and the new Robotic Process Automation capability alongside AI Builder, which are all part of the Microsoft Power Platform.

www.dynamicscompanions.com Dynamics Companions

- 218 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Knowledge check 1.

Which of the following statements is correct, regarding AI models? 1. You can use your published AI models, as well as some AI Builder prebuilt models in Power Automate.

2.

2.

Only prebuilt AI models can be used with Power Automate, there is no mechanism to use your own AI models.

3.

You must create your own AI models to use with Power Automate, there are no prebuilt models.

Which of the following statements is correct, regarding UI flows? 

UI flows can be used to automate only Windows based applications.

UI flows can automate repetitive tasks in Windows and Web applications.

UI flows can be used to automate only Web based applications.

Summary and resources Business can automate their approval processes, infuse intelligence and integrate their legacy apps in just a fraction of the time, using Power Automate and the new Robotic Process Automation capability alongside AI Builder, which are all part of the Microsoft Power Platform. Now that you have reviewed this module, you should be able to: 

Create a Power Automate flow to automate routing and approval of an invoice.

Use AI builder to create a prediction model to automatically parse information from sample invoice documents.

Implement robotic process automation with UI flows to automate entry of information into a legacy application.

Key takeaways Here are the three key takeaways: 

Power Platform is powerful low code platform that helps you build intelligent, modern apps and experiences around your data and business processes, even as a business user, without being a professional developer or data architect.

AI Builder is a Power Platform capability that enables you to add intelligence to your automated processes, predict outcomes, and help improve business performance. AI Builder is a turnkey solution that brings the power of Microsoft AI through a point-and-click experience and is directly integrated into Power Apps and Power Automate.

UI flows bring Robotic Process Automation (RPA) capabilities to Power Automate. You can use UI flows to automate repetitive tasks in Windows and Web applications. UI flows records and plays

www.dynamicscompanions.com Dynamics Companions

- 219 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

back user interface actions (clicks, keyboard input, etc.) for applications that don't have easy-touse or complete APIs available.

Resources Use these resources to discover more.

Tip To open a resource link, right-click and select "Open in a new tab or window". That way, you can check out the resource and easily return to the module tab to unlock your achievement when done.

Build a Power Automate flow to route an invoice to a Teams Channel 

Power Automate

Learn to automate

Licensing overview for Power Platform

Use AI Builder to build a form processing model 

What is AI Builder?

Overview of form processing model

Use Power Automate and your AI forms processing model to automate the invoice approval process 

Use form processing model in Power Automate

Solutions Overview

Build and use a UI flow to automate data entry into a legacy application 

Introduction to UI flows

Set up UI flows

Create and test desktop UI flows

Use inputs and outputs in desktop UI flows

Edit desktop UI flows

Run attended and unattended UI flows

www.dynamicscompanions.com Dynamics Companions

- 220 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use AI Builder in Power Automate Learn the basics of AI Builder usage in Power Automate and how it can benefit your organization.

Learning Objectives In this module, you will: 

Explore how using AI Builder in Power Automate can save you time.

Learn how to use AI Builder actions in Power Automate.

Discover advanced AI Builder usage in Power Automate.

Prerequisites Before you begin this course, we recommend that you read the Get started with AI Builder module and the "What is AI Builder?" documentation. 

Access to Common Data Service

An AI Builder add-on or trial

Introduction to AI Builder usage in Power Automate Microsoft Power Automate is a great way to automate AI Builder usage and exploit AI model results at scale.

AI Builder usage in Power Automate Power Automate offers AI Builder actions that enable usage of all model types in flows. Adding AI Builder actions in your flow allows you to: 

Perform model inference by using outputs of upstream actions (email attachments received, SharePoint files dropped, created records in a Common Data Service entity, and so on).

Process model inference results in downstream actions (send by email, store in Common Data Service records, message in Teams, and so on).

The following illustration shows a simple flow with three main stages:0 1.

Receive an email in Microsoft Outlook.

2.

Detect sentiment of the email body by using the AI Builder sentiment analysis model.

3.

Send an email notification with the sentiment detected in the email by using the Overall text sentiment output from the AI Builder model

www.dynamicscompanions.com Dynamics Companions

- 221 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

AI Builder in Power Automate saves time This section describes various use cases that can be fulfilled by using AI Builder and Power Automate.

Invoice processing Companies often receive invoices in large quantities and from a variety of sources, such as mail, fax, email, or in person. Processing these documents and manually entering them into your database can take considerable time. This process can be greatly improved by: 

Using the AI Builder form processing model to extract the fields and tables from your documents.

Creating a Power Automate flow to automatically move information into your database.

Analyze email sentiment Employees might want to process emails according to their overall sentiment, for example: 

If my boss is angry, I'd like to know the purpose right now.

If my customer is not satisfied, I need to answer immediately to avoid generating more frustration.

After sharing a document, I want to track the positive and negative feedback.

www.dynamicscompanions.com Dynamics Companions

- 222 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

AI Builder allows you to analyze overall sentiment of a text and even the sentiment of each sentence. By using a Power Automate flow, you can apply the AI Builder sentiment analysis model on receipt of an email and be notified of the sentiment of important emails to you. You can also combine the sentiment analysis with key phrase detection by using the AI Builder key phrase extraction model.

Dematerialize documents Companies can have multiple sites in which some key information is still entered on paper form. Afterward, an agent will manually enter the form content into a centralized tool. This process can be improved by using Power Automate and AI Builder in the following ways: 

The agent takes a picture of each audit record and saves it in a folder.

A Power Automate flow processes all new pictures in the folder, sends them to your AI Builder text recognition model to extract the forms' information, and then saves them in the centralized tool.

Similar processes could be used to record business cards at scale by using the AI Builder business card reader model.

Filter support requests by language Typically, support teams receive numerous requests from customers worldwide. The team in charge of a request can vary, depending on the language. Therefore, it's important to detect language as quickly as possible to redirect requests to the relevant teams. To solve this use case, you can build a Power Automate flow that: 

Checks for the language of a received email by using the AI Builder language detection model.

Routes the email into the mailbox of the team in charge, depending on the language that is detected.

Categorize feedback A public-facing company might need to categorize feedback that they receive for more relevant processing. For example, a hotel might need to know if feedback targets check-in, rooms, staff, or restaurant. A company as such can fulfill this scenario by creating a flow that would perform these two actions: 

Get new feedback: o

Power Automate gets data directly from external sources, for example, new messages on Twitter. A flow could be triggered on tweets that mention the company name.

o

Power Automate gets data from an aggregated data source, for example, an entity in Common Data Service. A flow could be triggered on new record creation.

www.dynamicscompanions.com Dynamics Companions

- 223 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Categorize the feedback by using the AI Builder category classification model.

Exercise - Use AI Builder actions in Power Automate In this section, you will discover and use AI Builder actions in Power Automate through the creation of a simple flow. Start by signing in to Power Automate and then following all instructions in this section.

Create a flow from a solution To add AI Builder actions in a flow, create the flow from a Common Data Service solution. 1.

Go to Solutions from the navigation bar on the left.

2.

Create a new solution called My AI Builder solution and then open it.

3.

Select +New > Flow in the action bar on the top of the screen. The flow designer screen appears and asks you to choose the trigger action.

4.

In the Triggers section, select Manually trigger a flow > + Add an input > Text. Name your input My Text, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 224 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select + New step. You will now add an AI Builder action.

Search for and add an AI Builder action In this example, you will add the AI Builder action that allows sentiment analysis. Choose one of the following options to help you accomplish this task: 

Search for intent, for example, "Analyze sentiment."

Open the AI Builder action group.

This action group lists all available AI Builder actions. You can pick the action from that page.

www.dynamicscompanions.com Dynamics Companions

- 225 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use the generic Predict action that allows you to use any type of model.

For this exercise, select the Analyze positive or negative sentiment in text action.

Configure the AI Builder action Each AI Builder action has different parameters, depending on the underlying model requirements. For the AI Builder sentiment analysis model, Language and Text are the two mandatory fields to fill in. 1.

In the Language field, select English as the language.

2.

In the Text field, select My Text, which is defined in the trigger action.

www.dynamicscompanions.com Dynamics Companions

- 226 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The My Text value will be provided during flow testing, so you don't need to focus on it right now. 3.

Select Save. Your flow is now saved with an autogenerated name. You can change it by selecting the generated name on the upper-left corner of the flow designer screen. Name your flow My AI Builder flow.

Use the model's inference For this exercise, you will use a Microsoft Excel file in OneDrive to store the text sentiment that is detected by the AI model. 1.

Create an Excel file named AI Builder results.xlsx in your OneDrive.

2.

In this file, insert a table with two columns and then save the file (make sure that you use the Insert > Table function of Excel).

3.

In My AI Builder flow, select + New step and then add the Add a row into a table action from Excel Online (Business).

4.

Complete the Location, Document Library, and File fields to point to the Excel file on your machine.

5.

In the Table field, select the name of the table that you created in your Excel file.

6.

In the Column 1 field, add My Text, and in the Column 2 field, add Overall text sentiment.

www.dynamicscompanions.com Dynamics Companions

- 227 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

7.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Save.

Test the flow Before productizing a flow, it's always a good idea to test it during design phase. 1.

Select Test on the upper-right corner of the flow designer screen.

2.

Select I'll perform the trigger action and the select Save & Test.

3.

Provide the value of the My Text field from the trigger action. This text is what you want to analyze the sentiment for.

4.

Select Run flow. If your flow ran successfully, you would see all steps shown with a green tick.

www.dynamicscompanions.com Dynamics Companions

- 228 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

You can expand the actions to view the running inputs and outputs of each action, which is a good way to debug your flow.

6.

Check that the line has been correctly added in the Excel file.

Congratulations, you have successfully created your first AI Builder flow. For more information, see Use AI Builder in Power Automate .

Advanced usage of AI Builder in Power Automate In this section, you will discover how to install your AI Builder flows to fulfill your business scenarios.

AI Builder flow templates Power Automate templates contain preconfigured logic that eases creation of flows for specific business purposes. To create a flow from an AI Builder template, follow these steps: 1.

Select the My templates tab in the left menu. The list of available templates will appear.

2.

Enter AI Builder in the search bar and then press the Enter key. All AI Builder templates will be displayed, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 229 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Send a notification with the sentiment of manager's email using AI Builder template. You will see a summary of the template with a list of the connections that will be used.

www.dynamicscompanions.com Dynamics Companions

- 230 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Continue. 4.

A preconfigured flow appears (at this stage, the flow is not yet saved)

You can save the flow as-is or update it at your convenience:

www.dynamicscompanions.com Dynamics Companions

- 231 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Modify existing actions: input parameters, action name, or advanced parameters

Add new actions

Remove existing actions (this step will likely break the actions downstream)

Save the flow and then test it.

Create a flow from AI Builder studio From AI Builder studio, you can launch the creation of a flow by using your favorite model. The following example shows a custom form processing model. The detail page of the model contains a Use model button (the model must be published). Selecting this button will open a right panel that offers multiple options, as shown in the following figure.

Selecting + New flow opens the screen where you can create a flow from a template.

www.dynamicscompanions.com Dynamics Companions

- 232 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Selecting Continue opens a preconfigured flow with the custom model selected in the AI Builder action.

Check your knowledge 1.

What is the purpose of using Power Automate flows for AI Builder?

www.dynamicscompanions.com Dynamics Companions

- 233 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To easily create AI models

Automatically create applications that use AI models

Automate and use AI models at scale

Schedule training of your AI models

Where can you find preconfigured AI Builder flows that you can use to build your own flow? 

My flows

Templates

Solutions

Power Apps

How can you incorporate AI Builder logic in a Power Automate flow? 

By adding a new step in your flow and searching for the AI Builder action name

By developing your own AI Builder connector

By selecting AI Builder in the trigger action of your flow

By creating a Power Automate version of the AI model

Summary In this module, you learned how to: 

Use AI Builder in Power Automate to help you save time.

Create a Power Automate flow by using an AI Builder action.

Start with advanced AI Builder flows in Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 234 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T04: Manage permissions and administration for Common Data Service Do you need to manage user access rights? In this learning path, you will learn how to manage permissions associated with environments and entities. You will also learn about different administrative portals and how to access each. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Many of the capabilities and exercises within this learning path require you to be a member of the Administrator Role in an environment AND you must have a valid Power Apps license. If you have not been added to the Administrator role or do not have Power Apps license assigned to you, you should create a personal environment by accessing the Community Power Apps plan and setting up a personal environment by following the directions referenced in the summary section of module one. The Community plan will allow you to use one environment (your Developer environment), create an instance Of Common Data Service and access all capabilities of a Power Apps license. Sign up for a Community Power Apps plan now using the link in the summary section of this module one if you want to follow along with the instructions outlined in this learning path. Restrictions - The Community Power Apps plan lets you try out aspects of Power Apps and Common Data Service but you cannot use it for productions solutions and you cannot publish and share any Power Apps you create in this environment.

www.dynamicscompanions.com Dynamics Companions

- 235 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with security roles in Common Data Service Do you want to use security roles to limit user permissions? This module will show you how you can set permissions to limit access to an environment or limit which users can view, edit, or delete data in an environment within Common Data Service.

Learning Objectives In this module, you will: 

Learn about security roles and apply them to users in an environment.

Learn how to add users to an environment.

Identify default security roles.

Create a custom role.

Create a custom security role and assign it to entities and users.

Prerequisites Understand the topics covered in the Get started with Common Data Service learning path.

Introduction to environment roles Each environment has zero or one instance of a Common Data Service database, and your organization can have many environments that are available to many different groups of users at a time. It is common practice to set up an environment so you can limit who can access the data, apps, and workflows within it. Classic software lifecycle management provides a good use case of why you might want to set up different environments in Common Data Service. Consider the following example. It is common to segment environments for development, test, and production. Common Data Service allows you to set up a development environment and limit access so only developers and a few managers or test users have permission to access the data and apps in that development environment. You can then set up a test environment and set up permissions so that a few test users and developers have access to it and the data within the instance of Common Data Service within that environment. Finally, you can set up production environment permissions so that a wide audience of users has access to the production environment and the data in the instance of a Common Data Service database, Power Apps, and Power Automates within that production environment.

www.dynamicscompanions.com Dynamics Companions

- 236 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Important Access to an environment does not give a user access to any data, apps, or workflow within that environment. Users must be given explicit access to data by an administrator in Common Data Service while the maker who creates an app, connector, or workflow must grant access to their work products.

Understand environment roles You can manage environment security by using roles and then adding users to the environment and assigning roles to users. A role has certain permissions that are associated with it, and you can associate a user with one or many roles. Environments have two built-in roles that provide access to permissions within an environment, and you'll assign users to one of these two roles when considering what permissions you want to give to a user in an environment. The built-in environment roles are: 

System Administrator

Environment Maker

This unit examines each role to help you understand how it works within an environment.

Important A user is automatically associated with the Environment Maker role when they are added to an environment.

System Administrator role The System Administrator role can perform all administrative actions on an environment, including the following tasks: 

Add or remove a user or group from either the Environment Admin or Environment Maker role.

Provision a Common Data Service database for the environment.

View and manage all resources that are created within an environment.

Set data loss prevention policies.

Environment Maker role The Environment Maker role can create resources within an environment such as apps, connections, custom connectors, gateways, apps that use Power Apps, and flows that use Power Automate. The following applies to members of the Environment Maker role: 

Environment Makers can distribute the apps that they build in an environment to other users within an organization by sharing the app with individual users, security groups, or to all users in the organization.

www.dynamicscompanions.com Dynamics Companions

- 237 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Users or groups that are assigned to these environment roles are not automatically given access to the environment's database (if it exists) and must be given access separately by a Database owner.

Whenever a new user signs up for Power Apps, they are automatically added to the Maker role of the default environment.

When you add a user to an environment, they are assigned two roles by default. o

Common Data Service User (this role is created when you instantiate an instance of a Common Data Service database and all users in the environment are assigned this role)

o

Environment Maker

Users or security groups can be assigned to either of these two roles by a System Administrator from the Power Apps Administration Center.

Adding or disabling an environment user You can add users to any environment that you create in Common Data Service. The following steps will help you add users to an environment. 1.

Sign in to Power Apps.

2.

Select the gear icon in the ribbon and select the Admin Center option.

3.

Select an environment.

4.

Select the Security option, Users + Permissions, and then Users.

5.

Add one or more users by entering their name and email address.

6.

Select the Add Users button in the ribbon.

If you want to disable a user within an environment, remove a license from the user or remove the user from the security group that's associated with an environment. Removing a user from the security group doesn't remove the user's license. If you want to make the license available to another user, you have to remove the license from the user account that was disabled. Removing a license, disabling a user, and removing a user from a security group is done with the Microsoft 365 admin center. For more information, see Disable a user account in an environment.

Understand user security roles and security role defaults Roles are groups of permissions that you can assign to a user to grant them access and various capabilities and functionality like read, delete, or edit of records in an entity within an environment. Roles are granular and can be assigned to one or many entities in an environment. Roles can also control certain actions like the ability to create a custom entity or option sets. Additionally, users are associated with one or many roles, and associating a user with a role gives them access to data and functionality that is specified within that role.

www.dynamicscompanions.com Dynamics Companions

- 238 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

User security roles are either: 

Standard and created with every instance of Common Data Service.

Custom and created by an administrator.

This unit examines each type of security role.

Default user security roles When you create a new instance of Common Data Service in an environment, a database is created with standard entities and several default security roles are created. The following predefined roles are available every time you create a Common Data Service environment by using the Power Apps portal. Unless otherwise noted, all the privileges have global scope. Common Data Service includes several default roles with different access levels to standard entities and actions. The default standard roles are listed in the following table. Description

Security role

Privileges

System Customizer

Create (self), Read (self), Write This role has full permission to customize the environment. However, u (self), Delete (self), Customizations can view records only for environment entities that they create. To lear required for customization.

Common Data Service User

Read, Create (self), Write (self), Delete (self)

Users who have this role can run an app in the environment and perfor the records that they own.

Delegate

Act on behalf of another user

This role lets code run as a user or to impersonate another user. This ro with another security role to provide access to records. To learn more, another user.

Tip Add the System Customizer role to a user if you want them to be able to create new entities. When you add a user to an environment in Common Data Service, the user is automatically assigned to the following: 

Security user roles - Common Data Service User

Environment roles - Environment Maker

Create a custom role Common Data Service has many standard default roles, but there might be times when you want to define a custom security role. Common Data Service supports the following eight different record-level privileges that can be used to define how a user interacts with data for one or more entities for use in building a custom role. The available record-level privileges for custom roles include:

www.dynamicscompanions.com Dynamics Companions

- 239 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create - Required to make a new record. The records that can be created depends on the access level of the permission that is defined in your security role. Read - Required to open a record to view the contents. The records that can be read depends on the access level of the permission that is defined in your security role. Write - Required to make changes to a record. The records that can be changed depends on the access level of the permission that is defined in your security role. Delete - Required to permanently remove a record. The records that can be deleted depends on the access level of the permission that is defined in your security role. Append - Required to associate a record with the current record. For example, if a user has Append rights on an opportunity, the user can add a note to an opportunity. The records that can be appended depends on the access level of the permission that is defined in your security role. Append To - Required to associate the current record with another record. For example, a note can be attached to an opportunity if the user has Append To rights on the note. The records that can be appended to depends on the access level of the permission that is defined in your security role. Assign - Required to give ownership of a record to another user. The records that can be assigned depends on the access level of the permission that is defined in your security role. Share - Required to give another user access to a record while keeping your own access. The records that can be shared depends on the access level of the permission that is defined in your security role. These record-level privileges can be grouped as needed and associated with a custom role. That custom role can then be applied to one or many entities as needed.

Tip Roles can be copied so you can quickly create similar roles that might be slightly different.

Create a custom security role and assign to entities and users This lab will show you how to create a new role and associate that role with a custom entity. Then, you can associate users to the new role so they can access the data in the custom entities as needed. To grant access, you will need to do the following: 

Create a new user security role or amend an existing user security role to include settings for the custom entity.

Assign users to the security role.

To get started, use the following steps to create a new security role. 1.

Sign in to Power Apps as an administrator.

2.

Select the gear icon in the menu and select Advanced Customizations.

www.dynamicscompanions.com Dynamics Companions

- 240 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

Select Security Roles. Note that this step can take a little time, depending on the number of instances in your tenant.

4.

Select New in the menu bar, which will open the security role designer.

5.

Enter a name for your security role in the Role Name field.

www.dynamicscompanions.com Dynamics Companions

- 241 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

6.

Locate the entities that your app uses by selecting each tab in the security role designer. If your entities are custom, they will be under the Custom Entities tab.

7.

When you have located your entities, select the privileges that you want to grant your users, such as Read, Write, Delete, and so on. Select the scope for performing that action by selecting the name of the entity. Scope determines how deep or high within the environment's hierarchy that the user can perform a particular action.

8.

Select Save and Close.

Congratulations, you have created a new custom security role. Next, you will assign users to this role.

www.dynamicscompanions.com Dynamics Companions

- 242 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To assign a user to a security role, you need to be a member of the System Administrator role in the current environment and then follow these steps: 1.

Sign in to Power Apps as an admin, select the settings gear, and then select Admin Center.

2.

In Power Apps admin center, select the environment where you want to update a security role.

3.

Select the Security tab.

4.

Verify if the user(s) already exists in the environment by selecting View the list of users in the environment. If the user is not on the list, go to step 5. Otherwise, you can skip to step 6.

5.

In case a user does not exist in the environment, you can add the user by entering the user's email address in your organization and then selecting the Add user button.

6.

After you know the user(s) whom you want to assign a security role to exists in your environment, select the Assign security roles button.

7.

Select the check boxes next to the user(s) that you want to assign and then select Manage Roles.

www.dynamicscompanions.com Dynamics Companions

- 243 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

In the Manage User Roles dialog box, in the Role Name section, select the check boxes next to the role(s) that you created in the previous section and make sure to also select the Common Data Service User role (if it wasn't already). The Common Data Service User role must be assigned to any user who wants to use your app or access Common Data Service.

9.

Select OK to assign the role(s) to the user that you selected.

Check the roles that a user belongs to Checking the roles that a user belongs to is simple and you can do it from within Power Apps with the following steps: 1.

Sign in to Power Apps as an admin.

2.

Open the Environments option on the left-hand side of the page.

3.

Select the environment where you want to check the user's permission settings.

4.

Select the Security tab.

5.

Select the list of users hyperlink under Step One ‐ Add User option on the screen.

6.

Select the check box next to the name of the user to view the security roles that the user has been assigned to.

www.dynamicscompanions.com Dynamics Companions

- 244 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

7.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Manage User Roles dialog box, select Manage Roles in the top menu to view user roles that are assigned to the user.

Check your knowledge 1.

2.

3.

Which of the following is not a User Security role? 

System Administrator

Delegate

Common Data Service User

System Customizer

Which of the following statements is true about users? 

You can't add users to access data in Common Data Service.

Public users outside of your Azure Active Directory can access Common Data Service data.

You can enable anonymous access to any data in Common Data Service.

You can add users to access data in Common Data Service from within your Azure Active Directory.

Adding a user to Common Data Service automatically assigns that user to all the following roles except which one? 

Common Data Service User

Environment Maker

System Customizer

www.dynamicscompanions.com Dynamics Companions

- 245 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary In this module, you learned about security and the user in Common Data Service. In addition, you learned the following: 

What Environment Security roles are in Common Data Service

How to add or disable a user within an environment

What User Security roles are, and which are assigned by default when you add a new user to an environment

How to create a custom security role

How you can check the roles that are assigned to a user

The following links were referenced within this module: 

Power Platform Admin Portal

Power Apps

www.dynamicscompanions.com Dynamics Companions

- 246 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use administration options for Common Data Service Do you need to use administration options that are available for Common Data Service? This module will show you how you can use solutions within Common Data Service and administer environments.

Learning Objectives In this module, you will learn how to: 

Administer Common Data Service.

Identify the different portals that are available for Common Data Service.

Prerequisites A basic understanding of what a database is and its role within a software solution.

Introduction to the Power Platform Admin Center portal Most of the administration settings that you'll need are available in the Power Platform Admin portal. You should always check for administration settings as your first step when looking to administer Common Data Service. Settings are grouped into the following broad categories. They are accessible by selecting the link on the left-hand side of the portal. 

Environments - This section lists all instances of Common Data Service.

Data Policies - This section lets you set up policies to restrict which data connectors can be used with Common Data Service to limit what data can flow into or out of Common Data Service entities.

Data Integration - This section lets you create or add predefined connections and then monitor these connections between Common Data Service and other data stores like Salesforce or SQL Server.

Tenant - This section lets you monitor licenses and quotas.

www.dynamicscompanions.com Dynamics Companions

- 247 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

With the following steps, take a few moments to explore the different options by browsing through the Admin center and opening each section that is shown on the left-hand side of the portal. 1.

Sign in to Power Apps.

2.

Select Admin center under the gear icon.

Tip You can go directly to the Power Platform Admin Center at https://admin.powerplatform.microsoft.com and then sign in.

3.

Select the options that are shown on the left-hand side of the Admin center portal.

www.dynamicscompanions.com Dynamics Companions

- 248 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use the Power Platform Admin Center portal A second administration portal that shows usage data is available in the Power Platform Admin Portal called the Power Platform Administration center, which includes analytics such as storage, usage, and settings for mail gateways.

Settings 4.

Sign in to the Power Platform.

5.

Select Environments on the left-hand side of the portal.

6.

Select the environment that you want to administer.

7.

Select the ellipsis (...) and then select Settings.

Analytics 1.

Sign in to the Power Platform Admin Center portal.

2.

Select Analytics > Common Data Service on the left-hand side of the portal.

3.

Select any of the menu options within Analytics, including data usage, entity usage, and many other metrics.

Tip You can change the instance of the database (the source of the metrics that are displayed) by selecting the Change filters hyperlink, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 249 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Advanced Customization options in Power Apps Portal Advanced Customizations are options that you can use to quickly define security roles in Common Data Service. The following steps will help you access advanced customization options. 1.

Sign in to Power Apps.

2.

Select Advanced Customizations under the gear icon on the right-hand side of the page.

3.

Select either Users or Security roles, as shown in the following screenshot.

Note Security roles were explained in detail in the Get started with security roles in Common Data Service module in this learning path.

www.dynamicscompanions.com Dynamics Companions

- 250 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Classic Administration Center (Solution Explorer) Occasionally, you might need to go to the Solution Administration center because this is the original administration center and some capabilities have yet to be migrated to the two other admin areas. You can get to this administration area with the following steps. 1.

Sign in to Power Apps.

2.

Select Admin Center under the gear icon on the menu.

3.

Select the Environments option on the left-hand side of the page within the Admin Center.

4.

Select the environment that you want to manage.

5.

Select the Details option at the top of the screen, and then select the Dynamics 365 Administration Center link, as shown in the following screenshot.

6.

Select the environment and then select the Open button.

7.

Select Advanced Settings under the gear icon on the menu.

www.dynamicscompanions.com Dynamics Companions

- 251 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

8.

Select the Settings drop-down arrow.

9.

Select the Customizations option.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Select Customize the System, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 252 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Now you are at the classic admin center with many additional options that are not available in the other portals.

Check your knowledge 1.

2.

Which of the following is the most comprehensive administrative portal for Common Data Service? 

Power Apps Advanced Customization

Classic Administration Center (Solution Explorer)

Power Platform Admin Portal

Power Apps Admin Portal

Which administrative portal shows usage data? 

Power Apps Advanced Customization

Solution Explorer

Power Platform Admin Portal

www.dynamicscompanions.com Dynamics Companions

- 253 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Power Apps Admin Portal

 3.

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Which portal offers a quick way to add users and set permissions? 

Power Apps Advanced Customization

Classic Administration Center (Solution Explorer)

Power Platform Admin Portal

Power Apps Admin Portal

Which portal offers a quick way to manage environments and users? 

Power Apps Advanced Customization

Classic Administration Center (Solution Explorer)

Power Platform Admin Portal

Power Apps Admin Portal

Summary In this module, you learned about the different options that you have to administer Common Data Service. Additionally, you learned about the following: 

Power Platform Admin Center - Beneficial for usage reporting, including how much data is consumed, what apps are being used, what entities are used, and what is going on in each environment. The dashboards are user-friendly and provide a quick overview of activity.

Power Apps Advanced Customization - This offers a quick way to add users and set permissions by using the gear menu within Power Apps.

Classic Administration Center (Solution Explorer) - The original of all administration portals and the portal with the deepest and most extensive administration option. This is your final stop and will have anything that you need. The Power Apps Admin Center or Advanced customizations within Power Apps mostly offer a subset of administrative options that are found within the Classic Administration Center (Solution Explorer) portal.

Always start administration tasks by using the Power Apps Admin Center. If you need information about usage, then review the information in the Power Platform Center. If you want to view users or review security roles within an environment, then use the Advanced Customization option in Power Apps. Finally, if you need deep administrative functionality, then go to the Classic Administration Center (Solution Explorer). The following links were referenced within this module: 

Power Platform Admin Portal

Power Apps

www.dynamicscompanions.com Dynamics Companions

- 254 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T05: Get started using Common Data Service Do you want to learn how to build solutions that can leverage a standardized data structure and work with other solutions sharing the same data model? Do you want to extend the standard model to support custom solutions? This learning path will explain the concepts behind and benefits of Common Data Service. Creating an environment, entities, fields and options sets are also discussed. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites Many of the capabilities and exercises within this learning path require you to be a member of the Administrator Role in an environment and you must have a valid Power Apps license. If you have not been added to the Administrator Role or do not have Power Apps license assigned to you, you should create a personal environment by accessing the Community Power Apps plan and setting up a personal environment by following the directions referenced in the summary section of the first module. The Community plan will allow you to use one environment (your Developer environment), create an instance Of Common Data Service and access all capabilities of a Power Apps license. Restrictions - The Community Power Apps plan lets you try out aspects of Power Apps and Common Data Service but you cannot use it for productions solutions and you cannot publish and share any Power Apps you create in this environment.

www.dynamicscompanions.com Dynamics Companions

- 255 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to Common Data Service Learn about the basics of Common Data Service and explore ways you can connect and customize data connections to Power Platform applications.

Learning Objectives In this module, you will: 

Discover the Common Data Service

Learn about the Common Data Model

Identify entities, fields, and relationships

Learn about environments

Discover business rules

Introduction Common Data Service is a cloud-based, low-code data service and app platform, which allows you to leverage the security and connectivity of Microsoft services. Common Data Service connects easily to all aspects of the Power Platform so that you can fully control, automate, and strengthen your business. With standard entities and fields, as well as the ability to easily define relationships between your data, Common Data Service was built for powerful, scalable solutions. In this module, you will: 

Explain what environments, entities, fields, and relationships are in Common Data Service

Describe the difference between Common Data Service and Common Data Model

Explain use cases and limitations of business rules and process flows

Overview of Common Data Service The Common Data Service is a cloud-based solution that easily structures a variety of data and business logic to support interconnected applications and processes in a secure and compliant manner. Managed and maintained by Microsoft, Common Data Service is available globally but deployed geographically to comply with your potential data residency. It is not designed for stand-alone use on your servers, so you will need an internet connection to access and use it. The Common Data Service is designed to be your central data repository for business data, and you might even be using it already. Behind the scenes, it powers many Microsoft Dynamics 365 solutions such as

www.dynamicscompanions.com Dynamics Companions

- 256 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Field Service, Marketing, Customer Service, and Sales. It is also available as part of Power Apps and Power Automate with native connectivity built right in. The AI Builder and Portals features of the Power Platform also utilize the Common Data Service. Below is visualization to bring together the many offerings of Common Data Service.

As you can see, Common Data Service offers a great deal of functionality. Below is a brief explanation of each category of features. Security: Common Data Service handles authentication with Azure Active Directory (Azure AD) to allow for conditional access and multi-factor authentication. It supports authorization down to the row and field level and provides rich auditing capabilities. Logic: Common Data Service allows you to easily apply business logic at the data level. Regardless of how a user is interacting with the data, the same rules apply. These rules could be related to duplicate detection, business rules, workflows, or more. Data: Common Data Service offers you the control to shape your data, allowing you to discover, model, validate, and report on your data. This control ensures your data looks the way you want regardless of how it is used. Storage: Common Data Service stores your physical data in the Azure cloud. This cloud-based storage removes the burden of worrying about where your data lives or how it scales. These concerns are all handled for you. Integration: Common Data Service connects in different ways to support your business needs. APIs, webhooks, eventing, and data exports give you flexibility to get data in and out. As you can see, Common Data Service is a very powerful cloud-based solution for storing and working with your business data. In the following sections, you will look at Common Data Service from the lens of

www.dynamicscompanions.com Dynamics Companions

- 257 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

data storage for the Power Platform, where you will start your journey. Keep in mind the additional rich capabilities discussed above which you can explore further as your usage increases. To get started, Common Data Service lets you create one or many cloud-based instances of a standardized database. The database includes predefined tables and fields which store data commonly found across nearly all organizations and businesses. You can customize and extend what is stored by adding new fields or tables (called entities in Common Data Service). The ease of setting up a Common Data Service database and standardized data model under it simplifies your ability to concentrate your efforts on building solutions without worrying about infrastructure, storage, and data integration. With your data stored in Common Data Service, there are many different ways to access it. You can work with the data natively with tools such as Power Apps or Power Automate. Or through connectors and APIs you can connect to the Common Data Service from any business solution. With the power of features such as role-based security and business rules you can trust your data is safe no matter how it is accessed.

Common Data Service defined A Common Data Service database is a single instance of Common Data Service which stores data in a set of standard and custom data structures called entities. An entity is a logical set of records that is used to store data. Entities are like tables in a relational database, but there are subtle differences. Records within an entity contain many fields to manage individual pieces of information about a single record. You can create one or many database instances in Common Data Service to host data behind your business solutions. Each instance of a Common Data Service will start with the same set of entities to store data, but you can always extend and customize a Common Data Service database to meet specific business needs. This means that you can share business solutions that reference standard entities in Common Data Service across your organization or with any other organization by using it anywhere in the world.

Scalability A Common Data Service database supports large data sets and complex data models. Entities can hold millions of items, and you can extend the storage in each instance of a Common Data Service database to four (4) terabytes per instance. The amount of data that is available in your instance of Common Data Service is based upon the number and type of licenses that are associated with it. Data storage is pooled between all licensed users, so you can allocate storage as needed for each solution that you build. Additional storage can be purchased if you need more storage than what is offered within standard licensing.

Tip Common Data Service supports transactional multi-user applications, where quick response to user demand is the priority. It is not intended to be a platform for long running or batch processing.

www.dynamicscompanions.com Dynamics Companions

- 258 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Common Data Model vs. Common Data Service The standard entity design in a Common Data Service database is based upon an open data model standard called Common Data Model. Common Data Model is a logical design that includes a set of open-sourced, standardized, extensible data entities and relationships that Microsoft and its partners have published in an industry-wide initiative called the Open Data Initiative. This collection of predefined entities, attributes, semantic metadata, and relationships form the basis of the Common Data Model.

Open Data Initiative The Common Data Model is the output of the Open Data Initiative. It provides a platform for a single, comprehensive view of your data, bringing together and enriching data from all your lines of business, across all your systems, to deliver real-time intelligence back into your applications and services. Microsoft has partnered with SAP and Adobe on the Open Data Initiative.

Common Data Service structure and benefits The structure of a Common Data Service database is based upon the definitions and schema in the Common Data Model. The key benefit of using Common Data Model as the basis of a Common Data Service database is simplified integration of any solutions that use a Common Data Model schema, because the standard entities of the solution are the same. You will also be able to take advantage of a rich ecosystem of solutions that vendors have built from using Common Data Model. Best of all, there is practically no limit to how far you can extend a Common Data Service database.

Identify entities and fields in Common Data Service An entity is similar to a table in a database or in an Excel workbook in the way it stores data. It is a logical structure containing records that are made up of fields or put more simply, rows and columns. Below you can see a screenshot of the standard Customer entity and various types of fields it includes.

www.dynamicscompanions.com Dynamics Companions

- 259 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Types of entities The two types of entities are: 

Standard - The base set of entities that are created for every instance of a Common Data Service database. You can add more fields to any entity, but you can only delete fields from a custom entity.

Complex - Entities that contain complex, server-side business logic, including real-time workflows or plug-ins. Some of the entities that are used in Dynamics 365 applications are complex. Care must be taken if you add server-side logic to ensure that users have the proper license to use the complex entity. Additional information about complex entities can be accessed by following the link within the summary unit of this module.

Fields Fields are a way to store a discrete piece of information within a record in an entity. You might think of them as a column in Excel. Fields have types, meaning that you can store data of a certain type in a field that matches that data type. For example, if you have a solution that requires dates, then you would store the date in a field with the type of Date. Similarly, if you want to store a number, then you store the number in a field with the type of Number. The number of fields within an entity varies from a few fields to a hundred or more. If you need more than a few hundred fields in an entity, you might want to reconsider how you are structuring data storage for your solution because, likely, there is a better way. Every database in Common Data Service starts with a standard set of entities and each standard entity has a standard set of fields.

www.dynamicscompanions.com Dynamics Companions

- 260 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tip Always use standard entities and fields when possible. You can rename an entity if that makes the entity more understandable in the context of your solution. Always review the list of standard entities and make sure a standard entity will not meet your needs before you create a new entity.

Understand relationships To make an efficient and scalable solution for most of the solutions that you build, you will need to split up data into different containers (entities). Trying to store everything into a single container would likely be inefficient and difficult to work with and understand. The following example helps illustrate this concept. Imagine that you need to create a system to manage sales orders. You will need a product list along with the inventory on hand, cost of the item, and the selling price. You also need a master list of customers with their addresses and credit ratings. Finally, you will need to manage invoices of sales that you make so you will want a way to store invoice data. The invoice should include information such as date, invoice number, and salesperson, customer information including address and credit rating, and a line item for each item on the invoice. Line items should include a reference to the product that you sold and be able to provide the proper cost and price for each product and decrease the quantity on hand based upon the quantity that you sold in that line item. Trying to create a single entity to support the functionality that was previously described would be inefficient. A better way to approach this business scenario is to create the following four entities: 

Customers

Products

Invoices

Line Items

Creating an entity for each of these items and relating them to one another will allow you to build an efficient solution that can scale while maintaining high performance. Splitting the data into multiple entities also means that you will not have to store repetitive data or support huge records with large amounts of blank data. Additionally, reporting will be much easier if you split the data into separate entities. Entities that relate to one another have a relational connection. Relationships between entities exist in many forms, but the two most common are one-to-many and many-to-many, both of which are supported by Common Data Service. One-to-many relationships are also known as parent-child relationships. In the previous invoice example, the invoice entity would be the parent and the line items would be a child entity. An invoice can have zero, one, or many line items (child records), but the line item will always be related to just one invoice (parent record). Typically, the child records will not exist without a parent record.

www.dynamicscompanions.com Dynamics Companions

- 261 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

A field that only allows unique values, such as invoice number, is used to identify the parent record. This unique field is called a key. The same value (the parent key) is stored in the related child records. This field is called a foreign key when the child record is used to store the parent key value. Ingeniously, filtering is used to display child records with a value in the foreign key that matches the key value in the parent record. This allows applications to display the child records (line items in the previous example) that belong to a particular parent record (invoice in the previous example). This concept underlies many business software applications. Splitting data into different entities makes for an efficient solution design that can scale, but knowing how to split up the data into entities can be difficult. Thankfully, Common Data Service already contains many of the entities that most organizations will need. Using standard entities and extending them will ensure that you are building solutions around a proven, scalable way of storing the data that is used by your solutions.

Environments in Common Data Service Environments are used to store, manage, and share your organization's business data, apps, and flows in the Power Platform. Each environment allows you to provision one Common Data Service database for use within that environment. Common Data Service environments allow you to manage user access, security settings, and the storage that is associated with that database. Each environment is created under a Microsoft Azure Active Directory (Azure AD) tenant, and its resources can only be accessed by users within that tenant. An environment is also bound to a geographic location, like the United States. When you create a Common Data Service database in an environment, that database is created within datacenters in that geographic location. Any items that you create in that environment (including connections, gateways, flows that are using Power Automate, and more) are also bound to their environment's location.

You can create more than one environment to manage solution development and data storage by setting up one environment for development, another for testing, and another for production use. Also, you can set up an environment based on a geographical location. For example, you might set up an environment

www.dynamicscompanions.com Dynamics Companions

- 262 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

for Europe and another for Asia. Each of these environments will have zero or only one instance of Common Data Service.

Business rules In Common Data Service you can define business rules. Business rules allow you to apply and maintain business logic at the data layer instead of the app layer. Put more simply, if you create business rules in Common Data Service, they are in effect regardless of how you interact with the data. An example business rule usage is when they are in canvas or model-driven apps to set or clear values in one or many fields in an entity. They can also be used to validate stored data or show error messages. Model-driven apps can use business rules to show or hide fields, enable or disable fields, and create recommendations based on business intelligence.

Tip Business rules are usually defined for an entity and apply to all forms, but you can define a business rule for a specific model-driven form. Canvas apps cannot have a business rule applied to a specific form, but they are still enforced when interacting with the data. Business rules give you a powerful way to enforce rules, set values, or validate data regardless of the form that is used to input data. Additionally, business rules are effective in helping to increase the accuracy of data, simplify application development, and streamline the forms presented to end users. Business rules can be used by canvas apps or model-driven apps to do the following: 

Set field values

Clear field values

Validate data and show error messages

Model-driven apps can also use business rules to: 

Show or hide fields (model-driven apps only)

Enable or disable fields (model-driven apps only)

Create business recommendations based on business intelligence (model-driven apps only)

Below is an example of a simple, yet powerful use of business rules. The business rule is configured to change the field Credit Limit VP Approver to be a required field if the Credit limit is set to greater than $1,000,000. If the credit limit is less than $1,000,000 then the field is optional.

www.dynamicscompanions.com Dynamics Companions

- 263 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By applying this business rule at the data level instead of the app level, you have better control of your data and it can confirm it follows your business logic whether it is being accessed directly from Power Apps or Power Automate or even via an API. The rules are tied to the data, not the app.

Administer Common Data Service has a rich set of administrative options that you can use to create new instances of a database or tailor access and features that are available for users of each Common Data Service database instance. Several administrative portals are available for you to use to administer Common Data Service settings. The Power Apps Admin center is discussed in this unit because it will satisfy most of your administrative needs. However, a few other administrative options are available, which are covered in the Manage permissions and administration for Common Data Service learning path.

Power Apps Admin center Most of the administration settings that you will need are available in the Power Apps Admin center. You should always check for administration settings as your first step when looking to administer Common Data Service. Settings are grouped into the following broad categories and are accessible by selecting the link on the left-hand side of the portal, as shown in the following figure. 

Environments - This section lists all instances of Common Data Service.

Data policies - This section lets you set up policies to restrict which data connectors can be used with Common Data Service to limit what data can flow into or out of Common Data Service entities.

www.dynamicscompanions.com Dynamics Companions

- 264 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Data integration - This section lets you create or add pre-defined connections and monitor these connections between Common Data Service and other data stores like Salesforce or SQL Server.

Tenant - This section lets you monitor licenses and quotas.

Take a few moments to explore the options by going to the Admin center and opening each section on the left-hand side of the portal: 1.

Go to Power Apps and sign in.

2.

Select Admin center under the gear, as shown.

Tip You can go directly to the Power Apps Admin center at https://admin.powerplatform.microsoft.com and then sign in.

3.

Select the options on the left-hand side of the admin center portal.

The Power Apps Admin center lets you manage the tasks of setting up users, permissions, and many other important features and capabilities of Common Data Service.

www.dynamicscompanions.com Dynamics Companions

- 265 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

2.

3.

How can business rules be used in a canvas or model-driven app? 

To validate data and show error messages.

Show or hide fields.

Manage solution development and data storage.

Your manager has built a solution using the Common Data Service using a few of the standard Entities included out of the box. He wants to capture the date that new records are added to the Entity, but he isn't sure how. He notices that a "Date" field is already inside his Entity, but he wants the field to have a custom name of "Date Confirmed". What would you recommend he do? 

Create a new Entity with the name "Date Confirmed".

Use the built-in Date field within the Entity to store the date values, but rename the field to "Date Confirmed".

Create a new Environment with the name "Date Confirmed".

One of your co-workers has set up a Model-driven application using the Common Data Service. The app captures information about computer hardware assets, including their price. Your coworker is concerned that users of the application are going to put incorrect values into fields - for instance, they might put in the wrong cost center when submitting a new record. How could this be prevented? 

Use Business Rules to automatically validate the cost center for the currentlylogged in user.

Use Power Automate to validate that the field value matches what the table is expecting.

Use a Canvas App instead of a Model-driven app.

Summary and resources Common Data Service is a cloud-based data storage which allows you to leverage the security and connectivity of Microsoft programs. Common Data Service connect easily to all aspects of the Power Platform so that you can fully control, automate, and strengthen your business. With standard entities and fields, as well as the ability to easily define relationships between your data, Common Data Service was built for those who need powerful, scalable solutions. Now that you have reviewed this module, you should be able to: 

Describe the Common Data Service

Describe the Common Data Model

Identify entities, fields, and relationships

Create environments

Define business rules

www.dynamicscompanions.com Dynamics Companions

- 266 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Key takeaways Here are the three key takeaways:

1. The Common Data Service uses standard entities, fields, and relationships to help you build powerful, scalable data solutions 2. Make your data work for you so that you can get the most of it by splitting it up into logical chunks. 3. Using the Common Data Service, you can break your data into various environments to better manage and secure important information.

Resources Use these resources to discover more.

Tip To open a resource link, right-click and select "Open in a new tab or window". That way, you can check out the resource and easily return to the module tab to unlock your achievement when done.

Common Data Service 

Introduction to Common Data Service

Common Data Service Documentation

Common Data Model

Licensing

Entities, fields, and relationships 

Create and Manage Entities in Common Data Service

Complex entities

Restricted entities requiring Dynamics 365 licenses

Create and manage fields within an entity in Common Data Service

Create a relationship between entities in Common Data Service

Relationships and business rules 

Create and manage environments in Common Data Service

www.dynamicscompanions.com Dynamics Companions

- 267 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Define and create business rules in Common Data Service

www.dynamicscompanions.com Dynamics Companions

- 268 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create and manage environments in Common Data Service An environment is a space to store, manage, and share your organization's business data that is stored within an instance of a Common Data Service database. You can set up one or many environments, depending on the needs of your organization. This module explores these environments and how you can use them with instances of Common Data Service databases.

Learning Objectives In this module, you will learn how to: 

Identify the different environments that are in Common Data Service.

Create and manage environments in Common Data Service.

Create an instance of a database in Common Data Service.

Add users and security roles within an environment in Common Data Service.

Determine where to manage settings for an environment.

Prerequisites A basic understanding of what a database is and its role within a software solution.

Environments in Common Data Service An environment is a way to create and manage an instance of a Common Data Service database. It also lets you manage user access, security settings, and the storage that is associated with the Common Data Service database within that environment. Additionally, an environment allows you to install applications that you build with Power Apps or flows that you create with Power Automate into that environment. You can create one or many environments, depending on your needs. Each environment is created under a Microsoft Azure Active Directory (Azure AD) tenant, and its resources can only be accessed by users within that tenant. An environment is also bound to a geographic location, like the United States. When you create a Common Data Service database in an environment, that database is created within datacenters in that geographic location. Any items that you create in that environment (including connections, gateways, flows that are using Microsoft Flow, and more) are also bound to their environment's location.

www.dynamicscompanions.com Dynamics Companions

- 269 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can create more than one environment to manage solution development and data storage by setting up one environment for development, another for testing, and another for production use. Also, you can set up an environment based on a geographical location. For example, you might set up an environment for Europe and another for Asia. Each of these environments will have zero or only one instance of Common Data Service.

Tip There are restrictions on accessing data in Common Data Service. Power Apps apps and flows that are using Power Automate can only connect to data with a single instance of Common Data Service. You cannot connect to an instance of Common Data Service in an environment outside of the environment that you are currently working in.

Create and manage an environment A default environment is automatically created for you when you sign up for Power Apps, Dynamics 365, or if you have an Microsoft 365 account with Microsoft. At least one environment will always be designated as the default when you start to work with Common Data Service. When you need to create a new environment, use the following procedure: 1.

Sign in to the https://admin.powerplatform.microsoft.com

2.

Select the Environments option on the left-hand side of the Portal.

3.

Select the New Environment button in the top right of the Environments screen, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 270 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tip If you create an environment, you will be added automatically to the Environment Admin role for that environment. There is no limit on the number of environments that you can participate in as a member of the Environment Admin or Environment Maker roles.

Tip You can only create two production environments and two trial environments with your Power Apps P2 license. If you need more environments, then another user will need to purchase a P2 license, and that user will need to create the additional environments and assign you to the Environment Admin role. 4.

After selecting the New Environment button, you can name the new environment, select the region, and then select the environment type, such as trial or production, as shown in the following figure.

Tip A Trial instance of an environment will only be valid for 30 days. If you want to use the environment for more than 30 days, you must convert the trial to a Production environment. You must have a P2 license to create a new production environment or convert a trial environment to a production environment. Also, you can only create two Production environments for each user with a P2 license. 5.

Select the Create environment button.

Congratulations, you just created a new environment!

www.dynamicscompanions.com Dynamics Companions

- 271 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create an instance of a Common Data Service database After creating an environment, you can create a new instance of a Common Data Service database with the following steps: 1.

Sign in to the Power Apps Administration Center.

2.

Select the Environments option on the left-hand side of the Portal.

3.

Select the Create my database button, as shown in the following figure. A new Common Data Service database will be created for you and will be ready within a few minutes for use in the new environment.

Add users and roles within an environment After you have created an environment, users from Azure Active Directory that are associated with your tenant are automatically added to the environment.

Tip It might take several hours to add all users if you have a large number of them. User security roles control a user’s access to data through a set of access levels and permissions. The combination of access levels and permissions that are included in a security role sets limits on the user’s view of and interactions with that data.

Tip Users who are automatically added to the default environment have the CDS User role enabled, but users who are automatically added to another environment will not have any user roles enabled. Security roles can also be associated with an Azure AD group. We recommend that you create Azure AD groups and associate roles with those security groups to simplify permissions and data access.

www.dynamicscompanions.com Dynamics Companions

- 272 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tip The user security roles control run-time access to data and are separate from the environment roles that govern environment administrators and environment makers. The two environment roles that are built into every environment are System Administrator and Environment Maker. All other roles are user security roles. An administrative user, who has been added to the Environment Admin role, uses the following steps to assign new groups or users to the environment and security roles within that environment: 1.

Sign in to the Power Platform Admin Center.

2.

Select Environments in the left-hand column.

3.

Select the environment in the list of environments that you want to administer.

4.

Select the Security tab. Verify that the user already exists in the environment by selecting to view the list of users in the environment.

5.

If a user does not exist in the environment, you can add the user from Power Platform admin center. Add the user by entering the user’s email address into your organization and then selecting the Add user button.

www.dynamicscompanions.com Dynamics Companions

- 273 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

6.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Wait for a few minutes to verify that the user has been added to the list of users in the environment.

After a user or group is added to the environment, you can add them to one or more roles by following these steps: 1.

Sign in to the Power Platform Administration Center.

2.

Select Environments in the left-hand column.

3.

Select the environment in the list of environments that you want to administer.

4.

Select the Security tab.

5.

Select to view the list of users in the environment.

6.

Select the user from the list of users in the environment.

7.

Select the Manage Roles tab.

8.

Assign one or more roles to a user by selecting the check box next to the role name.

9.

Select OK to update the assignments to the user within that environment.

www.dynamicscompanions.com Dynamics Companions

- 274 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The following table describes each of the predefined security roles that reflect common user tasks with access levels that are defined to match the security best-practice goal, which is to provide access to the minimum amount of business data that is required to use the app. Security role

Database Privileges

Description

System Administrator

Create, Read, Write, Delete, Customizations, Security Roles

Has full permission to customize or administer the environment, includ modifying, and assigning security roles. Can view all data in the enviro

System Customizer

Create (self), Read (self), Write (self), Delete (self), Customizations

Has full permission to customize the environment. However, can only v environment entities that they create.

Environment Maker

Customizations

Can create new resources that are associated with an environment, inc connections, custom APIs, gateways, and flows that are using Power A does not have any privileges to access data within an environment.

Common Data Service User

Read (self), Create (self), Write (self), Delete (self)

Can run an app within the environment and perform common tasks fo own. Note: This only applies to non-custom entities.

Delegate

Act on behalf of another user

Allows code to run as another user or impersonate. Typically used with to allow access to records.

Create a custom security role If you need a custom security role, you can create a new security role with the following steps. The custom security role that you create is only available within a single environment where it is created. The custom role is not available in any other environment. 1.

Sign in to https://admin.powerplatform.microsoft.com

2.

Select your environment, then select the ellipses and Settings

3.

Select Users + permissions.

4.

Select Security Roles.

5.

Select New.

6.

Add a name and fill out the settings for the new role by using the tabs.

www.dynamicscompanions.com Dynamics Companions

- 275 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

7.

Add user security settings for each entity.

8.

Save the new role.

www.dynamicscompanions.com Dynamics Companions

- 276 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manage settings in an environment You can monitor the usage and service health of all Common Data Service instances by going to the Power Platform Administration Center. Use the following steps to monitor any environment that is associated with an instance of Common Data Service. 1.

Sign in to the Power Platform Administration Center.

2.

Select Environments in the left-hand pane.

3.

Select the environment to monitor or edit settings.

4.

Select the Edit Settings link. On this screen you can edit details about the environment, including Name and security groups who can access the environment. You can also see the current version of Common Data Service and apply any updates manually as desired.

Check your knowledge 1.

2.

An environment in Common Data Service can contain all of the following except which one? 

Power Apps apps

Power Automates

Many instances of Common Data Service databases

A single Common Data Service database

2. Security roles are used for all of the following except which one? 

Limiting Access to data

Restricting access to an environment

Restricting actions that users can perform on data

Restricting printing

www.dynamicscompanions.com Dynamics Companions

- 277 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Which of the following is not a type of security role? 

User

Global Security Role

Environment Maker

Delegate

Summary In this module, you learned about: 

What environments are in Common Data Service.

Creating and managing environments.

Creating an instance of a Common Data Service database.

Adding users and roles within an environment.

Creating a custom user security role.

Managing settings for an environment.

www.dynamicscompanions.com Dynamics Companions

- 278 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create and manage entities in Common Data Service Common Data Service entities are similar to tables in a database. Every instance of a Common Data Service database includes a base set of entities that provide structure for data that is commonly used by business applications.

Learning Objectives In this module, you will learn about: 

Entities in Common Data Service.

Types of entities that are available in Common Data Service.

Creating a custom entity.

Enabling attachments within an entity.

Which licensing requirements to apply to use each type of entity.

Prerequisites A basic understanding of what a database is and its role within a software solution.

Identify entities and entity types in Common Data Service An entity is similar to a table in a database. It is a logical structure containing records that are made up of fields. Standard entities differ from a simple database table because they have nearly 100 properties that are used to define relationships between other standard entities and how the entity is used within Dynamics solutions from Microsoft.

Types of entities The four types of entities are: 

Standard - The base set of entities that are created for every instance of a Common Data Service database. You can add more fields to any entity, but you cannot delete any field from a standard, premium, or restricted entity.

Complex - Entities that contain complex, server-side business logic, including real-time workflows or plug-ins. Some of the entities that are used in Dynamics 365 applications are complex. To use complex entities, users are required to have a P2 or Dynamics 365 license. Care must be taken if you add server-side logic to ensure that users have the proper license to use the complex entity.

www.dynamicscompanions.com Dynamics Companions

- 279 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Additional information about complex entities can be accessed by following the link within the summary unit of this module. 

Restricted - Certain entities that are tied to Dynamics 365 application functionalities require each user to have the corresponding license for that Dynamics 365 application if they want to create, update, or delete records within the restricted entities. Additional information about restricted entities can be accessed by following the link within the summary unit of this module.

Custom - Are created for a specific business application. All licensed users of Common Data Service can access custom entities if they are assigned proper security permissions to do so.

Create a custom entity Adding a new entity to a Common Data Service database is a simple process.

Tip Make sure that you always verify that the functionality of the entity that you want to create already exists in the standard entities listed in the summary unit of this module. After you have verified existing entities and have decided that you need a new custom entity, follow these steps: 1.

Sign in to Power Apps.

2.

On the navigation pane, select or tap Data to expand it and then select or tap Entities.

3.

Select New Entity in the command bar.

4.

In the New entity panel, in the Display name box, enter the name of your new custom entity, and then optionally enter a description (descriptions are helpful if other people will use this entity). Other fields in the panel are auto populated, such as the following. When you are finished, select Next. Plural display name - This field is auto populated when you enter a display name, but you can change it if needed. The plural display name is the name of the entity in the Common Data Service WebAPI and is used when you are interacting with this entity from Power Apps or Power Automate. Name - This field is also auto populated when you enter a display name. The prefix was set up when the environment was created and ensures that the entities you create can be exported and imported into other environments without conflicting with other entity names. You can change this prefix by updating the prefix on your Publisher for the Common Data Service Default Solution. To keep existing apps from breaking, you cannot change the name after saving the entity.

5.

On the Entity details page, select or tap the Primary Name field to open the Primary Name panel, and then in the Display name box, enter a name of Primary Name. In the Name box, replace Primary Name with a name of your choosing for the new primary field, and then select or tap Done.

www.dynamicscompanions.com Dynamics Companions

- 280 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, every entity contains a Primary Name field that is used by lookup fields when establishing relationships with other entities. Typically, the Primary Name field stores the name description of the data that is stored in an entity's record. You can update the name and display name of the Primary Name at any time. 6.

To add a field to the entity, use the following procedure: a.

In the command bar, select or tap Add field to open the Field properties panel.

b. In the Display name box, enter the name of the field that you want to add. c.

From the Data type drop-down list, select the type of data that you want to add.

d. Select or tap the Required check box if desired. e. 7.

Select or tap Done.

You will learn much more about fields in a later module.

Note All entities have read-only system fields. By default, system fields are not shown in the list of fields, even though they exist within the entity. To view all fields, change the filter on the command bar from Default to All. For more information on the metadata that is related to an entity, refer to Entity metadata. 8.

Select Save entity to save your entity and make it available for use in apps.

Tip You will need to assign permissions to the new custom entity in an existing or new user security role. This way, users can add, view, edit, or delete data in the entity. Refer to unit four in module two if you need additional information on user security roles.

Enable attachments within an entity You might want to allow users the ability to upload files and save with a record in an entity. Common Data Service entities allow users to add an attachment by turning on the attachment property that is associated with that entity. If you want to let users upload one or more files into a record within an entity, use the following procedure.

Note Attachments will be enabled if you are working with a standard entity. 1.

Sign in to Power Apps

2.

Select Data and then Entities on the menus on the left-hand pane.

3.

Select an Entity and then select Settings.

4.

Select the Enable Attachments check box.

www.dynamicscompanions.com Dynamics Companions

- 281 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Save.

Note You cannot undo the addition of attachments to an entity.

Licensing requirements for each entity type As Unit 1 explained, complex and restricted entities require additional licensing. The following table summarizes license requirements for each type of entity. Standard and Custom Entities

Microsoft 365, P1, P2, Dynamics 365

Complex Entities

P2, Dynamics 365

Restricted Entities

Specific Dynamics 365 application licenses

For more information on complex and restricted entity license requirements, see the link to licensing that is provided in the summary unit in this module.

Exercise - Create a new custom entity and enable attachments Create a new custom entity This hands-on lab shows you how to create a new custom entity in Common Data Service. Follow along to create a custom entity in your environment. 1.

Sign in to Power Apps.

2.

Select the Environment where you want to add a new custom entity within the menu at the top of the page.

3.

Select Data in the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data options on the left-hand side of the portal.

5.

Select New Entity in the menu at the top of the list of entities.

6.

Enter the following values: Display name: PC Description: Custom entity to track PCs

7.

Select Next and then, after the default fields are shown, select the Save Entity button at the lower right of the screen.

The new entity called PC will be shown in the list of entities in this environment. In the next hands-on labs, you will add the ability to enable attachments and some custom fields.

www.dynamicscompanions.com Dynamics Companions

- 282 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Enable attachments In this lab, you will enable attachments to be added to a record in the new custom entity PC Manufacturers, which was created in the last hands-on lab. 1.

Sign in to Power Apps.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data on the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data option on the left-hand side of the portal.

5.

Select the new custom entity PC Manufacturers in the list of entities. This will open the list of fields in the entity.

6.

Select Settings on the menu above the entity fields.

7.

Select the Enable Attachments check box.

8.

Select Done.

www.dynamicscompanions.com Dynamics Companions

- 283 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Confirm Changes button when the dialog appears.

10. Select the Save Entity button on the bottom of the screen to save the change to the entity settings that allow attachments.

www.dynamicscompanions.com Dynamics Companions

- 284 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

3.

4.

Which entity type is not a part of Common Data Service? 

Standard

Complex

Open

Restricted

Which of the following statements about restricted entities is false? 

Customers can add restricted entities to Common Data Service.

Restricted entities store and maintain product-specific configuration data for Dynamics 365 products that are typically not used outside of the Dynamics application.

The restricted entity is accompanied by advanced logic that creates and maintains data in a specific way when it is used within a Dynamics 365 product.

Restricted entities require a specific Dynamics 365 product license or the Dynamics 365 Plan.

With a P2 license in Common Data Service, you can use and access any entity except which of the following? 

Standard entities

Restricted entities

Certain entities that contain complex logic

Custom entities

Summary In this module, you learned: 

What an entity is and how it's used in Common Data Service.

What types of entities are available in Common Data Service.

How to view standard entities and create a custom entity.

How to enable attachments within an entity.

What licensing requirements to apply to use each type of entity.

The following links were referenced within this module. Check them frequently because Common Data Service is a rapidly-changing service from Microsoft. Licensing and Pricing - Find the right Power Apps plan for your business needs. Note that Common Data Service is licensed with Power Apps and Dynamics 365.

www.dynamicscompanions.com Dynamics Companions

- 285 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Complex entities and licensing requirements - Entities that include complex server-side logic may have additional licensing requirements. Restricted entities requiring Dynamics 365 licenses - App makers can use most of the entities available within Common Data Service to create apps and flows for users, but some are restricted.

www.dynamicscompanions.com Dynamics Companions

- 286 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create and manage fields within an entity in Common Data Service Do you want to create new data fields or leverage exiting standardized fields for your business solutions? This module will show you how to manage or create new fields within an entity in Common Data Service.

Learning Objectives In this module, you will: 

Learn what a field is in Common Data Service.

Learn about the types of fields that are available in Common Data Service.

Add a field to an entity.

Learn what a primary name field is in Common Data Service.

Identify restrictions that are associated with fields.

Create an auto-numbering field.

Create an alternate key.

Prerequisites A basic understanding of what a database is and its role within a software solution.

Define fields in Common Data Service Fields are a way to store a discrete piece of information within a record in an entity. Fields have types, meaning that you can store data of a certain type in a field that matches that data type. For example, if you have a solution that requires dates, then you would store the date in a field with the type of Date. Similarly, if you want to store a number, then you store the number in a field with the type of Number. The number of fields within an entity varies from a few fields to a hundred or more. If you need more than a few hundred fields in an entity, you might want to reconsider how you are structuring data storage for your solution because, likely, there is a better way. Every database in Common Data Service starts with a standard set of entities and each standard entity has a standard set of fields.

www.dynamicscompanions.com Dynamics Companions

- 287 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tip Always use standard entities and fields when possible. You can rename an entity if that makes the entity more understandable in the context of your solution. Always review the list of standard entities and make sure a standard entity will not meet your needs before you create a new entity.

Field types in Common Data Service The field type determines the values that can be stored within that field. All fields have one and only one field type. The field types that are available in Common Data Service include: Text - A text value intended to be displayed in a single-line text box. Text Area - A text value intended to be displayed in a multi-line text box. If you require more than 4,000 characters, use a Multiline Text data type. Email - A text value that is validated as an email address and rendered as a mailto link in the field. URL - A text value that is validated as a URL and rendered as a link to open the URL. Ticker Symbol - A text value for a ticker symbol that will display a link that will open to show a quote for the stock ticker symbol. Phone - A text value that is validated as a phone number rendered as a link to initiate a phone call by using Skype. Whole Number - A number value presented in a text box. Duration - A number value presented as a drop-down list that contains time intervals. A user can select a value from the list or type an integer value that represents the number of minutes. Timezone - A number value presented as a drop-down list that contains a list of time zones. Language - A number value presented as a drop-down list that contains a list of languages that have been enabled for the environment. If no other languages have been enabled, the base language will be the only option. The saved value is the Locale Identifier (LCID) value for the language. Currency - A money value for any currencies that are configured for the environment. You can set a level of precision, or you can choose to base the precision on a specific currency or a single standard precision that is used by the organization. Decimal Number - A decimal value with up to 10 points of precision. See Using the right type of number for more information. Floating Point Number - A floating point number with up to 5 points of precision. See Using the right type of number for more information.

www.dynamicscompanions.com Dynamics Companions

- 288 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Image - Displays a single image for each record in the application. Each entity can have one image field. The name that you enter when creating an image field will be ignored. Image fields are always named EntityImage. You can only have one image field for each entity. Multi Select Option Set - Displays a list of options where more than one option can be selected. Multiline Text - A text value intended to be displayed in a multi-line text box. This value is limited to a maximum of 1,048,576 characters. You can also set a lower Max Length. Option Set - Displays a list of options where only one can be selected. Two Options - Displays two options where only one can be selected. You can choose which labels are displayed for each option. The default values are Yes and No.

Tip You can add any combination of fields to a custom or standard entity to meet your needs, but you can't delete a standard field from a standard entity.

Add a field to an entity You can add fields when you create a new custom entity, or you can add fields to an existing entity at any time. Adding a new field is the same whether you are creating a new entity or adding to an existing entity.

Tip Before you create a custom field, evaluate whether an existing field meets your requirement. 1.

Sign in to Power Apps.

2.

Select the Data option on the left-hand menu.

3.

Open an existing entity or create a new entity.

4.

Select Add field on the menu at the top of the page.

5.

Enter information in the following fields: a.

Display name - The name that is shown to users.

b. Name - This is the internal name that is used by your application. c.

Data type - This is the type of data that you want to store in the field.

d. Required - Select this check box if you want to ensure that this field always has a value when a user tries to add a record to this entity. e.

Searchable - Clear this check box for fields for the entity that you do not use. When a field is searchable, it appears in Advanced Find and is available when you are customizing views. Clearing this check box reduces the number of options that are shown to people who are using Advanced Find, and helps make it easier for users to create custom views without seeing unused fields. Clear the Searchable check box when you are working with fields in a standard or complex entity that you do not use.

www.dynamicscompanions.com Dynamics Companions

- 289 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

f.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Calculated or Rollup - Use to define a calculation or a rollup in this field.

g. Description - This is a description of the field. h.

Max Length - Use to define the maximum length of the data that a user can enter in this field. Note that this is used with text fields.

i.

Minimum and Maximum Values - This field is available and used with number fields.

Create a primary name field A Primary Name field is always created by Common Data Service when you create a new custom entity. This is the first field that is listed and available so you have a way to identify a record in the new custom entity by using a business value or an auto-generated whole number. The Primary Name field is not the same as the internal key field that is also auto-generated when you create a new custom entity. The Primary Key field is a GUID. You can change the name of the Primary

www.dynamicscompanions.com Dynamics Companions

- 290 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Name field to make it friendlier for business users. You can also choose between a text field or autogenerated whole number.

Tip If you want to make the primary field unique, then make a key and assign the Primary Name field to the new key.

Note If you have duplicated data in the Primary Name field in multiple records, the key will not be created. You can only create a key if data in the field's existing record is unique across all records in the entity.

Restrictions that apply to fields in an entity When using Common Data Service for your business solutions, you should keep a few restrictions in mind. Maximum Number of fields in an entity: 

There is no hard upper limit on the number of fields that you can have in an entity, but there is an upper boundary due to limits in how much data you can store in a single record. It is difficult to provide a specific number because each type of field can use a different amount of space. The upper limit depends on the total space that is used by all the fields for the entity.

As a rule, you should have less than a few hundred fields in an entity. If you have more than a few hundred fields in an entity, then you should look at restructuring how you have designed the entities in your solutions and try to split the entity with an excessive number of fields into more than one entity.

Rollup fields: 

Max of 100 for each organization

Max of 10 for each entity

Can't trigger workflows

Option set fields: 

Option set fields provide a set of options that will be displayed in a drop-down control on a form or in picklist control when you are using Advanced Find. Dynamics 365 can support thousands of options within an Option set, but you should not consider this as the upper limit. Usability studies have shown that people have trouble using a system where a drop-down control provides a large number of options.

Use an Option set field to define categories for data. Don't use Option set fields to select categories that actually represent separate items of data. For example, rather than maintaining an Option set field that stores each of hundreds of possible manufacturers of a type of equipment, consider creating an entity that stores references to each manufacturer and use a lookup field instead of an Option set.

www.dynamicscompanions.com Dynamics Companions

- 291 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Primary Name field 

You can only have one primary field for each custom entity.

Searchable fields 

You can only have five searchable fields for each entity.

Create an auto numbering field Autonumber fields automatically generate alphanumeric strings whenever they are created. You can customize the format of these fields and then rely on the system to generate matching values that automatically fill them in. Autonumber fields appear in the Text category of fields when you create a new field. You can also activate autonumber functionality in an existing text field by opening the field and selecting Autonumber in the datatype dropdown. Similarly, auto number functionality can also be disabled at any time by opening the field and selecting text as the type in the Data type drop-down list. Autonumber fields offer many options for the type of auto-generated number that you want to generate. You can create any of the following autonumber type fields. String prefixed number - The most common auto number format is a simple string prefixed number. When this type is selected, the autonumber will consist of an automatically incrementing number with an optional string constant prefix. For example, a string prefixed number with the prefix of Contoso would generate records such as Contoso-1000, Contoso-1001, Contoso-1002, and so on. Date prefixed number - Another common auto number format is a date prefixed number. When this type is selected, the auto number will consist of an automatically incrementing number with a formatted date prefix. The date portion of the record will reflect the current date and time at which the record was created in UTC time. For example, a date prefixed number would generate records such as 2019-26-021000, 2019-27-02-1000, 2019-28-02-1000, and so on, depending on the current date and selected date format. Custom - For more advanced makers with specific use cases, you have the option to fully customize the desired format of an autonumber field. The format might consist of string constants, automatically incrementing numbers, formatted dates, or random alphanumeric sequences. For detailed information about how to define custom formats, see AutoNumberFormat options.

Seeding a starting value You can also set a seed value so you can start autonumbering at any value. The seed value of an autonumber field is the starting number that is used for the number portion of the format. For example, if you want an autonumber field to generate records such as Contoso-1000, Contoso-1001, Contoso-1002, and so on, then the desired seed value is 1000 because that is the value that your number sequence starts

www.dynamicscompanions.com Dynamics Companions

- 292 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

with. Autonumber fields have a default seed value of 1000, but you can set a custom seed value if you want.

Create an alternate key It is common to need a way to uniquely identify a record in an entity. By default, Common Data Service entities have a GUID as their only unique field. This GUID is called the Primary Field and it consists of a long string of numbers and letters that are not useful to a regular user regarding meaning or significance. Defining a new key for an entity allows you to identify a record in a more meaningful way by using a field that is familiar to users. When you define a field as a key, Common Data Model makes sure that every entry in that key field is required and unique so you can use the key field to distinctively identify a specific record. This can be especially helpful if you are integrating your data with an external system that uses that ID or number to identify a record (and not the Common Data Service GUID). It also improves the search and filtering on the particular field because alternate key fields are always indexed. Finally, keys can be based on a single field (Order ID) or a combination of fields, such as Financial year and Order ID. If you set a key on a field and try to enter duplicate data, the record will fail to save.

Tip You are limited to five alternate keys for each entity. Set up an alternate key for an entity with the following steps: 1.

Sign in to Power Apps and select the Data menu option in the left-hand column.

2.

Select the entity that you want to add a new key to.

3.

Select Keys from the options above the list of fields.

4.

Select Add key in the upper left of the screen.

5.

Select one or more fields that will make up the new key.

6.

Give the key a name.

7.

Select the Done button.

It will take a few minutes for Common Data Service to create the new key and indexes. Then, you can start using it in your business solution.

Tip If you have duplicated data in a field that is used by the key in multiple records, then the key will not be created. You can only create a key if the data in the field's existing record is unique across all records in the entity.

www.dynamicscompanions.com Dynamics Companions

- 293 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercises Add fields to a custom entity In this lab, you will add a few fields to the custom entity PC Manufacturers. If you have not created the custom entity as a part of this learning path, you can complete the steps here to complete these exercises. 1.

Sign in to Power Apps.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data on the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under Data Options on the left-hand side of the portal.

5.

Select the new custom entity PC in the list of entities. This will open the list of fields in the entity.

6.

Select + Add field on the menu above the list of fields in the entity.

7.

Type PC Brand Name in the Display name field.

8.

Keep the Searchable check box selected.

9.

Select Done.

10. Select + Add field on the menu above the list of fields in the entity. 11. Type Description in the Display name field. 12. Select Text area in the Data type. 13. Select the Done button. 14. Select the Save entity button to save changes.

www.dynamicscompanions.com Dynamics Companions

- 294 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you select the Save entity button, the custom PC Manufacturers entity should have three fields, as shown in the previous figure.

Rename a primary field In this lab, you will rename the primary field that was created by default when you created the custom entity PC Manufacturers. 1.

Sign in to Power Apps.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data in the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data option on the left-hand side of the portal.

5.

Select the new custom entity PC Manufacturers in the list of entities. This will open the list of fields in the entity.

6.

Recall that the Name field was auto-created when you created the custom entity. Notice that it is selected as both Searchable and Required, as shown in the following figure.

7.

Select the Display Name field and update it to PC Model Name, as shown in the following figure. You cannot change the internal name (name*) of the field.

www.dynamicscompanions.com Dynamics Companions

- 295 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

8.

Select Done.

9.

Select Save entity.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Add an autonumber field In this lab, you will add an autonumber field to help identify the manufacturer record in the custom entity. 1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Entities.

3.

Select the custom entity PC.

4.

On the toolbar, select Add field.

5.

On the right pane, enter a PC Model ID for the Display name and select Autonumber for the Data type.

6.

Under Autonumber type, select Custom.

7.

Leave the Format as the default of {SEQNUM:4}.

8.

Customize a Seed value or keep the default value of 1,000, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 296 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Done.

10. Select the Save entity button.

Create a key Create a key to ensure that the value is unique and indexed. 1.

Sign in to Power Apps.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data in the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data option on the left-hand side of the portal.

5.

Select the new custom entity PC in the list of entities. This will open the list of fields in the entity.

6.

Select Keys on the menu at the top of the list of fields in your custom entity PC Manufacturers.

7.

Select New Key on the menu at the top of the list of keys.

www.dynamicscompanions.com Dynamics Companions

- 297 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

Enter PC Key in the Display name field.

9.

Select the check box next to the PC Model Name field.

Note A key can be made up of one or many fields. If you select multiple fields, then the key is called a compound key.

10. Select the Done button. 11. Select the Save entity button. After selecting Done, you will see the new key added to the list of all keys that are created for this entity. You can create up to five keys for each entity. All values in the key will be unique.

Check your knowledge 1.

Which field type displays a list of options where more than one can be selected? 

Multiline Text

Option Set

www.dynamicscompanions.com Dynamics Companions

- 298 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

3.

Multi Select Option Set

Image

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Which of the following statements is not true about alternate keys? 

Alternate keys make it easier for users to work with data in Common Data Service.

Alternate keys improve database performance.

The primary key of an entity is a GUID and meaningless to users, so an alternate key can help identify the key.

You can make a field not required if you do which of the following? 

Delete the field

Create the field

Edit a field definition

Add a field to an entity

Summary In this module, you learned about: 

The fields in Common Data Service.

Types of fields that are available in Common Data Service.

Adding a field to an entity.

The Primary Name field and what it's used for.

Restrictions that are associated with fields in Common Data Service.

Creating an autonumbering field.

Creating an alternate key.

www.dynamicscompanions.com Dynamics Companions

- 299 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Working with option sets in Common Data Service Do you want to create standardized choice lists that you can use across all of your Power Apps? This module will show you how to create new or use standard choice lists called option sets in Common Data Service.

Learning Objectives In this module, you will: 

Learn about option sets.

Explore the standard option sets.

Create a new option set or modify an existing one.

Prerequisites A basic understanding of what a database is and its role within a software solution.

Define option sets Option sets are a list of choices that are displayed by using a drop-down menu during data entry. Option sets help streamline new record creation and standardize data entry, and they are best suited for a small set of standard short terms rather than long list of complex entries. You should not use option sets when the field usually contains unique entries that are not easily standardized. For example, consider the use of option sets on a sales tracking page. An option set is well-suited to capture the stage of a sales lead if you have a short list of possible sales stages. On the other hand, an option set is not a good choice when you are entering a street name because, likely, there could be hundreds or thousands of street name choices in nearly any city.

Tip Make sure that you monitor the quality of data when using an option set. As a best practice, check the data that you collect with an option set to ensure that users are not disproportionately using the default value rather than selecting the proper option within the option set. You might find that users accept the default so that they can enter data in the page without much thought. Determine what incentive users have to enter high quality data rather than the first entry or default in an option set, and avoid terms like "other" because options like these do not provide meaningful data.

www.dynamicscompanions.com Dynamics Companions

- 300 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Option sets are managed as a separate list and then associated with a drop-down field. When used properly and closely managed, option sets help ensure consistent data entry and improves the quality and usefulness of the data that you collect. Option sets can help create meaningful reports and identify trends and clusters of data. Finally, you can make fields of type Option sets required when they are created or edited.

Standard option sets Common Data Service includes over one hundred standard option sets that are created each time that you instantiate a new instance of a Common Data Service database. You can add to a standard option set, but you cannot delete an entry from a standard option set. Explore and learn what standard option sets are available in Common Data Service by following these steps: 1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Option sets.

3.

Scroll through the list of over 100 standard option sets. Select one of the standard option sets and examine the default list of entries for that option set.

By default, option sets are created as global option sets, allowing them to be reused across multiple entities. When creating a new option set, you can choose to make it Local under the View more option. This option is only available when you are creating an option set while adding a field, and not through the option set list. Local option sets can only be used by the entity and field that they are created against and cannot be reused on other entities. This approach is only recommended for advanced users that have a specific need for a local option set.

www.dynamicscompanions.com Dynamics Companions

- 301 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Create a new option set or modify an existing option set You might want to make a new custom option set to use across many entities in Common Data Service. You can create an option set in two ways: by creating an option set when you define a new field within an entity, or by creating an option set by using the option set functionality within the Power Apps portal.

Create a new custom option set To create a new custom option set by using the option set functionality in the Power Apps Portal, follow these steps: 1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Option sets.

3.

Select New option set on the menu at the top of the list.

4.

Enter a PC Type for the Display name.

5.

Add the following items to the option set: Laptop Desktop Tablet Server

Note You can assign a unique numeric value by selecting the ellipsis (...) beside the option set entry. 6.

Select the Save button.

www.dynamicscompanions.com Dynamics Companions

- 302 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The option set PC Type is now available to use with any field in any entity within the environment. To use the new option set, follow the next steps. If you have not created the custom entity PC Manufacturers earlier in this learning path, complete the steps to create a new custom entity and then complete these exercises.

Tip It might take a few minutes for the new option set to appear in the list of available option sets. 1.

Sign in to Power Apps again.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data on the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data option on the left-hand side of the portal.

5.

Select the new custom entity PC in the list of entities. This will open the list of fields in the entity.

6.

Select the Add field button on the menu above the list of fields.

7.

Enter Type of PC as the name of the new field.

www.dynamicscompanions.com Dynamics Companions

- 303 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

Select Option set for the data type.

9.

Select PC Type from the list of option sets, as shown in the following figure.

10. Select the Save button. You can also define an option set as you add a new field, without creating an option set in the portal. The option set that you add while defining a field can also be used with any field of type Option set in any entity within the environment.

Define an option set when adding new fields If you would rather define an option set as you add new fields to an entity, follow these steps: 1.

Sign in to Power Apps.

2.

Select the environment where you added the new custom entity PC Manufacturers.

3.

Select Data on the panel on the left-hand side of the Power Apps Portal to expand the available choices.

4.

Select Entities under the Data option on the left-hand side of the portal.

5.

Select the new custom entity PC in the list of entities. This will open the list of fields in the entity.

6.

Select the Add field button on the menu above the list of fields.

7.

Enter Screen Size Field in the Display name field.

8.

Enter Option set in the Data type field and select New.

9.

Type Screen Size in the Display name field.

10. Type 14 Inch, 17 Inch, 21 Inch, and None in the items and then select the Save button.

www.dynamicscompanions.com Dynamics Companions

- 304 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

11. Type 14 inch in the default value field and select the Save button. 12. Select the Save entity button.

www.dynamicscompanions.com Dynamics Companions

- 305 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you need to modify an existing option set, follow these steps: 1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Option sets.

3.

Select the Option set that you want to modify. a.

Add a new entry by selecting the Add new item hyperlink.

b. You can delete an item by selecting the ellipsis (...). c. 4.

You can edit an item by selecting the ellipsis (...) next to the entry and then selecting the View more option.

Select the Done button to save changes.

Check your knowledge 1.

When can't you create an option set?

www.dynamicscompanions.com Dynamics Companions

- 306 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you define a new field

When you edit an existing field

In the option set module

Option sets can contain all of the following except? 

Numbers

Images

Text

Text and numbers

What type of option set can only be used by the entity and field that they are created against and cannot be reused on other entities? 

Standard option sets

General options sets

Local option sets

Special option sets

Summary In this module, you learned: 

What option sets are and what types of option sets are available.

What standard option sets are in Common Data Service.

How to create a new option set or modify an existing option set.

www.dynamicscompanions.com Dynamics Companions

- 307 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Load/export data and create data views in Common Data Service Common Data Service lets you load data into or export entities from other entities by using Microsoft Excel. You can also create views to quickly review data that is stored within an entity.

Learning Objectives In this module, you will: 

View data within an entity.

Create or edit views of data in an entity.

Load data into an entity.

Export data from an entity.

Add, update, or delete data in an entity by using Excel.

Prerequisites A basic understanding of what a database is and its role within a software solution.

View data in an entity Common Data Service has a few options for you to view data in entities. To view data in an entity, follow these steps: 4.

Sign in to the Power Apps portal.

5.

On the left pane, expand Data and select Entities.

6.

Select the entity that is associated with the data that you want to view.

7.

Select Data on the menu at the top of the screen.

8.

After activating the data screen, notice the option in the top menu called Open in Excel. If you select this option, you can work with all the data that is stored in this entity by using Microsoft Excel. This process is further explored in the last unit of this module.

Create or edit views of data in an entity Follow these steps to create and save views of data in an entity:

www.dynamicscompanions.com Dynamics Companions

- 308 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Entities. Select the entity that is associated with the data that you want to view.

3.

Select Views on the menu at the top of the screen.

Selecting Views opens a list of views of data that is associated with the entity. You can open an existing view or create a new view.

Open existing views To open an existing view, follow the previous steps, select the name of the view that you want to see, and the view will open. You might notice that a filter has been applied to the data that is displayed within the view. You can change the filter and display different data by selecting the Edit filter link on the righthand pane and adjusting how the data is filtered in the current view. You can also add more fields to the view by selecting the plus sign (+) at the top of the view, where you will have the option to add more fields. Finally, you can change the sort order of data that is displayed by selecting the Sort by hyperlinks on the right side of the screen.

Create a new view To create a new view of data in an entity, follow these steps: 1.

Sign in to the Power Apps portal.

2.

On the left pane, expand Data and select Entities.

3.

Select the entity that is associated with the data that you want to view.

4.

Select Views on the menu at the top of the screen.

5.

Select Add view on the top menu.

6.

Enter a Name and Description for the view and select the Create view button.

7.

Select the fields and the sort and filtering options that are desired. Select Save and then Publish in the top right of the screen.

Load data into an entity Every entity has required fields that must exist in your input file. We recommend that you create a template. First, export data from the entity. Use the same file (modified with your data) to import data into the entity. This template typically saves time and effort. You will not have to account for the required fields for each entity. If you are unfamiliar with how to export data from an entity, the next lesson discusses the necessary steps in that process. To load data into an entity, use the following steps:

www.dynamicscompanions.com Dynamics Companions

- 309 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

1.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prepare the file template. a.

Export the entity data to the CSV file.

b. Define a plan to make sure that the data is unique. Use either primary keys or alternate keys. c.

Ensure that data is unique before you import it into an entity.

2.

Copy data from your Microsoft Excel or CSV file into the template that you just created.

3.

Import the data into an entity. a.

Sign in to Power Apps.

b. On the left pane, expand Data and then select Entities. c.

Select the entity that you want to import data into.

d. Select the ellipsis (...) or menu at the top. Select Get data and then select Get data from Excel. e.

On the Import data screen, choose whether to import data from an Excel or a CSV file.

f.

Select Upload.

g. Choose your file. Follow the prompts to upload your file. h.

After the file is uploaded and mapping status is green, select Import in the top-right corner.

i.

You can use Excel to add, update, or delete data and fix any mapping errors.

After the import finishes successfully, you will see the total number of inserts and updates that occurred.

Export data from an entity You can quickly export data from an entity by using the built-in capabilities of Common Data Service. 1.

Sign in to Power Apps.

2.

On the left pane, expand Data and select Entities.

3.

Select the entity that is associated with the data that you want to export.

4.

Select the Export data button on the top menu.

Common Data Service will export all data from the entity into a zip file. The zip file is then available to download and will contain the data in a .csv file.

Add, update, or delete data in an entity by using Excel Common Data Service can help you add, update, or delete data in an entity by using a Microsoft Excel add-in feature. 1.

Sign in to the Power Apps portal.

www.dynamicscompanions.com Dynamics Companions

- 310 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

On the left pane, expand Data and then select Entities.

3.

Select the entity that is associated with the data that you want to export.

4.

Select the Open in Excel button on the top menu.

5.

Sign in to Common Data Service by using the Excel add-in located on the right-hand pane.

Now you can use Excel to add, update, or delete data by using the New and Publish buttons in the Excel add-ins.

Tip To delete data, delete one or more rows in the spreadsheet and then select Publish. To edit data, simply edit any value in the spreadsheet and then select Publish.

Check your knowledge 1.

2.

3.

Which of the following can you use Excel for with Common Data Service entities? 

Add and create new entities to store data

Add, edit, or delete data

Add and delete entities

Create new entities and add data to the new entity

Which of the following can be done in Common Data Service? 

Export data from an entity

Export data from one or more entities as zipped markdown files

Load data from any file type into an entity

All of the above

Which of the following statements is not true about views? 

You can create many views of an entity.

You can sort and filter the data in a view.

You can choose the fields that are available in a view and edit at any time.

You can create only two views for each entity.

Summary In this module, you learned how to: 

View data within an entity.

Create or edit views of data in an entity.

Load data into an entity.

www.dynamicscompanions.com Dynamics Companions

- 311 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Export data from an entity.

Add, update, or delete data in an entity by using Excel.

If you want to learn more about using Microsoft Excel with Common Data Service, select the following link. /powerapps/maker/common-data-service/data-platform-excel-addin

www.dynamicscompanions.com Dynamics Companions

- 312 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T06: Master advanced techniques for Power Apps canvas apps Do you want to make sure your app is the best it can be? This learning path will help you use advanced formulas and perform custom updates. It will also focus on performance checks and testing. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

The learning path Work with data in a Power Apps canvas app is recommended

The learning path Use the UI and controls in a canvas app in Power Apps is recommended

www.dynamicscompanions.com Dynamics Companions

- 313 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use imperative development techniques for canvas apps in Power Apps Imperative development techniques can help you achieve the goal for your app. You will learn about different development methods and different variables in Power Apps.

Learning Objectives In this module, you will: 

Understand imperative vs. declarative development

Understand the variables in Power Apps

Understand when to utilize each of the three different types of variables

Prerequisites A basic understanding of how to create a canvas app in Power Apps.

Imperative versus declarative development After completing the previous recommended learning paths, you should have a solid foundation with Power Apps. In this learning path, you will learn some of the more advanced concepts that Power Apps supports. This module includes some concepts that might appear to be very developer focused but do not worry. The goal is to help you understand and apply some of these concepts to build better apps.

Imperative versus declarative There are two main ways to do development, imperative and declarative. In imperative development, the focus is on how to achieve the goal. With declarative, the focus is on getting the result. Imperative provides more flexibility because you control every step in the process, but that means more code and more complexity. Declarative is much simpler and straightforward to use but can lack the ability to have the complete control that you might want.

Imperative To better understand imperative programming think about the sandwich that you want for lunch. In imperative programming, you focus on creating the sandwich in your "code". You go to the kitchen, get

www.dynamicscompanions.com Dynamics Companions

- 314 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

the ingredients, put the sandwich together, and then send it to the user. You spend a lot of time on the steps, but you have all of the specific functions you want to make it exactly the way you want. No tomatoes? No problem. In a completely made up programming language your code might look something like this. Function Create Sandwich { Go to kitchen; Get ingredients; Remove tomato; Assemble sandwich;} Function Send Sandwich { Destination Mouth;} As you can see, there are lots of steps in the process, but you get a sandwich exactly the way you want. This is the approach you will see in languages like C# or other popular coding languages. The focus is on pushing the data.

Declarative For declarative programming, think of the same scenario, your sandwich for lunch. The difference is now you are focused on producing the sandwich, not how to make a sandwich. This is much less complex, but you might also run into the issue with tomatoes. If the function you use to get the sandwich doesn't support the option of no tomato you are out of luck. Your code may be as straight forward as follows. GetSandwich(Kitchen, Mouth) That made up function takes two inputs, where to get the sandwich from and where to send it. There was no option to remove tomatoes. It would be up to the creator of the GetSandwich function to add an option for no Tomato, which might look like this. GetSandwich(Kitchen, Mouth, {Tomato: false}) Low-code tools like Excel use this approach to development. The focus is on pulling data.

Power Apps supports both imperative and declarative methodologies Power Apps has capabilities for both imperative and declarative logic. Throughout this training there has been a focus on declarative formulas. In the remainder of this module, the focus will be on imperative concepts and methodologies in Power Apps. The key component of imperative logic in Power Apps is variables. The next unit will cover the different types of variables and how to use them in an imperative mode.

www.dynamicscompanions.com Dynamics Companions

- 315 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The three types of variables in Power Apps In your app, you can use variables. Variables allow you to store information that you need to reference in your app temporarily. Examples where you can use them include to keep a running count or list of information, to dynamically manipulate controls, to optimize performance, or other scenarios where you need to store information temporarily. Variables are a key driver for imperative logic in Power Apps because they allow you to "build the sandwich" piece by piece. To support you in these needs, Power Apps has three different types of variables. 

Global variables -- The most traditional type of variable. You use the Set function to create and set its value. Then you can reference its values anywhere within your app. A common use is to store a user's DisplayName when the app loads and then reference the variable throughout the app.

Context variables -- A context variable is only available on the screen where you create it using the UpdateContext function. Context variables are commonly used for functionality that controls a pop-up screen, for example, where you want to use the same variable name on multiple screens but maintain the value separately.

Collections -- A collection is a special type of variable for storing a table of data. You can create the collection manually or by loading another data sources table into it. Collections are available throughout your app, like global variables, and they are created using the Collect or ClearCollect function.

When choosing which type of variable to use, consider where you will use it and the structure of the data you want to store. When in doubt, use a global variable as it has the most flexibility.

How all of the variable types are the same With Power Apps, variables are easy to use. You do not have to initialize, declare, or type a variable. You create the variable with the appropriate function, and Power Apps does the rest. When you assign the value to a variable Power Apps will automatically determine the type. It is also important to note if you are new to variables that variables are temporary and only available to the current user in their current session. When the user closes Power Apps, all of the information stored in variables is no longer available. If you need to store information for use later or by other users, then you will need to write that information to a data source. Variables are temporary by nature. In the next units, you will explore each variable type in more detail. The next unit covers the global variable.

Global variables Global variables are the most commonly used variables because of their flexibility. After you set the variable, you can reference it or update it throughout your app. This allows you to avoid repetitive query

www.dynamicscompanions.com Dynamics Companions

- 316 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

for the same information repetitively, to build out the information you need in an imperative way, or sometimes just as a place holder.

Storing information for your user A common design pattern in apps is to personalize the app. This can be as simple as saying Welcome and displaying the user's name on each screen of the app. With Power Apps, you can show a welcome message and get the user's name in a declarative manner by using the following formula in a Label control. "Welcome " & User().FullName This formula displays the string Welcome and then queries Azure Active Directory for the user's DisplayName property and displays it as text. But if you include that function on every screen then each time a screen opens Power Apps has to query that data from Azure AD directly. This creates repetitive calls to the network that slow down your app. A better approach would be to store that information in a global variable when the app opens, and then reference that variable throughout your app. You could do this by Modifying the OnStart property of the app with the following formula. Set(varUserDisplayName, User().FullName) Now for your Label control, you would change the formula to the following. "Welcome " & varUserDisplayName This formula gets you the same output as the previous formula, but instead of having to go back to Azure AD on every screen, Power Apps can reference the value stored in the variable.

Tracking status in a variable In a declarative mindset, you might hide or show controls based on a query for data. For example, if you had an app for managing customer's orders, you might have a warning icon that displays only if the customer has more than three outstanding invoices. In addition to the warning, you might have a requirement to get approval from a manager if the customer would like to submit a new order when they have more than three outstanding invoices. This approval workflow will start by the user selecting an approval button. With a declarative mindset, you would set the Visible property for the warning icon to the following. CountRows(Filter(InvoiceEntity, CustomerNumber = ThisCustomersNumber And Status = "Outstanding")) > 3 If that is true, then the icon displays, and if it is false the icon does not display. You would then repeat that same formula on the Visible property of the Approval button.

www.dynamicscompanions.com Dynamics Companions

- 317 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The problem is this becomes a complex formula that you maintain in two different locations, and that query will generate duplicate network traffic, processing in the app, and processing on the data source. A better approach is only to run the complex call once, store the result in a variable, and then use that variable to control the Visible property of each control. To do this, configure the OnVisible property of the screen to set the variable. Set(varOustandingExceeded, CountRows(Filter(InvoiceEntity, CustomerNumber = ThisCustomersNumber And Status = "Outstanding")) > 3) The variable varOutstandingExceeded is either true or false based on the result of the formula. Now set the Visible property of the icon and button control to varOutstandingExceeded. No additional formula or functions are necessary. This is because those controls accept either true or false for the Visible property and the variable will be either true or false. Based on your Set function in the OnVisible property of the screen, Power Apps will set the type of variable to Boolean and set the value to true or false based on the result of the formula. Small changes like this make your app both more performant and easier to maintain. You should incorporate variables anytime you are repetitively retrieving information that is not going to change while you are using it.

Contextual variables Contextual variables are similar to global variables except they are only referenced on the screen where you create them. Although it’s not possible to set the user's name to a variable to reference throughout your app, there are still advantages to the fact that contextual variables cannot be used on other screens. Sometimes you have functionality you want to use on multiple screens that is variable driven. For example, many apps use pop-up dialog boxes to confirm things like deleting a record. A common way to implement this is to set a Contextual variable to true when the user selects the delete button. You do that by setting the OnSelect property of the button to the following. UpdateContext({varShowPopUp: true}) You then set the Visible property of the pop-up controls to varShowPopUp. This is similar to the example from the global variables. The major difference is reusability. If you copy the controls (using Ctrl+C) to an additional screen, then you will have two instances of varShowPopUp. These two instances use the same name, but can have different values. The value of varShowPopUp on screen1 does not affect the value of varShowPopUp on screen2 because each contextual variable, even when they have the same name, are scoped to the screen they are on. Typically reusing variable names like this is not recommended because it can be confusing, but it’s great if you want to reuse functionality independently on different screens.

www.dynamicscompanions.com Dynamics Companions

- 318 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you are in doubt about whether you should use global or contextual variables, typically global variables are the default answer. This is because they are available everywhere, making them the most flexible. One unique behavior of the UpdateContext function is that you can declare more than one variable at a time. This is not possible with the Set function. To create more than one context variable with a single formula, use a comma between the variables. UpdateContext({varCount: 1, varActive: true, varName: User().FullName}) To do the same thing with Global variables, you would use the following. Set(varCount, 1);Set(varActive, true);Set(varName, User().FullName) This is not a reason to sway your choice of variable types but a useful concept to remember. In the next unit, you will learn about storing tables of data in a collection variable.

Collections In the previous two units, you learned how global and contextual variables store single values. The third variable type, collections, allow you to store a table of data. This is ideal when you need to store large amounts of structured data for reuse in your app. This data can come directly from a data source, can be created within the app, or a combination of both.

Using collections to increase performance The most common reason for using collections is to optimize performance by reducing calls to the same table in a data source. For example, if you have a table that stores all of your active projects and you want to reference that list multiple times in your app, then you should consider querying for that data once and storing it in a collection. To store a copy of the Projects table from your data source into a collection called collectProjects, use the following formula. Collect(collectProjects, Projects) This will create a collection named collectProjects that will have the same rows and columns as the Projects table from your data source. Here are a couple of considerations that you need to understand about using collections: 

The Collect function is not delegable. This means by default only the first 500 records from the data source will be retrieved and stored in the collection. For more information about working with delegation, see Work with data source limits (delegation limits) in a Power Apps canvas app

Collections are not linked to the data source after you create them. This means changes to the data in the collection do not automatically save to the data source. If you want to update the data source based on your changes to the collection, you will need to build formulas to do so.

www.dynamicscompanions.com Dynamics Companions

- 319 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Collections are temporary. When you close the app, the collection and all of its contents are removed. If you need to store collection data, you need to write it to a data source before closing the app.

Using dynamic collections Collections do not have to come from a data source. You can also create a collection from information directly within your app. This is often done to provide values for a drop-down menu or combo box and to store large amounts of data before writing to a data source. Creating a collection with your own data is very similar to working with the other variable types. The following formula will create a collection named collectColors that matches the structure shown in the following table. Collect(collectColors, {Name: "Shane", FavoriteColor: "Orange"}, {Name: "Mary", FavoriteColor: "Blue"}, {Name: "Oscar", FavoriteColor: "Yellow"}) Name

FavoriteColor

Shane

Orange

Mary

Blue

Oscar

Yellow

After you create the collection, you can then reuse it throughout your app. This also means all of the table functions are available to be used. The one exception where Collections vary from tabular data sources is you cannot use them with the Form control. For more information about working with collections and the table data they store, see Author a basic formula that uses tables and records in a Power Apps canvas app. Additionally, collections store table data no differently than tabular data sources. The learning path Work with data in a Power Apps canvas app has many concepts that allow you to work with and extend the power of your collections. In the final unit of this module, you will learn about some additional variable concepts and how to apply them to your apps.

Additional variable concepts Now that you have an understanding of Power Apps logic concepts and variable types, there a few additional concepts to expand on that will help you integrate variables into your app.

www.dynamicscompanions.com Dynamics Companions

- 320 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Variables can self-reference This concept applies to both global and context variables. Sometimes you need to make a variable that points to itself. This is often done when you want to either do a counter type variable where it increments a value or you are appending a string. With Power Apps this is easy to implement. Place the following formula on the OnSelect property of a button to set up a counter. Set(varCounter, varCounter + 1) The first time that you select the button the value will be 1. If you select the button a second time the value will be 2. Use the following table to see the literal translation. Value of varCounter before the button press

Button Formula press

Values

0

First

Set(varCounter, varCounter + 1)

Set(varCounter, 1 0 + 1)

1

Second Set(varCounter, varCounter + 1)

Set(varCounter, 2 1 + 1)

2

Third

Set(varCounter, 3 2 + 1)

Set(varCounter, varCounter + 1)

Value of varCounter after button press

When the app first starts, the value of varCounter is 0, and it is incremented by 1 each the time the button is selected. It is important to remember that the default value of a variable will vary based on the variable type if you do not set the default property. 

Text variables are ""

Number variables are 0

Boolean variables are false

A variable can store a single record This concept applies to global and context variables. Collections differ slightly because they are a table made up of one or more records, meaning storing and retrieving a record is different for a collection. In the previous units, you learned how to store a single value in a global or context variable. You can also store a record in the variable. When you do this, you can then reference the different fields or columns by using the dot (.) notation. In this example, you will store the entire user record in a global variable named varUser. To do so, use the following function. Set(varUser, User())

www.dynamicscompanions.com Dynamics Companions

- 321 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This will store the entire user record in the variable. The user record has 3 columns Email, FullName, and Image. You can retrieve the values of the individual columns using the dot (.) notation. To display the user's email address, add a Label control to the screen and set the text property to: varUser.Email This example stores the record from an action-based data source. You could also use the LookUp function as a way to retrieve and store a record from a tabular data source, like Common Data Service, in a variable.

Variables don't auto update A common point of confusion for people who are new to variables is that variables don't automatically update. For example, they can use a variable to store the number of customer invoices using OnStart for the app. Then in the app, the user creates a new invoice. The variable doesn't distinguish the number of invoices in the system that have changed. The variable will only update when: 

The user closes the app and then opens it again. This causes OnStart to perform the operation to calculate the number of invoices.

You implement functionality to update the variable after the user creates an invoice.

Be aware of this common point of confusion if you are new to using variables to track data.

Check your knowledge 1.

2.

3.

Which type of variable is preferred when you are unsure? 

Global variables

Context variables

Collection variables

Default variables

Which control do you use to reference a context variable on another screen? 

A Label control

A Form control

Any control type that supports variables

Context variables are only available from the screen they were created on

How can Global variables be used to enhance performance? 

They cannot, they slow down the system

By increasing the cache rate to 1000

By storing information to be referenced throughout your app

By caching data for a closed app

www.dynamicscompanions.com Dynamics Companions

- 322 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary In this module, you learned about variables in Power Apps and how they enable you to apply both imperative and declarative programming techniques. Here are some key concepts to remember: 

Power Apps supports both imperative and declarative logic.

Global variables are for storing information to use throughout your app.

Context variables are for storing information that is only available on the same screen.

Collections are a type of variable that stores table data. Most table functions and controls work with collections like all tabular data sources.

www.dynamicscompanions.com Dynamics Companions

- 323 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Author an advanced formula that uses tables, records, and collections in a canvas app in Power Apps Do you have need for a complex formula in your app? This module can help you author that formula.

Learning Objectives In this module, you will: 

Utilize formulas that process multiple records

Use the Concat function to combine text from multiple records

Utilize the Countrows, CountIf, ForAll

Perform math operations on data in a table

Prerequisites A basic understanding of how to create a canvas app in Power Apps.

Formulas that process multiple records Throughout other Power Apps learning paths, you have been focused on using formulas to manipulate single records. That is a great way to get started with Power Apps. As you build more complex apps, it is often necessary to process and work with multiple records in one formula. Throughout this module, the focus will be on learning some of the more common functions that are used to work with tables, records, and collections. To keep the rest of this module straight forward, the content will refer to tables and records. Tables are a data set that is made up of one or more columns with one or more rows of data. A record is the name used to refer to the individual rows in the table. Tables can be manually created using the Table function or come from a tabular data source. Collections are a special kind of variable that stores a table. Throughout this module, table and collection are synonymous. This means that any function you can use on a table of data , you can use on a collection.

Calculations based on multiple records Sometimes the functions are not about changing the table but performing math operations in relation to the data. The most basic being the CountRows function. This simple function is used to count the number

www.dynamicscompanions.com Dynamics Companions

- 324 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

of rows (records) in a table. There are also more traditional math functions such as Sum or Average. These functions process a numerical operation over a table of data.

Splitting up and combining data When working with your data, it is often necessary to transform the data to display it or sort it in the proper manner. For example, you cannot display a record in a label. To change those records into a comma-separated list of data you can use the Concat function. The function allows you to specify a formula to process over a table of data and the result of each record is separated by a string you specify. The reverse of this is also possible with the Split function. You can use the Split function to take a string that is separated by a character, like a comma, and turn it into a table of data. Both functions open up the possibilities of working with data the way you want.

Taking action across a table of data There might be situations where you want to process your data in ways with no available built-in function. In this instance, you can use the ForAll function. ForAll is a dynamic function that allows you to run a formula once for each record in a table while referencing all of the data in the current record. For example, if you wanted to send an individual email to every customer in your table, a ForAll function could run the Office365.SendEmail function once for each customer.

Tables are flexible As you work through this module, remember that all of the functions are about working with a table of data. This includes tables that you create with the Table function, tables that come from tabular data sources, collections, and formulas that output tables. Functions like Filter and Search output a table of data and you can use functions with that table of data. For example, you might use Sum(CustomerEntity, InvoiceAmount) to calculate the total amount of invoices in the table. But, you could also filter the data where you only sum the customers where Country equals Germany by modifying the formula to Sum(Filter(CustomerEntity, Country = "Germany"), InvoiceAmount). This concept applies to all of the functions throughout this module. In the next unit, you will learn how to use math operations across tables.

Aggregate functions The aggregate functions are used to provide summary information from a table of data. Information like the average sales price of the standard deviation of scores. Think of it as simple reporting on your data that enables a better app experience. For example, you could use Max(CustomerOrders, SalePrice) to find the maximum value stored in the SalePrice column of the CustomerOrders table. With this information, you could confirm that the price entered in a Form control did not exceed that price before letting the user submit the form. Power Apps includes the following aggregate functions:

www.dynamicscompanions.com Dynamics Companions

- 325 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Average calculates the average, or arithmetic mean, of its arguments.

Max finds the maximum value.

Min finds the minimum value.

Sum calculates the sum of its arguments.

StdevP calculates the standard deviation of its arguments.

VarP calculates the variance of its arguments.

All of these functions support data being passed directly to them, such as: Average(9,10,8) This formula would return the value 9, which is the average of the three input values. Or by passing a table and expression to them such as: Average(OrdersTable, OrderAmount) This formula would return the average of the OrderAmount column from the OrdersTable. In a later unit, you will learn how to split and combine data with functions.

Math operation on tables When working with data in Power Apps, there are many reasons to perform math operations across your data. This math can be counting functions or aggregate functions. Both support tables of data. Not covered in this module are additional math functions and operators for non-table data. For a complete list of all functions, see Formula reference for Power Apps.

Counting functions Counting functions are used to compute the number of records in a table of data based on criteria. They are often used to provide visual indicators back to the user. For example, you could use CountIf(TasksTable, Complete = "No") to count the number of records in the TasksTable where the column Complete equals No. Then based on the total, you could conditionally format the Color property of a label or change the Visible property of an icon. These types of visual indicators improve the user experience. Power Apps includes the following counting functions: 

Count counts the number of records that contain a number in a single-column table.

CountA counts the number of records that aren't blank in a single-column table. This function includes empty text ("") in the count.

CountIf counts the number of records in a table that are true for a logical formula. The formula can reference columns of the table.

CountRows counts the number records in a table. www.dynamicscompanions.com Dynamics Companions

- 326 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Count and CountA only support single-column tables, and that is the only argument they accept. CountIf accepts a table and then the logical formula to process. It then returns a count of all of the records that match the logical formula. CountRows accepts only a table as an argument and then returns a count of the number of rows in that table.

Combine and separate records When working with data sometimes you need to be able to modify the data. Common scenarios include taking a table of records and combining the records into one string to display, or taking a string and turning it into multiple records in a table. With Power Apps you use the Concat and Split functions to accomplish this task.

Turn table data into a string The Concat function combines the result of a formula applied across all the records of a table, resulting in a single string. Use this function to summarize the strings of a table, just as the Sum function does for numbers. This could be used to create a list of comma-separated values to display all of the customers assigned to a sales rep, a semicolon-separated list of email address to pass to an email function, or to dynamically generate an HTML table to be used in the creation of a PDF document with the help of Power Automate. Fields of the record currently being processed are available within the formula. You simply reference them by name as you would any other value. You can also reference control properties and other values throughout your app. For example, you could use Concat(CustomerOrders, Email & ";") to create a single string that contains the values of the Email column separated by a semicolon. You could use this formula for the To: argument in the Office365.SendEmail function to send a single email to all of those addresses. As you begin using the Concat function be sure not confuse it with the Concatenate function that is used to combine multiple strings into one string.

Turn a string into a single column table The Split function breaks a text string into a table of substrings. Use the Split function to break up commadelimited lists, dates that use a slash between date parts, to break a word into the individual characters, and in other situations where you need a well-defined delimiter. A separator string is used to break the text string apart. The separator can be zero, one, or more characters that are matched as a whole in the text string. Using a zero length or blank separator results in each character being broken out individually. The matched separator characters are not returned in the result. If no separator match is found then the entire text string is returned as a single result.

www.dynamicscompanions.com Dynamics Companions

- 327 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For example, you could use Split("Canada, Mexico, United States of America", ",") to create a single column table with three records. The name of the column would be Result. This can be useful when retrieving data from a multi-value field and you want to use those values in a drop-down control. In this example, you would set the Items property of the drop-down control with the formula. In the next unit, you will learn how to process a formula once for every record in a table.

The ForAll function Previously you have learned to use single-purpose functions to operate against a table. Those are ideal and perform well, but sometimes you need more flexibility or you need to do something not covered by one of those functions. For those situations, there is the ForAll function. The ForAll function evaluates a formula for all records of a table. The formula can calculate a value and/or perform actions, such as modifying data or working with a connection. Fields of the record currently being processed are available within the formula. You can reference them by name as you would any other value. You can also reference control properties and other values throughout your app. For example, you could use ForAll(CustomerOrders, Office365.SendEmail(Email, "Thank you", " You are a great customer " & FirstName)) to send a separate email to all of the email addresses in the CustomerOrders table. The email subject would be "Thank You" and the body would be "You are a great customer" followed by the value stored in the FirstName field. This example varies from the Concat example in two important ways. First, this will send one email for each record in the CustomerOrders table. So, if there are 50 records, 50 different emails will be sent. In the Concat example, only one email was sent with all 50 email addresses in the To: line. Second, this email also references the FirstName field from the CustomerOrders table. When you use the ForAll function all of the fields for each record are available to be used.

Things to know when using ForAll With ForAll there is a tremendous amount of power, but there are also several things to know as you start to build your formula. 

The formula can include functions that take action, such as modifying the records of a data source with the Patch and Collect functions.

The formula can call methods on connections.

You can perform multiple actions per record by using the ; operator.

You can't modify the table that is the subject of the ForAll function.

When writing your formula, keep in mind that records can be processed in any order and, when possible, in parallel. You may process the first record of the table after the last record. Be sure to avoid ordering dependencies. For this reason, you can't use the Set, UpdateContext, Clear,

www.dynamicscompanions.com Dynamics Companions

- 328 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

and ClearCollect functions within a ForAll function because they could easily be used to hold variables that would be susceptible to this effect. You can use Collect, but the order in which records are added is undefined. The ForAll function has a lot more rules than most Power Apps functions. Also, because you cannot use functions like Set and UpdateContext sometimes you must find another way to approach your formula. Often the reason you wanted to use Set with ForAll was to track the number of records that were modified or to capture information about those records. You may find that using Patch to update a collection where you track that same data gets you the same result. For more information about usage and rules for the ForAll function, see ForAll function in Power Apps.

Check your knowledge 1.

2.

3.

When using functions that process Tables of data, the table must come from? 

Unfiltered data sources

Any data source but not collections

Single column tables only

The functions will accept any table. The table may come from a tabular data source, a collection or a Table function

The aggregate functions support the following inputs? 

Only Table data with an expression -- Example Sum(Table, Column1)

Only Manual data -- Example Sum(1,2,3)

Both Table data and Manual data

Only Table data without an expression -- Example Sum(Table)

What function can you use in the formula for the ForAll function to overcome not being able to use Set and UpdateContext? 

You can use Set and UpdateContext in ForAll.

You can use the Collect function.

You can use the ForAllVariable function.

You can use the Patch function.

Summary In this module, you learned how to use functions that process tables of data. This allows you to do things such as perform mathematical operations, split and combine data, and process almost any function you want on the records. Some key takeaways to consider include:

www.dynamicscompanions.com Dynamics Companions

- 329 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps has functions that process single records, multiple records, and some that can do either.

Using functions that count or summarize data can provide a better user experience.

ForAll is a powerful function that has a lot more rules and considerations that any other Power Apps function.

In the next module, you will learn more about functions for performing custom updates to your data in Power Apps.

www.dynamicscompanions.com Dynamics Companions

- 330 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Perform custom updates in a Power Apps canvas app With some Power Apps canvas apps a form is not the solution. This module will focus on how to perform custom updates when your data is not in a form.

Learning Objectives In this module, you will: 

Use the Patch function to update your data

Understand how the Defaults function is used to create new records with Patch

Utilize the Remove and RemoveIf functions to delete records

Determine whether to use Clear and Collect or ClearCollect in their scenario

Prerequisites A basic understanding of how to create a Power Apps canvas app.

Sometimes you need something more than forms When building canvas apps in Power Apps, you go to Galleries to display records from your data source and Forms to view, create, and edit an individual record, but sometimes forms are not enough. In those scenarios, Power Apps has functions for updating your tabular data sources directly.

Directly create and edit a record In this module, you will learn about using the Patch function to update your data sources without the use of forms directly. Patch is most often used when you need to take action on the data without user interaction in a repetitive manner, or your app design doesn't allow for the use of forms. For example, if you want to update a logging data source every time a user clicks a button to navigate to another screen you could use the formula for the OnSelect property of the button. Patch(LoggingEntity, Defaults(LoggingEntity), {WhoClicked: User().FullName, WhenClicked: Now()}); Navigate(NextScreen, ScreenTransition.Cover)

www.dynamicscompanions.com Dynamics Companions

- 331 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This formula would create a new record in the data source named LoggingEntity. The WhoClicked column sets to the FullName property of the user who is signed in, and the WhenClicked column sets to the Date and Time of when they clicked the button. This would open the screen named NextScreen using the Cover screen transition.

Delete a record There are also functions available for deleting one or more records from your data source. Those functions are: 

Remove and RemoveIf - These functions are used to remove or delete records from the data source.

Clear - Use the Clear function to remove all of the records from a collection.

For example, if you wanted to give the user the ability to delete a record from a Gallery control, add a Trash icon to the Gallery displaying the data source CustomerOrders and then set the OnSelect property of the icon to the following. Remove(CustomerOrders, ThisItem) This formula would delete the record for the item that was displaying the Trash icon from the CustomerOrders data source. There would be no confirmation, so you might consider implementing a check or pop-up dialog to confirm that the user truly wants to delete the record.

Bulk changes to records Patch and Remove are both functions that are used to affect one record. If you need to affect change on more than one record, there are two options: 

Use the ForAll function, which was covered in the previous module, to loop through a table of data and run a Patch or Remove function for each record in the table.

Use the Collect function to write from one table to another. Each record of the source table is added as a separate record to the target table.

These topics are covered in other Power Apps learning paths and are not covered in this learning path.

Collections are data sources It’s important to remember that these functions can use a collection as their target. Patch, Remove, and RemoveIf can all be used to modify both tabular data sources and collections. As you build more complex apps storing data in collections and working with those items is very common, these functions will be a big part of that manipulation. The remainder of this module will refer to updating a data source. Remember that a data source can either be a tabular data source or a collection unless stated otherwise. In the next unit, you will learn how to create and edit records.

www.dynamicscompanions.com Dynamics Companions

- 332 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Using the Patch function to create and edit records The Patch function is used to create and edit records in a data source when using a Form control doesn't meet your needs. Patch is used most often when you need to take action on the data without user interaction, in a repetitive manner, or your app design doesn't allow for the use of forms.

Using Patch to create a record The Patch function can be used to create a new record in your data source. To create a new record, there are three parts to the formula. 1.

Include the name of the data source you want to edit. This could be a tabular data source (such as Common Data Service or SharePoint) or a collection. For the example, you will use CustomerOrders as the name of the data source.

2.

The Defaults function returns a record that contains the default values for the data source. If a column within the data source doesn't have a default value, that property won't be present. By using Defaults with the data source, this notifies Patch to create a new record.

3.

Include the columns that you want to populate in the new record. Here you will specify the name of the column to update followed by the value to write to that column. For this example, you will update the Region and Country column with a string value.

The example formula is as follows: Patch(CustomerOrders, Defaults(CustomerOrders), {Region: "Americas", Country: "Canada"}) This formula will create a new record in the CustomerOrders data source and will set the Region to Americas and Country to Canada. Notice that you do not define any primary key information (the ID column) that will be updated by the data source according to its settings.

Using Patch to edit a record It is also possible to edit a record in the data source. To edit a single record, there are three parts to the formula. 1.

Include the name of the data source you want to edit. This could be a tabular data source (such as Common Data Service or SharePoint) or a collection. For the example, you will use CustomerOrders as the name of the data source.

2.

The record that you want to edit in the data source. The most common way to specify this record is to use the LookUp function to retrieve the record from the data source. Another option if you are using a Gallery and you want to update the current record is to use the ThisItem function for referencing the record. For this example, you will use a LookUp function.

3.

Include the changes that you want to make. Here you will specify the name of the column to update followed by the value to write to that column. For this example, you will update the Region and Country column with a string value.

www.dynamicscompanions.com Dynamics Companions

- 333 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The example formula is as follows: Patch(CustomerOrders, LookUP(CustomerOrders, ID = 1), {Region: "Asia", Country: "China"}) This formula will update the record with an ID of 1 in the CustomerOrders table by setting the Region column to Asia and the Country column to China. If there are existing values in those fields, it will be overwritten.

Updating columns with Patch The primary logic of most Patch functions is updating the proper columns with the correct information. This will be the source of most of your troubleshooting of the Patch function. Use the following points to help you work through Patch. 

Make sure you are updating all of the required columns from your data source.

You can update as many or as few of the optional columns as you would like.

Make sure your column names are spelled and capitalized correctly. Column names are casesensitive.

Make sure you are writing the correct data type. For example, if your column in the data source is a number type, then you cannot write a string value to it, even if that string contains a number.

There are four sources to pass values in your formula to Patch your data source: 

You can hardcode a value. An example is if you want to patch the status of the record with "Pending", your Patch formula would look like: Patch(CustomerOrders, Default(CustomerOrders), {Status: "Pending"}) This formula creates a new record and sets the Status column to the string value of "Pending".

You can reference a variable. For example, you can store the string "Under Review" in a variable named varStatus with the following formula. Set(varStatus, "Under Review") Then your Patch formula would be: Patch(CustomerOrders, Default(CustomerOrders), {Status: varStatus}) This formula creates a new record and sets the Status column to the string value of "Under Review".

You can reference the value from the property of a control. An example would be setting the value from a drop-down menu named Dropdown1 that contained the regions. Your Patch formula would look like: Patch(CustomerOrders, Default(CustomerOrders), {Status: Dropdown1.Selected.Value}) This formula creates a new record and sets the Status column to the value of the selected item in the drop-down menu.

www.dynamicscompanions.com Dynamics Companions

- 334 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can use the output of a formula. An example would be setting the value of the ModifiedBy column using the FullName from the User() function. Your Patch formula would look like: Patch(CustomerOrders, Default(CustomerOrders), {ModifiedBy: User().FullName}) This formula creates a new record and sets the ModifiedBy column to the current user's FullName from Azure Active Directory.

Patch example Let’s take a look at another example, in this example you’re trying to build a simple solution for signing users into class as they arrive. This type of Power Apps solution is common and by using the Patch function it can be achieved with only a few steps.

Solution breakdown Here we have a simple Canvas app connected to our data source (TrainingClassSignIn). The data source has the following columns, Training Class, FirstName, LastName, EmailAddress, SignInStatus. This is the information we want to capture when a user selects the Sign‐in button. In the formula bar, you see the following code: Patch(TrainingClassSignIn,Defaults(TrainingClassSignIn),{TrainingClass:TrainingClassD D.Selected.Value, FirstName:FirstNameInput.Text, LastName:LastNameInput.Text, EmailAddress:EmailAddressInput.Text, SignInStatus:"Attended"}) To elaborate, whenever someone selects the Sign‐in button, a new record will be written to the TrainingClassSignIn data source. As to what data will be written back for the user signing in, you can see it’s getting this information from the Controls we added. You will also notice; it is setting the SignInStatus to “Attended” for each new record.

www.dynamicscompanions.com Dynamics Companions

- 335 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

As you can see, Patch is flexible and powerful. Patch has even more capabilities including the ability to update multiple records and merge records. For more information about these scenarios, see Patch function in Power Apps.

Deleting record(s) from data sources and collections One topic that has been not covered in previous content is the concept of deleting a record from a tabular data source or collection. Unlike creating and editing records, which have multiple controls and functions, for deleting records there is only the Remove, RemoveIf, and Clear functions. This code is often added to the OnSelect property of a Button or Icon control.

Delete a record To delete a record from your data source use the Remove function. Use the Remove function to specify the data source and the record that you want to delete. The most common way to specify this record is to use the LookUp function to retrieve the record from the data source. Another option is if you are using a Gallery and you want to delete the current record, the ThisItem operator is supported for referencing the record. For example, you could use the following formula to delete a record. Remove(CustomerOrders, LookUp(CustomerOrders, ID = 1)) This formula will delete the record where the ID equals 1 from the data source CustomerOrders.

Remove doesn't ask to confirm Remove does not prompt for any confirmation before deleting the specified record. If you would like to confirm that the user wanted to remove the record, you would need to create confirmation functionality.

Deleting based on a condition If you want to delete more than one record from your data source, you can use RemoveIf. The RemoveIf function allows you to provide a data source to delete from and a condition for selecting the records to delete. This is the same logic that is used by the Filter function. For example, you could use the following formula to delete all of the records where the Status equals Expired from the CustomerOrders data source. RemoveIf(CustomerOrders, Status = "Expired")

www.dynamicscompanions.com Dynamics Companions

- 336 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Delete all of the records It is also possible to delete all of the records in a data source. This is most common with collections where you can use the Clear function. If you want to delete all of the records from a data source, you can use RemoveIf.

Delete all of the records in a collection The Clear function deletes all the records of a collection. The columns of the collection will remain. The only input you pass to the function is the collection name. For example, you could use the following formula to delete all of the records from a collection. Clear(collectSelectedItems) This formula will delete all of the records from the collectSelectedItems collection without changing the columns of the collection. You will typically see this type of formula when you want to clear out the collection without having to redefine it, like in the case of a reset button or selecting a new order. Note that when working on collections you also have the ClearCollect function. The ClearCollect function deletes all the records from a collection and then adds a different set of records to the same collection. With a single function, ClearCollect offers the combination of Clear and then Collect. All three functions have their place. One way to think about whether you want to use Clear and Collect versus ClearCollect is when the clearing of the collection happens compared to when you want to add records back. Here are two examples to illustrate this: 

All at once - For example, if you are reloading the items in a collection for a drop-down menu when a screen becomes visible, you would want to use ClearCollect. One formula would then remove the old records and add the new records.

Multi-step - For example, if you are using collections to store user inputs like in a shopping cart you can use Clear and Collect. This is because the user might want to clear their shopping cart without adding a new record.

Delete all of the records from a data source It is possible to delete all of the records from a data source using RemoveIf. This is not a very common scenario. Again there will be no confirmation before the formula processes unless you build such functionality. Finally, there is no undo or recycle bin in Power Apps. If you want to recover your data, you would need to go to your data source and use whatever recovery process is available for that data source, outside of Power Apps. Proceed with caution. For example, you could use the following formula to delete all of the records from a data source.

www.dynamicscompanions.com Dynamics Companions

- 337 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

RemoveIf(CustomerOrders, true) This formula will delete all of the records from the CustomerOrders data source without changing the columns of the data source. The reason this works is RemoveIf checks every record in the data source to see if the equation equals true. In this case, the equation has been set to true, so every record will be deleted.

Note Setting the equation portion to true also works with the Filter function. This can be a valuable setting if you are trying to troubleshoot formulas where you are not sure if Filter is returning data.

Check your knowledge 1.

2.

4.

Use the Patch function to? 

To edit records only

To delete records only

To create records only

To create and edit records but not delete

2. To delete a record from a data source or collection which function would you use? 

The Remove function

The Delete function

The Delete control

The DeleteIf function

How does Power Apps handle mass deletes from a data source? 

Power Apps has a built-in recycle bin.

Power Apps will automatically prompt the user before deletions.

Power Apps cannot mass delete data.

Power Apps is a flexible platform that allows you to build your own mass deletion functionality as required by your business needs.

Summary Sometimes it is necessary to work directly with your data source. In this module, you learned how to create, update, and delete data directly from your tabular data source. Here some key things to remember: 

The Patch function is the multi-purpose function for creating and editing records directly in your data source when forms don't work for your scenario.

www.dynamicscompanions.com Dynamics Companions

- 338 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The Remove function allows you to delete a single record from your data source or collection.

The RemoveIf and Clear functions provide the capability to delete multiple or all the records from a given data source.

When deleting records in Power Apps there is no confirmation, undo, or recycle bin functionality. It is up to you to add that functionality if it is required in your app.

www.dynamicscompanions.com Dynamics Companions

- 339 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Complete testing and performance checks in a Power Apps canvas app Do you want to test your app and improve it's performance? This module will help you understand how to test an app and improve performance.

Learning Objectives In this module, you will: 

Use best practices to improve the performance of your app

Understand how to best test an app

Use fiddler for troubleshooting

Prerequisites A basic understanding of how to create a Power Apps canvas app.

The importance of thinking about performance The performance of an app is important to keep users happy. Apps can go from mediocre to great just based on performance. And sometimes it can be as simple of a change as caching data in a collection or removing redundant calls to the data source. In this module, you will learn about common performance problems, ways to mitigate their impact, and how to perform testing to discover the issues.

The most common performance bottleneck - Data sources The most common app performance problems come from interactions with data sources. Almost every app has one or more data source. Power Apps natively supports over 200 different connections to these data sources and using these connections is key to a great app. Calling these data sources from your app is often the largest bottleneck in your app because of the time it takes to call across the network to the data source, process the request on the data source side, return the data to Power Apps across the network, and then for Power Apps to process and display the data. Optimizing these interactions with data sources is key to great performance. The following sections highlight some of the most common mistakes.

www.dynamicscompanions.com Dynamics Companions

- 340 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Too many refreshes Using the Refresh function, you can force Power Apps to update the data it has gathered from a given data source. This seems like a great function to run because you get the freshest data in your app. But, Power Apps will often handle this refresh for you. For example, when you use a Form to submit a new record to a data source displayed in a Gallery control, Power Apps will automatically refresh that connection. If you include a Refresh function when you navigate to the Gallery screen you are now refreshing the data that Power Apps already refreshed. This is redundant and slows your app down for no reason.

Note Do not use the Refresh function until you are certain it is needed.

Too many lookups As you start to use relational data (covered in Learning Path Use advanced data options and connectors in Power Apps -- Module 1 Work with relational data in a canvas app in Power Apps) a common mistake is not to consider the ramifications of a LookUp function inside of a Gallery. When you place a LookUp function on a Label inside of the Gallery, then that LookUp will be performed once for every record in the Gallery. That means if you have 100 records in the Gallery the app has to perform 100 individual LookUp calls to the data source to render. Depending on the data source this could take minutes to render. A better approach is only to display the related data using a details screen or to use a Collection to cache the data from the data source, then the LookUp does not have to execute across the network.

Note Be careful when making additional calls to remote data sources if you use controls that display multiple records.

Storing data in the wrong data source Different data sources are optimized for different workloads and this should be a consideration when choosing where to store data. One example is storing images or files. A common use of Power Apps is to capture images either using the Camera control or the devices built-in camera app. After the user has taken the image, it needs to be saved. One option is to store the image in the same SQL Server database as the other app data. While possible, it is important to note that SQL Server is very inefficient in storing images. Writing and reading the image file to a SQL database is slow, causing your app to run slow. A better option is to store Power Apps images in the Azure Blob Storage. Azure Blob Storage is much faster than writing the same data to SQL Server. This minor change to the underlying structure of your app can have a useful impact on user satisfaction.

Note Choose the optimal data source for your app to get maximum performance.

www.dynamicscompanions.com Dynamics Companions

- 341 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Other performance considerations While data sources might be the largest bottlenecks, there are other easily overlooked changes you can make to get optimal performance. Some other common issues include: 

Asset size - When you are designing your app it is great to include company logos and other visual assets. When you add these assets to your app, make sure the assets are optimized for the size of your app. The higher the resolution of a file, the larger the file size, and the more resources it takes for your app to store and display the image. Use an image editing tool to resize your files to the size you need for your app.

Republish your app - The Power Apps team is constantly updating Power Apps to bring new features and to increase performance. The only way that your app takes advantage of these advancements is for you to open the app and publish again. Your app will stay on the version that it was published on until you do this. So periodically revisiting your app to move to the latest version will provide you with the best possible performance.

Build focused apps - Power Apps supports building apps with as many screens as you can imagine, but too many screens is not a good idea. You should build your apps focused on a specific audience and process. This allows you to optimize the user experience for one audience, makes building and troubleshooting the app easier, and reduces the size of the app. If you have one app for everything, consider breaking it into smaller apps by role.

Optimize performance in small steps As you work through this module, you are going to learn about the different techniques and options for optimizing performance. Before you get too deep in optimizing your app, remember that the most important thing is that your app works. A fast-performing app that only throws errors when the user uses it has no value. It is often easier to build your app so that it accomplishes its goals and is fully functional. After the app works then you can revisit the app for changes you can make to increase performance - making those changes one at a time confirming they don't break functionality. This methodology, of making small changes, will have the highest rate of success. As you become more comfortable with the different performance concepts, you will learn to build the app with them from the start. But in the meantime, build an app that works and then optimize.

Additional information To supplement the concepts in this module, there are two additional reading options to help you increase your performance mindset. 

Performance considerations with Power Apps - Discusses better ways to load data, patterns, limits, custom APIs, and file optimization.

www.dynamicscompanions.com Dynamics Companions

- 342 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power Apps Canvas App Coding Standards and Guidelines - This is a living document that not only covers performance and testing techniques but also explores standards and documentation of your app.

Now that you are aware of the benefits of optimizing performance and some of the common issues to look out for, the remainder of this module will provide you with techniques to increase performance and how to use various methods for testing your app.

Improve performance with data sources In the previous unit, you learned that data sources are often the main reason for slow performance in your app. In this unit, you will learn about some of the common techniques you can apply to mitigate those performance issues.

Use collections to cache data Often in your app you will find yourself query the same data repeatedly, like in the case of pulling the lists of departments for your drop-down menus. In those instances, you can query for the data once and then reuse that data throughout the app. This reduces the repetitive calls to the data source across the network. The following is an example of this process. In your app, you have several screens where you provide a drop-down menu for selecting the department. The list of departments is kept in Common Data Service in an entity named DepartmentList. On each instance of the menu, you use the following formula. Filter(DepartmentList, Status = "Active") This works and performs okay. When you finish the app, you realize that you are querying the DepartmentList entity multiple times even though it is static information. You could modify your app to create a collection with the OnStart property of the app that stores the information using the following formula. Collect(collectDepartmentList, Filter(DepartmentList, Status = "Active")) Now that you have stored that information you could change the Items property of the drop-down controls to be collectDepartmentList instead of Filter(DepartmentList, Status = "Active"). These small changes add up to increase performance in your app. Also, as you become more familiar with the technique, you can build your app this way from the onset which reduces the number of formulas you have to write and maintain.

Watch out for delegation One thing to keep in mind is that the Collect function is not delegable. By default, that means only the first 500 items will be returned from your data source and stored in the collection. Be sure to plan for this limitation as you implement the use of collections in your app.

www.dynamicscompanions.com Dynamics Companions

- 343 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Delegation also affects performance When you learned about delegation, you focused on returning the right amount of records for your data source. It is also important to remember that delegation, especially for mobile apps, can affect performance. When a formula delegates to the data source, all of the processing is handled by the data source, and only the matching records are returned across the network to the app to be displayed. If a function is not delegable, then it is very common to change the delegation limit to 2,000 records. This means that the first 2,000 records will be downloaded across the network and then processed locally. In scenarios where you are on a slow cellular connection or a low-end mobile device this processing can take a considerable amount of time, causing a poor experience for the user. Try to use only delegable functions as much as possible. If your function is not delegable, then plan for the impact on the end user.

Use the Concurrent function to load multiple data sources Previously you learned to use collections to cache data in your app. As you implement that functionality in your app it is not uncommon to have several collections load when the app launches. Your OnStart property might look like the following. Collect(collectDepartmentList, Filter(DepartmentList, Status = "Active")); Collect(collectCompanyList, CompanyList);Collect(collectRegions, RegionList) In that example, you are creating 3 collections, but the collections are processed one at a time. So if each one takes 3 seconds to process then your user has to wait 9 seconds for the app to start. The Concurrent function allows you to process all of those calls at the same time. You can change your code to the following. Concurrent( Collect(collectDepartmentList, Filter(DepartmentList, Status = "Active")), Collect(collectCompanyList, CompanyList), Collect(collectRegions, RegionList) ) Now all three formulas run at the same time. Reducing your load time to 3 seconds. Concurrent is a great way to avoid long delays from asynchronous calls.

www.dynamicscompanions.com Dynamics Companions

- 344 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Preview and experimental features Within Power Apps there are additional, advanced features you can implement in your app. You can access them by selecting File on the menu bar, then choosing App settings and Advanced settings. The list of options you see are ever changing, but often there are one or more features that relate to performance.

Preview features Preview features are features that have been well tested and are close to being released. They will be available for all apps soon. Testing and understanding these features helps you to prepare for when they become standard, and most are enabled by default in new apps. An example of a current preview feature that helps to increase performance is Delayed load. This feature "Speeds up your app's start time by setting on-demand screen expression calls", which means that screens aren't processed until the user accesses the screen, making the app start and run faster.

Experimental features Experimental features are features that might change, break, or disappear at any time. The features are off by default. You can sometimes find performance features here as well, so it is worth taking a look. However, keep in mind you do run a risk by incorporating them into production apps as they can evolve, completely change, or disappear. An example of a current experimental feature that you might experiment with is "Use longer data cache timeout and background refresh". This feature increases the timeout from 30 seconds to 1 minute for some of the common data sources allowing for more loading time. This might not make for the best user experience but perhaps if you find a way to do this in the background it could let you work with slower queries.

OnStart versus OnVisible OnStart and OnVisible are part of your toolkit for building great apps, but from a performance point of view, they can have a major impact. 

OnStart - This is an app-level property. Formulas in this property are run once, when the app starts, and never again. All of the formulas must process before the app opens. This is often used to initialize data that you will need throughout the app.

OnVisible - This is a per-screen property. Formulas in this property are run every time a user navigates to the screen. The screen will render before the formula is finished processing.

From a performance perspective, the key consideration is when the code runs. Once, when the app starts, or every time a screen is shown. The collection for departments from earlier in this module is a great example. That code loads in the OnStart property of the app. This means it was loaded once and then always available. If you moved that code from OnStart to OnVisible, you would lose the advantage of the collection. If the formula was in the OnVisible property, each time the user navigated to the screen the

www.dynamicscompanions.com Dynamics Companions

- 345 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

data source would be queried. In that case, it would perform just as well to leave the code in the drop down. This doesn't mean you should not use OnVisible. OnVisible is great for formulas that pertain to the current screen that you need to run. Additionally, OnVisible is non-blocking, so your users don't have to wait on the formula to complete to view the screen, which reduces the amount of that user needs to view a blank screen. In most apps, you use a mixture of OnStart and OnVisible to get the optimal experience.

Summary As you can see there a lot of options for how you build your app and interact with data sources. The list in this unit is far from exhaustive. The guidance here is meant to guide you toward better performance, but your results may vary. As you begin applying these techniques to your apps, you will learn what works best for you and your environment. In the next unit, you will learn about testing and troubleshooting techniques.

Testing and troubleshooting your app Now that you have learned about performance bottlenecks and some of the ways to mitigate them this unit will discuss testing techniques. These techniques are a combination of guidance, techniques, and discovery that apply both to performance testing and general debugging.

Using the Timer control to get metrics When it comes to working with data connections for retrieving or uploading data, hard numbers are helpful. In Power Apps, you can use a variable and a Timer control to capture how long your formula takes to run. The following scenario will show you how. Assume you have a Button with the OnSelect property set to the following: Collect(collectDepartmentList, Filter(DepartmentList, Status = "Active")) 1.

Modify that formula to the following to add a variable that you will use to Start and Stop the timer. Reset(Timer1);Set(varTimerStart, true);Refresh(collectDepartmentList); ClearCollect(collectDepartmentList, Filter(DepartmentList, Status = "Active"));Set(varTimerStart, false)

2.

You will see an error about Timer1 because you have not added it to the app yet. You can ignore the error until you complete the next step.

www.dynamicscompanions.com Dynamics Companions

- 346 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

To capture exactly how long that formula takes, you will need to first add a Timer control to your app and make sure that it is named Timer1. The Timer control is on the Insert menu under Input.

4.

For the Timer control, set the Start property to the following: varTimerStart.

5.

Now insert a Label control to display the time.

6.

For the Text property of the Label control set the formula to the following: Timer1.Value

7.

Now preview the app and click the Button.

In your label, you will see how long your collection takes to create in milliseconds. This works well for when you want to understand exactly how long a specific query is taking. You could log this data to a different collection and then average the numbers to determine how long it takes. You can also apply this concept to submitting data. Remember to test not only from your local computer but from all of the scenarios for your user's environments.

Test where your users will use the app This is more advice than technique. For most app builders the best place to run an app is from the local PC they use to build the app. Testing from that machine generally gives the best case results but may not match your user's experience. Far too often they forget to test the way the user will run the app. For example, if you are going to build a mobile app that runs over a cellular network then make sure your testing includes the same. Understanding the smaller form factor of the mobile device and the latency of a varying internet connection needs to factor into your app's design. The previous timer testing method is great here. Compare the app's query or upload performance between your PC, your mobile phone on WiFi, and your mobile phone on cellular data. Determine if you are satisfied with all three scenarios or if you need to optimize your app for the slower network.

Use labels to help with testing As your app incorporates more complex logic and more behind the scenes variables to facilitate that logic consider using label controls as part of your testing toolkit. Simply adding a label to the screen that displays the value of the variable can go a long way to helping you understand why your app is or is not doing something. You can use this during the building and testing phase. When your app is live, you can add additional functionality for hiding and showing these troubleshooting tools. While you are in the Power Apps Studio you can also select File and Variables to see all of your variables, their values, where they were created, and where they are used in the app. Another way to use labels during the build process is to add a label to the welcome screen where you manually display a version number. Power Apps caches your app to optimize your experience. When you are publishing repetitively, like when customizing a SharePoint form, it can be confusing to know which version of the form you are seeing as you may see a cached version. By simply adding a label with v1 or v2 in the corner, you will always be able to check the version.

www.dynamicscompanions.com Dynamics Companions

- 347 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Preview versus Published apps Using the preview capability of the Power Apps Studio gives you great insight into how your app will run when you publish it. But sometimes you may find some inconsistency due to cache or other things your local PC is doing versus what the published app will do in the player. Always remember to test your app after published, in a manner that is consistent with how the user will use the app.

Looking at the network activity of your app Now that you have learned about testing from within the app you need to look at actual network calls and performance. To do this you can use your browsers built-in developer tools, Ctrl+Shift+I in Chrome or F12 in Edge/IE, or a third-party tool like Fiddler. This will allow you to view the individual network calls made by your app and view details, such as time that each call takes. From a performance point of view, this can be valuable. One example of a way you can use this is to determine if performance slowness, as measured by the Timer control from the previous example, is within your app, the network, or the data source. By using the Developer Tools in Microsoft Edge, you can see the breakdown of the query that took 1.55 seconds in Power Apps.

By hovering over the query in the bottom right of the screen, you can see the time breakdown as follows.

www.dynamicscompanions.com Dynamics Companions

- 348 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In this instance, most of the time was spent waiting on the data source to filter the data and respond. This tells you that you cannot make the call faster by changing the app. Instead, you would need to focus on refining the query or speeding up the data source. This level of information can be overwhelming at first but don't try to learn the whole interface of the developer tools, instead, concentrate on just the pieces you need like the network timelines. Additionally, you can use the developer tools to get more details about error messages returned in the app or a stronger indication where connectivity issues are occurring.

Check your knowledge 1.

2.

3.

When working with relational data what is a common mistake that can have a drastic negative impact? 

Power Apps does not support relational data.

You use a LookUp function to query the data source directly in a Gallery.

You do not collect all of the data, regardless of size, in the OnVisible property.

You do not collect all of the data, regardless of size, in the OnStart property.

Which of the following statement is true regarding Experimental features? 

Experimental features are guaranteed to work.

Experimental features should always be enabled in your app.

Experimental features may or may not change, break or disappear from your app.

Experimental features are only okay to use one at a time but are fully supported.

When building your app which of the following is the most correct statement? 

You must incorporate performance tuning from the start; performance is most important.

You should make your app functional first, then incorporate performance tuning as appropriate.

Performance is a nice to have but doesn't matter to the user.

Testing is a waste of time; your users will tell if you something is broken.

www.dynamicscompanions.com Dynamics Companions

- 349 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary App performance is the difference between user adoption or abandonment, and sometimes the difference can be as simple as one change. In this module, you learned about common performance bottlenecks, how to test for them, and some options for mitigating the bottlenecks. Here are some key facts to remember: 

The interaction between the data source and app is the most common cause of poor performance.

There are many different techniques for mitigating performance issues, such as collections, choosing the correct data source, and the Concurrent function.

Always perform testing in an environment that is similar to your user's environment. This is especially important when building apps for slower networks.

www.dynamicscompanions.com Dynamics Companions

- 350 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T07: Use best practices to secure and govern Power Automate environments Is the Power Platform new to your organization? Are you looking to better understand how you can improve your organization’s productivity, without compromising your security posture, while enabling governance? Take this learning path, to identify best practices for securing and governing Power Automate environments. We will share tools and templates that can be used to ensure you are productive as you secure and govern the Power Platform. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

A basic understanding of Microsoft Power Automate and Power Apps including their purpose and how these tools are used within an organization.

A Power Platform license with administrative rights.

www.dynamicscompanions.com Dynamics Companions

- 351 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to Power Automate security and governance Do you want to learn about how to help secure and govern Power Platform apps like Power Automate? This module focuses on introducing Power Platform environments and their role in creating Data Loss Prevention (DLP) policies by using examples and use cases. A brief introduction and overview of tools will also be discussed, including Power Platform and Power Automate Admin experiences and the Power Platform Center of Excellence (COE) toolkit.

Learning Objectives In this module, you will: 

Access the Power Platform and Power Automate Admin experiences.

Create simple environment and tenant-wide DLP policies.

Discover and identify the differences between the Business data group and the No-business data group.

Learn about the differences between out-of-the-box Power Automate Admin experiences and the Power Platform Center of Excellence toolkit.

Prerequisites A basic understanding of Power Apps and Power Automate, including their purpose and how these tools are used within an organization.

Introduction Power Automate provides organizations with the ability to automate business processes by using a dragand-drop designer. The audience for Power Automate is diverse and is often referred to as makers. Whether you are an information worker who is familiar with Microsoft Excel or a professional developer who is building an application in Node.js, Power Automate can be used to improve productivity through a low code experience. A powerful capability in Power Automate is connectors. By using connectors, a maker can connect to a wide variety of applications and APIs without having to understand security schemes, such as OAuth, to establish a connection to these systems. Currently, more than 300 connectors are provided by Microsoft and third-party organizations.

www.dynamicscompanions.com Dynamics Companions

- 352 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

With democratized access to building flows, organizations might have concerns with makers connecting to unauthorized systems, which could result in the leaking of sensitive business information. For many organizations, balancing increased productivity comes with additional risks and exposure. However, Microsoft provides tools and guidance that organizations can use to find the right balance between digital transformation, allowing them to be more competitive in their industry without exposing sensitive data.

Identify Power Platform environments Environments are an important consideration when you are trying to help secure and govern Power Apps and Power Automate usage. Environments act as a security container for apps and flows to run within. Every flow must be assigned to an environment. Every licensed user belongs to the default environment. Additional environments can be provisioned where opt-in access is possible. A strategy that some organizations adopt includes renaming the default environment to be called Personal Productivity, which implies permission to build flows that improve their own productivity. Organizations can subsequently create additional environments for development, testing, and production purposes. Using this strategy might also align flow creation with existing IT change management requirements. By default, anyone can create environments, but administrators can also control who can create and manage environments in the Power Platform Admin center and limit it to a set of administrators.

When creating an environment, organizations can choose which region they want their environment to reside in. This approach is important because it allows organizations to store data closer to actual users www.dynamicscompanions.com Dynamics Companions

- 353 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

and to maintain and meet compliance requirements for their geography. Regions already available to store data include Asia, Australia, Canada, Europe, France, India, Japan, South America, United Kingdom, United States, and US Government (GCC). Regions are also important when it comes to Admin Analytics because the Power Platform Analytics feature isolates analytics through environments. The telemetry that is generated in one region is not allowed to leave that region. For administrators to view analytics, they need to select an environment first before they can view telemetry.

Data Loss Prevention policies Data Loss Prevention (DLP) policies allow organizations to construct rules that permit and prevent connectors from communicating with each other within the same flow. Microsoft accomplishes this task by establishing two data groups: Business data only and No business data allowed. The intent of these two data groups is to put connectors that have the same data profile in the same data group. Grouping connectors means that they can communicate with each other within the same data group but are not able to communicate across data groups. To illustrate this concept, consider the following scenario where connectors have been distributed across the two data groups. You want to build a flow that includes the Microsoft Word Online, Approvals, and Power BI connectors. Because all of these connectors belong to the Business data only data group, you can confidently create and run this flow. Similarly, in the No business data allowed data group, you can combine the Salesforce, Dropbox, and 10to8 Appointment connectors within the same flow because they all belong to the same data group. However, you cannot create a flow that includes the SQL Server connector and Act! connector because they belong to different data groups. If you want to create a flow that included these two connectors, you will need to move one of the connectors into the other data group.

www.dynamicscompanions.com Dynamics Companions

- 354 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Additionally, you can specify one data group to be the default data group. Beside the name of the default data group is the (Default) label appended. To change the default data group, select the ellipsis (...) in the upper-right corner of the data group. The default data group is significant because it becomes the data group that all new connectors are added to. For example, if Microsoft deploys a new connector to the Power Automate service, that connector will be added to the default data group. This behavior is also true for custom connectors that are deployed to an environment. DLP policies can belong to two different scopes: environment and tenant. An environment-scoped DLP policy only applies to that specific environment, whereas a tenant-scoped DLP policy applies to all environments in that tenant. When creating a new DLP policy, policy authors have a few options that they can choose from, including the ability to Apply to ALL environments (tenant), Apply to ONLY selected environments, and Apply to All environments EXCEPT. When a DLP author selects Apply to ALL environments, this setting also ensures that new environments have this DLP policy applied.

www.dynamicscompanions.com Dynamics Companions

- 355 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Environments can have multiple DLP policies applied, which provides for more governance scenarios to be implemented. However, when multiple DLP policies have been implemented, the most restrictive policy is applied. DLP policy layering is discussed further in the Planning module. Configuring DLP policies depends on an organization's design and cyber security principles. For some organizations, these principles allow for the mixing of business-related connectors with consumer-based services. Other organizations might choose to strictly prevent business-related connectors from connecting with consumer-based services. Organizations should begin by cataloging the business systems that exist within their organization and then creating DLP policies that align with that business mapping. DLP strategies are discussed further in the Implementation recommendations for Power Automate environments module of this learning path. Organizations should also carefully evaluate which data group they would like to declare as their default data group. Regardless of which data group they designate, administrators should pay attention to new connectors that are being deployed into environments so they can place them into the appropriate data group. How administrators can detect these new connector events is discussed further in the Use templates to enforce governance policies in Power Automate module of this learning path.

Power Platform Center of Excellence Starter Kit The Power Platform Center of Excellence (COE) Starter Kit is a set of apps, flows, a custom connector, and a Power BI dashboard that allows organizations to govern their Power Platform environments. The tool is freely available for download on GitHub . www.dynamicscompanions.com Dynamics Companions

- 356 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The Starter Kit is a great tool for organizations to increase the visibility of what their makers are doing in their tenant. Naturally, this tool immediately applies to two personas: Cyber Security analysts and Organizational Change Management (OCM) interests. Makers that are building applications and services that introduce risk to the organization should be monitored, but makers who are automating workloads within sanctioned systems and services should be empowered and encouraged to expand on their efforts. The Starter Kit does have some prerequisites, including: 

A global tenant admin, Power Platform Service admin, or Dynamics 365 service admin role is required to access the tenant resources.

A Power Apps premium license for accessing Common Data Service.

An environment with Common Data Service because the Starter Kit solution will need to store metadata about the apps and flows that are detected within an environment.

Power BI Desktop to view the reports and visualizations that highlight app and flow use within the tenant.

Within the Starter Kit, administrators will discover the tools and features that are discussed in the following sections.

DLP Strategy By using the DLP Editor app, an administrator can explore existing DLP policies and evaluate the impact of moving a connector from one data group to another. If a change to a data group has an impact on an existing app, that will be highlighted in the Affected Power Apps list. Then, an administrator can send an email, through an in-app experience, to the owner of that application and warn them of the upcoming change. This current, in-product DLP editor experience doesn't provide this type of what-if analysis, so we recommend that you use the DLP Strategy app that comes with the COE Starter Kit when making DLP changes. Using the DLP Strategy app will also help you understand the impact to existing apps when DLP changes are made and help you reduce the chance of unknowingly breaking someone's app.

www.dynamicscompanions.com Dynamics Companions

- 357 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Catalog tenant resources, visualize data in Power BI While Admin Analytics, which is found in the Power Platform Admin center, provides some insight into the use of Power Apps and Power Automate, it does so within the context of an environment. This parameter makes developing a holistic picture of usage difficult. However, using the tools that are provided in the COE Starter Kit brings all these insights together by using Common Data Service, a model-driven Power App, and a Power BI dashboard. These assets, plus the inclusion of flows that will sync data from Office 365 Security and Compliance logs and through the Power Platform management connectors into Common Data Service entities, provide the greatest level of visibility for administrators. The Power BI dashboard connects to Starter Kit Common Data Service entities and contains tabs that provide the following reports: 

Overview - Includes the total number of apps and flows that have been created, including a breakdown based on the maker's location and the number of apps/flows that they have created.

Environments - Highlights the number of environments that have been created and includes the type of environment (Default, Production, Sandbox, Trial), and then identifies the creators of the environments and when the environment was created.

Apps - Provides insights into the usage of apps, including the number of sessions and users that the app has been shared with. This report also breaks down usage by department by pivoting data based on the department that has been specified inside of a user's Office 365 profile.

App detail - Examines the specifics of the app, including the connection type and when the app was last published.

www.dynamicscompanions.com Dynamics Companions

- 358 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Flows - Displays a flow creation trend that will break down when flows were created. This report will also pivot data based on the user's department and includes a breakdown of the flows that were created by environment.

Custom Connectors - Lists all the custom connectors that exist within a tenant. This report also lists the users that created the connectors and then trends the month that they were created in.

Makers - Identifies all the makers within the environment and identifies how many apps and flows they have built. A slicer exists that allows a consumer of this report to filter based on the maker's department.

Connections - Displays the number of connections that have been established, by connector. This report provides great insight into the popularity of specific connectors within your tenant.

App Audit The main purpose of the Sample App Audit process is to demonstrate how an admin could identify overshared or often used resources and gather further information, like business justification and business impact of an outage, for those apps. Having a platform that provides democratized access to technology is only useful if people don't create many redundant or low-value applications. Situations might also occur where people create temporary applications for proof-of-concept purposes. These apps can clutter an environment if they are not cleaned up. Within the COE Starter Kit, app makers can be prompted to attest their application to ensure that it addresses business justification requirements. If the application doesn't address these requirements, makers can have their application removed from the environment.

www.dynamicscompanions.com Dynamics Companions

- 359 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

App Catalog The App Catalog application acts as a catalog that helps with discoverability of apps. Users can explore featured apps and browse apps by category. The app catalog can be a great entry point to launch apps for end users and makers can explore to see if an application already exists before they create another app that provides similar functionality. An Admin decides which apps are featured in the App Catalog by completing the App Audit process. After an app has been approved by the App Audit process, these apps can be featured in the app catalog.

www.dynamicscompanions.com Dynamics Companions

- 360 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Set Owner Administrating access to applications can be done by the Owner of the application. However, circumstances might occur where you want an administrator to provide access. By using the Set Owner app, you can allow for this situation by selecting an app, adding users, and then indicating whether they should be able to view the app or edit the app.

Welcome email to new makers Power Apps and Power Automate can be discovered virally within an organization's tenant through the Office 365 portal. Makers might be confused about whether they are allowed to use these tools or not. Detecting when a maker has created their first app or flow and sending them some useful information to accelerate their journey will immediately imply that these tools are the ones that they are permitted to use. Now, they will have a list of resources that can ease their transition into using these tools.

www.dynamicscompanions.com Dynamics Companions

- 361 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Create a Power Automate environment In this exercise, you'll create a Power Automate environment by completing the following steps: 1.

To complete this exercise, ensure that your account meets the licensing criteria discussed here in the Who can create environments section. If necessary, sign up for a trial Power Automate account .

2.

Sign in to the Power Platform Admin Center .

3.

Select Environments from the left navigation pane.

4.

Select + New.

5.

Provide a Name of Development and then select a Type of environment. Depending on your circumstances, create a Trial or Production environment. If you plan to dispose of this

www.dynamicscompanions.com Dynamics Companions

- 362 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

environment after completing the modules in this learning path, select Trial. If you anticipate that this environment will be used beyond 30 days, select Production.

Note When selecting the Type of environment, you do have three options: Sandbox, Production, and Trial. Sandbox environments are for building proof-of-concept applications and flows that might need to be reset without recreating the entire environment. Production environments are suited for stable workloads where you have predictable usage. Trial environments will expire after 30 days. These environments are best suited for evaluating technologies. 6.

Select an appropriate Region for your organization, provide a relevant Purpose for this environment, and indicate that you want a Database to be created. After you have populated these values, select the Next button to proceed. When deciding to include a database for future environments, evaluate how the environment will be used. For example, if you have plans to use Common Data Service, AI Builder, UI flows, or apps that use Common Data Service, then you need to include a database in your environment. If you have no plans to use these features, then a database is not required.

7.

Provide the Language of your choice and Currency. For the purposes of this exercise, do not enable Dynamics 365 apps or sample apps and data. Select Save to create your environment.

8.

After a couple minutes, your environment should be provisioned and you should see the following status message displayed in the Admin center. You might need to select Refresh for the State field to update.

www.dynamicscompanions.com Dynamics Companions

- 363 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

2.

3.

Who can have access to the Power Apps and Power Automate default environment? 

Only users that have been manually added by an environment administrator

Only users that have been manually added by a tenant administrator

Every user within the tenant

Every user within the tenant who has Power Apps according to the app plan

When modifying a Data Loss Prevention (DLP) policy, how can an administrator know if they are about to break an existing app? 

The new Power Platform Admin portal provides an experience that will automatically detect if a pending change to a DLP policy will break existing apps.

The DLP Strategy app, found within the Center of Excellence Starter Kit, includes functionality that will detect if a pending change to a DLP policy will break existing apps.

The Power Platform management connectors will automatically detect these breaking changes and notify the administrator.

There is no way to automatically detect whether a pending DLP policy change will impact existing apps.

Within Data Loss Prevention (DLP) policies, what is the behavior of the default data group? 

All new connectors that are introduced to an environment are placed in the default data group.

Only new custom connectors are placed within the default data group when new custom connectors are added to an environment.

Only new Microsoft connectors are placed within this data group when new Microsoft connectors are added to an environment.

www.dynamicscompanions.com Dynamics Companions

- 364 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The default data group is only a guideline where new connectors should be placed when they are added to an environment.

Summary This module introduced many different Power Platform concepts, including environments' Data Loss Prevention (DLP) policies, and reviewed many of the tools that are found in the Center of Excellence (COE) Starter Kit. All these features and tools are key to organizations governing their environments. Because every organization has different governance needs, these tools can be used selectively to implement the level of governance that is required for your organization. In addition, while these tools do enable governance, they can also be used to identify makers who are building solutions that improve an organization's productivity. When these makers have been identified, organizations should look to further empower them to extend their app development benefits to more parts of the organization.

www.dynamicscompanions.com Dynamics Companions

- 365 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Plan and manage your Power Automate environment Every organization has unique requirements based on their size, location, data residency requirements, and desire for democratized access to tools like Power Apps and Power Automate. This module discusses considerations that impact how an organization chooses to secure and govern their Power Platform environments.

Learning Objectives In this module, you will: 

Identify cyber security risks and mitigation paths for those risks.

Plan for environment variance, including handling exceptions.

Layer Data Loss Prevention (DLP) policies for environments and the tenant.

Discover how to prevent cross-tenant connections.

Build DLP policy communication plans.

Prerequisites A basic understanding of Power Apps and Power Automate, including their purpose and how these tools are used within an organization. In addition, students should be familiar with Microsoft Azure Active Directory as an authentication source and a cursory understanding of establishing connections by using Azure Active Directory. Participants should have environment or tenant-wide administrative access to the Power Platform Admin center and Power Automate Admin center.

Introduction Planning is essential in helping to secure and govern your Power Automate and Power Platform environments. Because Power Automate is a democratized automation tool that can be used by many different people, teams, business units, and roles in an organization, minimizing disruptions to those app makers will ensure that your organization remains productive and that a disruption to business-critical processes doesn't occur. Introducing governance changes after flows have been built might result in those flows being broken, leading to unmet expectations. If Power Platform is new to your organization, now is the best opportunity to get ahead before any potential impacts are introduced. If your organization already uses Power Platform, you should establish a solid plan that allows you to be prepared for the future and avoid unnecessary disruptions.

www.dynamicscompanions.com Dynamics Companions

- 366 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prerequisites for Power Platform DLP The previous module of this learning path introduced tenant and environment scopes in regard to creating Data Loss Prevention (DLP) policies. DLP prerequisites follow a similar pattern, depending on whether you're trying to set an environment or tenant-scoped DLP policy. To establish an environment-wide DLP policy, the person who is creating the DLP policy must be an environment or tenant admin. When creating a tenant-wide DLP policy, the person who is creating the DLP policy must be a tenant admin. For additional prerequisite information on managing DLP policies, refer to Microsoft's inproduct documentation for Power Automate.

Establish risk assessments and mitigation paths Many organizations have risk assessments that guide in establishing cyber security policies and managing risk through a quantitative process. If your organization has an existing risk assessment, we recommend that you first review that assessment to see if it can be used. One situation that you definitely should avoid is creating something for Power Platform that isn't aligned to a broader cyber security risk assessment. Otherwise, the following sections highlight some considerations that you can use to establish a lightweight risk assessment process that helps you track, measure, and monitor the risks within your organization.

Establish baseline through standards Organizations should clearly identify and articulate standards. If you want makers to comply with the expectations of the organization, then you need to identify the acceptable behaviors, actions, and activities. If people are not aware that these standards exist, they can't proactively comply with them. These standards should be made visible within an organization through an intranet site or wiki. In addition, this information can be communicated through automation when a user creates their first flow or app. This strategy is further discussed later in this module.

Implement governance controls to prevent unwanted actions Governance is only useful if it is enforced. An organization needs to establish base rules and constraints to avoid data leakage.

www.dynamicscompanions.com Dynamics Companions

- 367 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Establish an exception process Situations might occur where a legitimate business need exists for a specific action or activity to be permitted. However, it is important that the decision to proceed is captured with the right level of visibility by people who have the authority to make that decision.

Track exceptions Accumulating risks without being able to measure the organization's overall exposure becomes an exercise of futility. By tracking exceptions, quantifying their exposure, assigning accountability to address risk, and then reviewing risks regularly, an organization can truly manage their risks and seek continuous improvement. Some organizations have used Power Platform to enable this process. As explained in the Introduction to Power Automate security and governance module, the Center of Excellence Starter Kit includes the Developer Compliance Center, which helps organizations manage the deployment of new applications and seeks the makers of these apps to justify the need for apps to exist.

Review and report exceptions regularly To drive the right behaviors, it is important to ensure that risks are visible. If people don't feel that the risks have any material impact, or repercussions, they won't feel that they need to alter their behaviors. Having a transparent view into the organization's risks allows management the right level of visibility to assess whether they are comfortable with the current state of risk within the organization or not.

Create a policy communication plan Many organizations have a general computing acceptable usage policy that outlines permitted activities while employees are using corporate computing and network devices. Employees and contractors acknowledge the policy and agree to use IT tools in the nature that they were intended to be used. Including statements that incorporate Power Platform apps and flows is an excellent opportunity to set expectations for the platform and users. Education is another opportunity for organizations to share this messaging. If an organization arranges for training sessions for each Power Platform product, these sessions represent the perfect opportunity to review ground rules about governance and expectations. Much like organizations that invest in cyber security training and exercises, like phishing, it is equally important that organizations invest in educating the app makers if they want them to use Power Platform in a responsible manner. Another opportunity to communicate policies is through automation, such as the Power Platform Center of Excellence (COE) Starter Kit. This Starter Kit includes a welcome email that can be sent when a new app

www.dynamicscompanions.com Dynamics Companions

- 368 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

or flow is created. This email provides an excellent opportunity for organizations to include policy messaging and a link to an intranet article that goes through it in more detail.

Plan environments and variance Environment design is highly dependent on organizational design. Considerations include size, location, regulatory environment, and appetite for adoption. While environment design is organization-dependent, the following recommendations will aid you in designing the right landscape for your organization.

Note The Introduction to Power Automate security and governance module discussed the default environment. If you recall, every user within the tenant will automatically have access to this environment. Because no method exists for removing access to this environment, it is a common practice to rename this environment to Personal Productivity to imply that this environment is general use. Administrators should also be aware of the location of this environment to ensure that no issues occur from a data privacy perspective. Another important consideration is the aspect of centralization. For example, consider whether your organization has a centralized IT function. You should also determine if your organization is responsible for the administration and governance of the Power Platform environment. Alternatively, your organization could have a decentralized organization where some aspects of technology are managed outside of an IT department. When establishing environment design, you have additional important parameters to consider.

Sample configurations The following sections outline sample configurations that you could use based on your organization's design and goals.

Single region organization (centralized) In single region organization (centralized), environments are centrally managed and include isolation for personal productivity, development, testing, and production purposes. The personal productivity environment can be used to support scenarios like email notifications, team-based approvals, improvised data collection, and the integration with Office 365 services. The central team that manages environments will also provide access into non-default environments. Because this organization operates in a single region, data residency concerns do not exist and do not require further segregation from other regions.

www.dynamicscompanions.com Dynamics Companions

- 369 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Single region organization (decentralized) In single region organization (decentralized), environments are independently managed, and the administrative responsibilities have been assigned to individual business units to manage. This organization operates within a single region and the default environment has been renamed to Personal Productivity. Additional environments have been created for respective business units like HR, Finance, Operations, and IT.

www.dynamicscompanions.com Dynamics Companions

- 370 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Multi-region organization (centralized) In multi-region organization (centralized), environments are centrally managed and include isolation for personal productivity, development, testing, and production purposes. The personal productivity environment can be used to support scenarios like email notifications, team-based approvals, improvised data collection, and the integration with Office 365 services. The central team that manages environments also provides access into non-default environments. Because this organization operates in multiple regions throughout the world, environments must be created within the region that the organization operates. To address this requirement, a default environment has been created within the home region where the tenant was created. This environment has been renamed Personal Productivity (default). In addition, Dev, Test, and Production environments have been created within this region (North America). To address requirements in other regions and to provide symmetry, Personal Productivity, Dev, Test, and Production environments have also been created in the Asia and Europe regions. Because the default environment behavior is that all licensed users are app makers in this environment, you cannot remove users from this default environment. However, to create a workspace for users to

www.dynamicscompanions.com Dynamics Companions

- 371 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

build improvised apps and flows, Personal Productivity environments are also created in Asia and Europe so that users can build these assets without being concerned about data drifting away from their home region. Regional teams can apply their IT Change Management practices to these environments so that businesscritical apps and flows can be promoted through environments to address any compliance requirements.

Multi-region organization (decentralized) In multi-region organization (decentralized), the environments are independently managed, and the administrative responsibilities have been assigned to individual business units to manage. This organization operates in multiple regions, and the default environment has been renamed to Personal Productivity and resides within the same region as the tenant (North America). Within this home region, additional environments have been created for different business units that provide them with the autonomy that they require. To illustrate this concept, environments for the HR, Finance, Operations, and IT business units have been created. Because the default environment behavior is that all licensed users are app makers in this environment, you cannot remove users from this default environment. However, to create a workspace for users to build improvised apps and flows, Personal Productivity environments are created in Asia and Europe so that users can build these assets without being concerned about data drifting away from their home region.

www.dynamicscompanions.com Dynamics Companions

- 372 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In addition, environments for business units in Asia and Europe will be created to ensure that they have the autonomy to build apps and flows without a central authority.

Manage exceptions The previous four examples illustrated configurations that organizations can choose to implement that address the productivity and governance needs of their organization. However, because every organization is unique, circumstances might occur where you need to support exceptions. For example, you might have a tenant-wide DLP policy that prevents joining SharePoint and Twitter connectors within the same app or flow. For many job functions, having the ability to retrieve data from SharePoint and then publish it to Twitter is not a valid business scenario. However, for a business unit like Corporate Communications, this scenario might be a perfectly valid use case to support. If people have a need to use a connector like Twitter, but an organization wants to restrict its use to a broader audience, governance tools can be layered on top of the out-of-the-box DLP capabilities. In this scenario, the Twitter connector can be moved into the same data group as SharePoint, but you can govern its use. More specifically, Power Platform for Admins and Flow management connectors can aid in the detection of newly created or edited flows that use this combination of connectors. When a new or updated flow event occurs, the Flow management connector can retrieve the flow definition and examine if the Twitter connector is being used. When this situation does occur, an

www.dynamicscompanions.com Dynamics Companions

- 373 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

administrator can enable their own governance process. For example, an administrator might restrict access to the Twitter connector for a certain group of people, which can be managed in a security group. Alternatively, an approval can be included in the flow logic where an administrator can approve the enabling of the maker's flow. If the administrator chooses to reject the request, they can use the Disable Flow as Admin action that is part of the Flow management connector and it will prevent the flow from running. The administrator can include additional automation, including notifying the flow maker through email that the action is not permitted in the environment. For a detailed walkthrough of a similar governance scenario, refer to the Automating Microsoft Power Automate Governance blog post .

Layer Data Loss Prevention policies The Introduction to Power Automate security and governance module introduced Data Loss Prevention (DLP) policies, which restrict the connectors that can be used together within the same flow or app. The module also introduced the scope that a DLP policy will apply to. For example, you can create a DLP policy that only applies to an environment. In addition, you can create a DLP policy that applies to the entire tenant, which means that when new environments are created, they automatically inherit this tenant-wide DLP policy. The following sections discuss layering DLP policies. An organization might choose to implement a layered approach that enables specific scenarios but blocks others. When conflicting policies exist, Microsoft will still apply the most restrictive policy.

Scenario 1: Office 365 Outlook and OneDrive for Business In this use case, an IT department wants to enable people to automatically copy their email attachments into their Microsoft OneDrive for Business account. As a result, an environment administrator will create a DLP policy that includes the Office 365 Outlook and OneDrive for Business connectors in the Business data only data group and leaves all remaining connectors in the No business data allowed data group.

www.dynamicscompanions.com Dynamics Companions

- 374 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After this DLP policy has been saved, app makers are able to create flows that allow them to copy their email attachments to their OneDrive.

www.dynamicscompanions.com Dynamics Companions

- 375 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When makers have saved a flow, the DLP policies are enforced. If your flow is enabled, or in an on state, then you know that you have not violated any policies. You will experience the behavior of a flow that violates a DLP policy later in this module.

www.dynamicscompanions.com Dynamics Companions

- 376 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Scenario 2: SharePoint and Teams The second scenario involves publishing notifications in a Microsoft Teams channel whenever a new item is created in a SharePoint list. To enable this scenario, you will create another DLP policy. In this scenario, you will only have the SharePoint and Microsoft Teams connectors in the Business data only data group. All remaining connectors will be placed in the No business data allowed data group.

After this DLP policy has been saved, you can create a flow that will implement your designed functionality that includes posting a message in a Teams channel whenever a new item is created in a SharePoint list.

www.dynamicscompanions.com Dynamics Companions

- 377 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you save this flow, you will discover that it has been enabled, which means it complies with your DLP policies.

Scenario 3: Office 365 Outlook and SharePoint In this scenario, you will discover what happens when you have DLP policies that conflict with each other. This scenario includes logging inbound emails in a SharePoint list so that you can track action items from that mailbox.

www.dynamicscompanions.com Dynamics Companions

- 378 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Currently, you have unique DLP policies that include these connectors in the Business data only data groups. However, these connectors are spread across two different DLP policies. If you recall, in the first scenario, you included your Office 365 Outlook and OneDrive for Business connectors. In the second scenario, you included SharePoint and Microsoft Teams connectors within the same policy. Currently, no policy exists that allows both the Office 365 Outlook and SharePoint connectors to be included in the same flow or app. You can create a third DLP policy that does include Office 365 Outlook and SharePoint connectors in the Business data only data group. All of the connectors are placed in the No business data allowed data group environment.

You will now construct a flow that includes an Office 365 Outlook trigger and a SharePoint action.

www.dynamicscompanions.com Dynamics Companions

- 379 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you save this flow, you will encounter the following error indicating that you have violated a DLP policy and, as a result, your flow has been suspended.

You might wonder why this error has occurred considering that you created a DLP policy that explicitly allows both Office 365 Outlook and SharePoint connectors to be included in the same flow. While you did create this DLP policy, Microsoft will still enforce the most restrictive policy. Microsoft will not allow you to bypass previous DLP policies through the introduction of new policies. Otherwise, unintended data leakage could occur as organizations include new DLP policies.

www.dynamicscompanions.com Dynamics Companions

- 380 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Consequently, you might wonder how you can support the ability for Office 365 Outlook to communicate with SharePoint. In this case, you will need to update your existing policies to include these connectors in the Business data only data groups. After you have completed this task, you need to explicitly enable your flows that are currently suspended by your DLP policies.

Exercise - Create an Office 365 environment-specific Data Loss Prevention policy In this exercise, you will create an environment-specific DLP policy that applies to Office 365 use cases. The driver behind this scenario is an organization that wants to ensure that makers can build automation solutions for the Office 365 platform by using Power Automate. This exercise will take advantage of the environment that was created in the Introduction to Power Automate security and governance module, which is the first module of this learning path. In addition, you should review the DLP prerequisites that were outlined at the beginning of this module. 1.

Sign in to the Power Automate Admin Center as an environment or tenant administrator.

2.

Select Data policies from the left navigation pane.

3.

From the upper-right corner, select + New policy.

4.

Select the Apply to ONLY selected environments button, select the environment that was created in the previous module, or any test environment, and then select the Continue button.

www.dynamicscompanions.com Dynamics Companions

- 381 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

6.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Within the Business data only data group, select the + Add button and then select the following connectors: 

Office 365 Outlook

Office 365 Users

SharePoint

Excel Online (Business)

Microsoft Forms

Office 365 Groups

OneNote (Business)

Word Online (Business)

Yammer

After you have selected all of these connectors, select the Add connectors button. Your Business data only data group should now resemble the following image.

www.dynamicscompanions.com Dynamics Companions

- 382 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

7.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Update the auto generated Data Policy Name that starts with Policy by selecting it at the top of the screen. Enter Office 365 Connectors and then select Save Policy.

www.dynamicscompanions.com Dynamics Companions

- 383 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

With your DLP policy in place, you can now create a flow that will validate that your DLP policy is working. To create this flow, go to the Power Automate maker portal .

9.

Ensure that you are in the environment that you created previously. You can switch environments by selecting the environment picker in the upper-right corner.

10. Select Create from the left navigation pane. 11. Select the Instant flow link.

12. Provide a Flow name of Test DLP, select Manually trigger a flow as your trigger, and then select the Create button.

www.dynamicscompanions.com Dynamics Companions

- 384 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

13. From within the flow designer, select + New Step. 14. Search for MSN Weather in the Search connectors and actions text box. 15. Select the Get forecast for today action. 16. Enter Seattle for the Location and select Imperial for the Units. 17. Select the + New Step to add an Office 365 Outlook action. 18. Search for Office 365 Outlook in the Search connectors and actions text box. 19. Select the Send an email (V2) action. 20. Provide values for the To:, Subject, and Body fields.

www.dynamicscompanions.com Dynamics Companions

- 385 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

21. Select the Save button to save the flow. The DLP enforcement job will run. 22. You should get an error as a result of violating your DLP policy that you created. As a result, your flow will be disabled, and it cannot be enabled while it conflicts with any DLP policies. In this specific example, it is disabled because you have included an MSN Weather connector in a flow that also contains an Office 365 Outlook connector. If you want this flow to run, you can either add the MSN Weather connector to the Business data only data group in your Office 365 DLP policy that you previously created, or you can remove the Office 365 Outlook connector from the Business data only data group.

www.dynamicscompanions.com Dynamics Companions

- 386 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

2.

4.

By using automation, what is your best way to communicate Power Platform policies? 

Send makers an email when they have built their first flow or app by using Power Platform Management connectors and Power Automate.

Display policy information in the Admin Analytics reports in the Power Platform Admin Center.

Display policy information in the Power Automate maker portal.

Update the terms and conditions statements in the Power Platform Admin Center.

2. Suppose you have two Data Loss Prevention (DLP) policies. Within policy one is the Microsoft Teams connector and the Office 365 Users connector in the Business data only data group. Policy two contains the SharePoint and Office 365 Groups connectors in the Business data only data group. What happens if you try to create a flow that includes Microsoft Teams and SharePoint connectors within the same flow? 

The flow is successfully saved and remains in an enabled state.

The flow is successfully saved, runs for 30 minutes, and then is disabled.

The flow is successfully saved but is immediately disabled due to a DLP violation.

The flow is not successfully saved, and the maker will lose all of their work.

Suppose you have two Data Loss Prevention (DLP) policies. Within policy one is the Microsoft Teams connector and the Office 365 Users connector in the Business data only data group. Policy

www.dynamicscompanions.com Dynamics Companions

- 387 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

two contains the SharePoint and Office 365 Groups connectors in the Business data only data group. What happens if you try to create a flow that includes Common Data Service and Twitter connectors within the same flow? 

The flow is successfully saved and remains in an enabled state.

The flow is successfully saved, runs for 30 minutes, and then is disabled.

The flow is successfully saved but is immediately disabled due to a DLP violation.

The flow is not successfully saved, and the maker will lose all of their work.

Summary This module discussed many important governance tools and processes that organizations can use to secure their environment. The first topic discussed was establishing risk assessments and mitigation paths. It is important to establish baselines and develop a methodology to measure your current state against your baseline. If your organization takes on too much risk, it could leave your organization in a vulnerable situation. Additionally, this module explained the need to accommodate exceptions. Due to the nature of different business units, they might have legitimate business needs that differ from other business units. It is important to be able to accommodate these legitimate use cases while still protecting the rest of the organization. Data Loss Prevention (DLP) policies were explained in more detail in this module, including the ability to layer multiple DLP policies within an environment. Then, you were able to test your DLP skills by creating a DLP policy that supports Office 365 use cases.

www.dynamicscompanions.com Dynamics Companions

- 388 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Implementation recommendations for Power Automate environments Do you want prescriptive recommendations for how organizations should choose to implement security and governance? This module will provide recommendations based on popular use cases, including Office 365 and Dynamics 365 configurations. In addition, edge cases such as custom and HTTP connectors are discussed. Tooling will also be discussed, including the DLP Editor Tool, from the Center of Excellence (COE) toolkit, which allows administrators to understand the impact of the DLP change that they are about to make.

Learning Objectives In this module, you will: 

Build a recommended Data Loss Prevention (DLP) policy for Office 365 scenarios.

Build a recommended DLP policy for Dynamics 365 scenarios.

Configure DLP policies that manage custom connectors.

Configure DLP policies that manage HTTP connectors.

Prerequisites A basic understanding of Power Apps and Power Automate, including their purpose and how these tools are used within an organization. Students should also understand how connectors are used within apps and flows to exchange data across source and destination systems. Participants should have environment or tenant-wide administrative access to the Power Platform Admin center and Power Automate Admin center. The Power Apps PowerShell cmdlets and Power Platform Management Connector are also used.

Introduction This module provides prescriptive guidance on how organizations can govern their Power Platform environments. The areas of focus include default data groups for Data Loss Prevention (DLP) policies. Additionally, this module provides sample DLP configurations for Office 365 and Dynamics 365 users. You will also explore more advanced scenarios that include custom connectors and managing DLP for HTTP connectors. As part of the custom connector and HTTP exploration, the module also discusses the available tools, including Power Platform Management connectors and PowerShell cmdlets. Every organization has different needs when it comes to governance. Approach the following sections as options and implement the solution that best aligns with your requirements.

www.dynamicscompanions.com Dynamics Companions

- 389 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prerequisites for Power Platform DLP The introduction module of this learning path explained tenant and environment scopes in regard to creating Data Loss Prevention (DLP) policies. DLP prerequisites follow a similar pattern, depending on whether you are trying to set an environment or tenant-scoped DLP policy. To establish an environment-wide DLP policy, the person who is creating the DLP policy must be either an environment or tenant admin. When creating a tenant-wide DLP policy, the person who is creating the DLP policy must be a tenant admin. For additional prerequisite information on managing DLP policies, refer to Microsoft's inproduct documentation.

Default DLP data group The introduction module of this learning path explained the DLP Business data only and No business data allowed data groups. You can use these data groups to separate connectors that share similar characteristics when it comes to their applicability to the business. For flows and apps that are processing business-related data, you will want to ensure that these connectors are placed within the Business data only data group. When you have connectors that don't support valid business use cases, these connectors are best placed in the No business data allowed data group. When a DLP policy is created, Microsoft will designate a default data group, which will be assigned automatically to the No business data allowed data group.

www.dynamicscompanions.com Dynamics Companions

- 390 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

An administrator can change the default data group by selecting the ellipsis (...) beside the data group that they want to designate as the default data group.

www.dynamicscompanions.com Dynamics Companions

- 391 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Changing the default data group does have implications; therefore, administrators should understand the impact that their action will have. Whenever a new connector is made available for Power Automate (and Power Apps), it will automatically reside within the default data group. These new connectors can come from a variety of sources, including Microsoft, third-party connector providers, and custom connectors from inside your organization. When a new Microsoft or third-party connector is published, it is automatically available for use by makers within the environment that the connector was deployed to. Administrators need to be mindful of this behavior because it has an impact on DLP policies. For example, assume an organization has encouraged users to build flows that take advantage of Office 365 connectors. In addition, administrators have tried to prevent makers from sending business data from Office 365 systems to consumer-based services like email and file sharing. As a result of this strategy, consumer-based connectors have been placed into the No business data allowed data group, which is also the default data group. Suppose Microsoft introduces a new Office 365 connector that will be placed into the default data group as a result, which means that a maker can build a flow that includes data from this new Office 365 service and send that data to a consumer-based email or file sharing service.

www.dynamicscompanions.com Dynamics Companions

- 392 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Administrators need to understand the behavior of the default data group to avoid undesirable data leakage. Administrators can be made aware of new connectors that have been recently published by provisioning a flow template that detects when new connectors have been published. A later module of this learning path will discuss this template and others. Custom connectors also pose a challenge for administrators. Much like Microsoft and third-party connectors, custom connectors will also be placed in the default data group. However, they will not be visible, which can create challenges. The good news is that, by using PowerShell or Power Platform Management connectors, an administrator can add custom connectors to a data group. After a connector has been added, it can be managed through the Power Automate Admin center. This topic is further discussed in the "Configure DLP for custom connectors" unit in this module.

Implement the recommended DLP policy for Office 365 users The Plan and manage your Power Automate environment module includes a hands-on exercise that focuses on building a DLP policy that supports Office 365 use cases. This unit further explains that DLP policy and discusses additional considerations.

This DLP policy includes many popular Office 365 connectors that are defined in the following section.

www.dynamicscompanions.com Dynamics Companions

- 393 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Connector name

Purpose

Office 365 Outlook

This connector allows makers to retrieve emails from an Office 365 mailbox and send emails through that mailbox.

OneDrive for The OneDrive for Business connector allows makers to store and retrieve documents from Business their OneDrive for Business account. Office 365 Users

A connector that is used for obtaining metadata about Office 365 users, including user details, direct reports, photos, and profiles.

SharePoint

The SharePoint connector allows makers to interact with SharePoint features like reading/writing documents, communicating with custom lists, and deleting content.

Excel Online This connector allows makers to interact with spreadsheets by listing rows, adding rows, or (Business) deleting rows in a spreadsheet. Microsoft Forms

A popular connector that allows makers to receive input from a Microsoft Form and process it in a flow.

Office 365 Groups

A connector that is used to manipulate groups, including adding/removing members from a group and creating group events.

OneNote (Business)

The OneNote connector can be used to manipulate OneNote notebooks, including adding sections and creating pages.

Word Online This connector allows makers to convert a Word Document to PDF and populate a (Business) Microsoft Word template. Yammer

The Yammer connector allows makers to subscribe and post messages in the enterprise social media site.

Microsoft Teams

By using the Microsoft Teams connectors, makers can subscribe to messages that are posted within Teams channels, post messages, and create channels.

While the preceding connectors represent connectors that are related to Office 365 services, other connectors exist that administrators should consider including, even though they are not related to Office 365. In some circumstances, the following connectors might be useful for general purposes, like Approvals and Content Conversion, while others are available to help protect the organization through the automation of cyber security processes.

www.dynamicscompanions.com Dynamics Companions

- 394 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Connector name

Purpose

Audience

Approvals

This connector is used to facilitate approvals in Power Automate. It is technically a connector, so it needs to be considered when you are implementing DLP policies.

All makers

Content Conversion

The Content Conversion connector allows makers to convert HTML markup All makers to plain text. It is useful when you need to remove all HTML markup so that you can store the raw text in another system.

Microsoft Translator

All makers The Microsoft Translator connector allows a maker to detect languages, translate text, and convert text to speech. It does not pose data leakage risks, but might be helpful in multi-national organizations.

File System

For organizations that are still dependent on on-premises network shares, this connector will use the on-premises data gateway to provide a bridge between local file shares and Power Automate.

Microsoft To- This connector allows makers to get, list, and create to-do items in the Do (Business) Microsoft To-Do service. PowerApps for Admins

All makers

This connector allows administrators to modify app permissions, get a list of Environment apps, get a list of custom connectors, and set app owners. and tenant admins

PowerPlatform This connector allows administrators to create environments, create for Admins environment DLP policies, create tenant DLP policies, delete environments, force environment syncs, list supported environments, and more. PowerApps for App Makers

All makers

Environment and tenant admins

This connector provides administrative capabilities but in the context of an App application and not the entire environment/tenant. Within this connector, an owner/maker app owner can edit permissions, get app versions, get connections, publish an app, remove an app, and more.

Flow This connector provides administrative capabilities but in the context of the Flow owner/maker management flow owner. Within this connector, a flow owner can create connections, create flows, delete flows, get flow details, list my flows, list my environments, and more. Microsoft Flow for Admins

Environment This connector has environment and tenant scope depending on the and tenant connection that it is running under. As a result, this connector allows an admin to disable a flow, edit flow permissions, get flow user details, remove admins flow user details, remove flow, and more.

www.dynamicscompanions.com Dynamics Companions

- 395 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Connector name

Purpose

Audience

Cloud App Security

This connector is for use with the Microsoft Cloud App Security service. For Cyber organizations that are using this service, this connector allows Cloud Security Security Analyst Analysts to automate activities such as enabling security policies, getting cloud security alerts, tagging apps as sanctioned, and more.

For organizations that are using Microsoft Graph Security, they can automate Cyber Microsoft Graph Security their security workflows by creating subscriptions, subscribing to alerts, and Security Analyst more. Microsoft Defender ATP provides endpoint protection against malware and Cyber Microsoft Security Defender ATP other malicious activities. By using the Microsoft Defender ATP, Cyber Analyst Security Analysts can automate actions such as isolating machines, performing investigation actions, removing application permissions, running antivirus scans, and much more. You might wonder why Power Platform and security-related connectors have been included in the previous list. The rationale is that automating workloads shouldn't be restricted to app makers. Administrators and Cyber Security Analysts also have increasing demands on their time and they should be as efficient as possible. When it comes to cyber security, you can no longer rely solely on analysts querying logs 24 hours a day. By taking advantage of triggers for these security services, alerts and notifications can be sent to these teams where they can subsequently respond to emerging threats in near or real time. For some organizations, getting buy-in from security teams so they can use Power Platform might be challenging. However, when Cyber Security Analysts have seen the benefits and that it could solve their own needs, they generally are more open to extending its use to other areas of the organization.

Implement the recommended DLP policy for Dynamics 365 customer experience users Another popular use case that organizations face when creating DLP policies is supporting Dynamics 365 workloads. We recommend the following configuration when you are addressing the needs of Dynamics 365 users. Connector name

Purpose

Common Data The Common Data Service connector provides underlying platform access to Dynamics Service 365 data that is stored in Common Data Service entities. This connector is the older of

www.dynamicscompanions.com Dynamics Companions

- 396 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Connector name

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Purpose the two Common Data Service connectors and should be used in the areas of personal automation.

Common Data This connector can dynamically infer the environment that it is in. It also has some Service (current Common Data Service solution-specific capabilities like calling AI Builder predict actions. environment) Using this connector also simplifies deployment scenarios because the Common Data Service environment does not need to be reset every time a flow or app is deployed. Dynamics 365

This connector has been deprecated in favor of Common Data Service connectors. However, by not including it in the Business data only data group, other users could use this connector to send data to No Business data allowed connectors. With this in mind, it is best to include this connector in your DLP policy, but it is not recommended for use.

Approvals

This connector is used to facilitate approvals in Power Automate. It is technically a connector, so you need to consider it when implementing DLP policies.

DocuSign*

This connector is used in conjunction with the DocuSign SaaS service that supports obtaining and tracking digital signatures.

Adobe Sign*

This connector is used in conjunction with the Adobe Sign SaaS service that supports obtaining and tracking digital signatures.

OneDrive for Business

The OneDrive for Business connector allows makers to store and retrieve documents from their OneDrive for Business account.

Office 365 Outlook

This connector allows makers to retrieve emails from an Office 365 mailbox and send emails through that mailbox.

SharePoint

The SharePoint connector allows makers to interact with SharePoint features like reading/writing documents, communicating with custom lists, and deleting content.

Microsoft Forms

A popular connector that allows makers to receive input from a Microsoft Form and process it in a flow.

Word Online (Business)

This connector allows makers to convert a Word Document to PDF and populate a Microsoft Word template.

Microsoft Teams

By using the Microsoft Teams connectors, makers can subscribe to messages that are posted within Teams channels, post messages, and create channels.

Optional - Depending on whether an organization uses these tools or not, these connectors are often used to support digital signatures for contracts that might be generated from Dynamics 365. While the preceding connectors represent connectors that are related to Dynamics 365 services, some other connectors exist that administrators should consider including, even though they are not directly

www.dynamicscompanions.com Dynamics Companions

- 397 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

related to Dynamics 365. In some circumstances, the following connectors might be considered for general purposes, like Content Conversion, while others are available to help protect the organization through the automation of cyber security processes. Connector name

Purpose

Audience

Content Conversion

The Content Conversion connector allows makers to convert HTML markup All makers to plain text. It is useful when you need to remove all HTML markup so that you can store the raw text in another system.

Microsoft Translator

All makers The Microsoft Translator connector allows a maker to detect languages, translate text, and convert text to speech. It does not pose data leakage risks but might be helpful in multi-national organizations.

File System

For organizations that are still dependent on on-premises network shares, this connector will use the on-premises data gateway to provide a bridge between local file shares and Power Automate.

Microsoft To- This connector allows makers to get, list, and create to-do items in the Do (Business) Microsoft To-Do service. PowerApps for Admins

All makers

This connector allows administrators to modify app permissions, get a list of Environment apps, get a list of custom connectors, and set app owners. and tenant admins

PowerPlatform This connector allows administrators to create environments, create for Admins environment DLP policies, create tenant DLP policies, delete environments, force environment syncs, list supported environments, and more. PowerApps for App Makers

All makers

Environment and tenant admins

This connector provides administrative capabilities but in the context of an App application and not the entire environment/tenant. Within this connector, an owner/maker application owner can edit permissions, get app versions, get connections, publish an app, remove an app, and more.

Flow This connector provides administrative capabilities but in the context of the Flow owner/maker management flow owner. Within this connector, a flow owner can create connections, create flows, delete flows, get flow details, list my flows, list my environments, and more. Microsoft Flow for Admins

Environment This connector has environment and tenant scope depending on the and tenant connection that it is running under. As a result, this connector allows an admin to disable a flow, edit flow permissions, get flow user details, remove admins flow user details, remove flow, and more.

www.dynamicscompanions.com Dynamics Companions

- 398 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Connector name

Purpose

Audience

Cloud App Security

This connector is for use with the Microsoft Cloud App Security service. For organizations that are using this service, this connector will allow Cloud Security Analysts to automate activities such as enabling security policies, getting cloud security alerts, tagging apps as sanctioned, and more.

Cyber Security Analyst

For organizations that are using Microsoft Graph Security, they can automate Cyber Microsoft Graph Security their security workflows by creating subscriptions, subscribing to alerts, and Security Analyst more. Microsoft Defender ATP provides endpoint protection against malware and Cyber Microsoft Security Defender ATP other malicious activities. By using the Microsoft Defender ATP, Cyber Analyst Security Analysts can automate actions such as isolating machines, performing investigation actions, removing application permissions, running antivirus scans, and much more. Again, you might wonder why Power Platform and security-related connectors have been included in the preceding list. The reason is because automating workloads shouldn't be restricted to app makers. Administrators and Cyber Security Analysts also have increasing demands on their time and they should try to be as efficient as possible. In regard to cyber security, you can't rely solely on analysts querying logs 24 hours a day. By taking advantage of triggers for these security services, alerts and notifications can be sent to these teams where they can subsequently respond to emerging threats in near or real time. For some organizations, getting buy-in from security teams to use the Power Platform might be challenging. However, when Cyber Security Analysts have seen that the benefits solve their needs, they tend to be more open to extending its use to other areas of the organization.

Layer directional data governance on top of DLP policies The Plan and manage your Power Automate environment module of this learning path discussed strategies that deal with exceptions. The scenario that was outlined in that module involved SharePoint and Twitter connectors that were being used within the same flow. The concern that an administrator might have is that sensitive data could leak from SharePoint to Twitter. This type of scenario might pose concerns for administrators, as would an alternative scenario where data flowed the opposite way, from Twitter to SharePoint. The likelihood of that scenario occurring is low because it involves bringing a public dataset into the enterprise. Currently, DLP policies do not have a notion of directionality; however, you can implement directionality by using Power Platform Management connectors. The following sections explain how you can accomplish directional data governance.

www.dynamicscompanions.com Dynamics Companions

- 399 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The first step in accomplishing directional data governance is to create a DLP policy, from the Power Automate Admin center , that includes the SharePoint and Twitter connectors in the Business data only data group. By using this configuration, you are allowing makers to build flows that include both of these connectors.

Next, you will transition to the Power Automate Maker Portal and sign in by using your administrator account so you can build your governance flow. Your goal is to build a scheduled flow that will run every hour.

www.dynamicscompanions.com Dynamics Companions

- 400 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

A Recurrence trigger will automatically be added to your flow. You will now add an Initialize variable action to your flow. Name this variable previousTimestamp and then include an expression of ticks(addMinutes(utcNow(),‐60)). This expression will calculate the number of ticks as of 60 minutes ago. The reason for including this expression is that you want to see if any flows have been created or modified since the last time your flow ran, which would have been 60 minutes ago.

www.dynamicscompanions.com Dynamics Companions

- 401 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Add another variable called isFlowAction that is of type Boolean and has a default value of false. You will use this variable later in your flow when you detect that a flow includes a Twitter action.

www.dynamicscompanions.com Dynamics Companions

- 402 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Next, use the PowerPlatform for Admins connector and the List Environments as Admin action that will provide your flow with a complete list of environments in your tenant. Then, subsequently loop through each environment so that you can look for flows that include Twitter actions.

www.dynamicscompanions.com Dynamics Companions

- 403 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After listing all environments, you will add the Flow management connector and use the List Flows as Admin action that will provide a listing of all flows for a given environment.

The List Flows as Admin action requires the name of an environment as an input parameter. Use the Name field that is returned from your List Environments as Admin call. When you provide this input, an Apply to each action will automatically be added that will allow you to iterate through all environments.

www.dynamicscompanions.com Dynamics Companions

- 404 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Because you are only interested in exploring recently modified flows, you will add a condition to your flow and will compare the ticks of the flow's last modified timestamp to that of your variable that you established earlier in your flow. To accomplish this task, use an expression to calculate the ticks of your last modified timestamp. The complete statement is ticks(items('Apply_to_each_2')?['properties']?['lastModifiedTime']) is greater than previousTimestamp.

When you detect that a flow has been modified within the past 60 minutes, you will want to ensure that it doesn't belong to your administrator. This verification will help avoid an error when you try to add the administrator as co-owner of a flow in a future step. To detect if the current flow belongs to your administrator, use the Office 365 Users connector and the Get my profile (v2) action. This step will return information about the user who established a connection to the connector, which in this case is the administrator. Next, add the Office 365 Users action to the If yes branch.

www.dynamicscompanions.com Dynamics Companions

- 405 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Now, you will add another condition that will verify if the Creator object ID (from the List Flows as Admin action) is not equal to ID (from the Get my profile (V2) action). In the If yes branch, add the Edit Flow Owner Role as Admin action that belongs to the Microsoft Flow for Admins connector. This action will add your administrator user as a co-owner of the flow and will help extract the flow definition, which requires you to be a co-owner of the flow. You will retrieve the flow definition in an upcoming step, but for now, provide the current Environment Name, current Flow Name, and details about your administrator user such as email address, display name, and ID. These values are accessible from your Get my profile (V2) action.

www.dynamicscompanions.com Dynamics Companions

- 406 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you have added your administrator account as a co-owner of the flow, you can call the Get Flow as Admin action from the Flow management connector.

www.dynamicscompanions.com Dynamics Companions

- 407 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The inputs to the Get Flow as Admin action includes the current Environment Name and Flow Name. The output of this action includes the flow definition that will allow you to determine if a Twitter action exists.

www.dynamicscompanions.com Dynamics Companions

- 408 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To check whether a Twitter action is being used, add a condition to your flow and verify if the Action Api name (from the Get Flow as Admin action) is equal to shared_twitter. After you have added this condition, an Apply to each loop will be applied because the Action Api name attribute is part of an array because each flow can have many actions. Within the If yes branch, update your isFlowAction variable to be set to true because you have now found a flow that includes a Twitter action. You will use this variable later in your flow to determine whether you need to disable a flow and send an email to the flow owner.

www.dynamicscompanions.com Dynamics Companions

- 409 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Outside the Apply to each variable that allows you to iterate through all actions in your flow, add another condition. This condition will verify if the value of your isFlowAction variable is true.

www.dynamicscompanions.com Dynamics Companions

- 410 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the If yes branch, add the Microsoft Flow for Admins connector and then select the Disable Flow as Admin action. This action will allow you to disable the flow so that information cannot be sent to Twitter. To call this action, include the current Environment Name and Flow Name.

When disabling someone's flow, you will want to send an email to them so they are aware that their flow is no longer running. To get the flow owner's email address, use the Office 365 Users connector and use the Get user profile (V2) action to return the owner's email address. To get their email address, you will need to add the Creator object ID, which can be retrieved from the List Flows as Admin action.

www.dynamicscompanions.com Dynamics Companions

- 411 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Send an email to the flow owner by using the Office 365 Outlook connector and the Send an email (V2) action. Use information that is returned from the Get user profile (V2) action to send this email, including the Mail and Given Name attributes. In addition, you can include the name of the flow by adding the Flow Display Name attribute found in the List Flows as Admin output.

www.dynamicscompanions.com Dynamics Companions

- 412 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Because you are looping through all flows in your tenant, you will need to set your isFlowAction variable back to false so that you can look for other flows that might have a Twitter action. You can now save your administrative flow.

www.dynamicscompanions.com Dynamics Companions

- 413 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To test your flow, sign in to the Power Automate maker portal by using a different account. Now, you will create a simple flow that includes a SharePoint trigger and a Twitter action. This scenario will not be blocked by your DLP policy, but it should be detected by the administrative flow that you created.

www.dynamicscompanions.com Dynamics Companions

- 414 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Now, you can run your Detect Twitter Actions flow that you previously created as an administrator. When this flow runs, it should detect that a flow was recently modified and that it includes a Twitter action. As a result, an email will be sent to the flow owner.

If you examine the SharePoint to Twitter flow, you will discover that it has been disabled as a result of your administrator disabling the flow.

www.dynamicscompanions.com Dynamics Companions

- 415 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

However, retrieving information from Twitter and sending it to SharePoint does not violate your governance rules. As a result, you can create another flow by using your flow maker's account, which includes a Twitter trigger and a SharePoint action. When you run your Detect Twitter Actions governance flow, it remains functional and is not disabled because this is a permitted use case.

www.dynamicscompanions.com Dynamics Companions

- 416 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Configure DLP for custom connectors While the existing DLP model does support custom connectors, by default, they don't show up in the DLP policy editor inside the Power Platform Admin center. The default behavior for custom connectors is that they're managed as part of the default data group that you specify. However, the custom connectors won't appear within the user interface in the Power Automate Admin center. Additional actions must be taken by an administrator to have custom connectors show up in DLP policies that include either of the following entities: 

Power Platform Management connector

Power Apps and Power Automate PowerShell cmdlets

Using PowerShell to add custom connectors to a DLP policy is the simplest way to manage custom connectors. The exercise at the end of this module demonstrates how this task can be completed.

www.dynamicscompanions.com Dynamics Companions

- 417 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Configure DLP for HTTP connectors A scenario that administrators need to be aware of is that HTTP triggers and actions can only be managed through the existing DLP editor, with some actions being performed by an administrator. The partial reason for this parameter is because HTTP triggers and actions are considered to be built in and technically aren't considered connectors, even though they might have similar characteristics. However, because of customer needs and past feedback, it is possible to manage the triggers/actions that are shown in the following image.

These triggers/actions can only be managed in DLP policies that have a schema version of 2018-11-01, which is discussed in the linked blog. By using a new schema version, it allows organizations to make the decision to implement these changes. Otherwise, it's highly possible that some flows will be broken, depending on how an organization wants to classify the connectors as business or non-business. For example, if the HTTP action was previously not managed and is being used with connectors from the Business data only data group and is then placed in the No business data allowed data group, then any flows that are using this configuration will be suspended because of DLP violations. By using this new schema version, DLP policies can be constructed by using either of the following entities: 

Power Platform Management connector

Power Apps and Power Automate PowerShell cmdlets

However, using PowerShell is the simplest path forward. Additional information about PowerApps and Power Automate PowerShell cmdlets can be found at PowerShell support for Power Apps . After installing the prerequisite PowerShell modules, you can run the following statement, (NewAdminDlpPolicy -DisplayName "HTTP DLP Policy" -SchemaVersion 2018-11-01), which will create a new DLP policy that includes support for HTTP when you include a -SchemaVersion parameter of 201811-01. After you have run the previous statement, you'll be asked to sign in by using your admin credentials.

www.dynamicscompanions.com Dynamics Companions

- 418 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After the command has been run, you'll be provided a status output that includes the internal PolicyName and other attributes.

If you go to the Power Automate Admin Center , you'll discover that the DLP policy has been created.

Note Because an environment parameter was not specified when you created this DLP policy, it will be applicable to the entire tenant. After you have explored this DLP policy, you'll find that your HTTP triggers and actions are included in your default data group, which in this case is No business data allowed. These connectors can be managed just like any other connectors and can be added to the Business data only data group.

www.dynamicscompanions.com Dynamics Companions

- 419 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Publish a custom connector and apply a DLP policy In this exercise, you will manage a custom connector in a DLP policy. To manage a custom connector, you need to ensure that you have one in your environment, so the first part of this exercise will be publishing a custom connector from GitHub. After you have deployed that connector, you will then manage it by using the PowerShell cmdlets that are provided by Microsoft.

Publish a custom connector The custom connector that you will deploy comes from Microsoft's GitHub repository. The connector's functionality is arbitrary; you only need a custom connector for the purposes of DLP policy management. Follow these steps to install the custom connector: 1.

Go to the Microsoft Power Platform GitHub repository in a web browser.

2.

Select the Clone or download button and then select the Download ZIP link. Note where you save this zip file.

www.dynamicscompanions.com Dynamics Companions

- 420 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

Locate the zip file that you downloaded. Right-click the file in Windows Explorer and select Extract All...

4.

Go to the extracted folder and open the PowerPlatformConnectors-master folder.

5.

Open the samples folder.

6.

Open the Office365Groups folder.

7.

Note the location of the apiDefinition.swagger.json file. You will need this file when you create your custom connector in subsequent steps.

8.

Go to the Power Automate maker portal in a web browser and sign in.

9.

From the environment picker, select the environment that you created in the first module of this learning path. If you recall, an environment called Development was created. By selecting this environment, your custom connector will only be deployed in this environment and will not be available in your default environment.

10. Within the left navigation pane, expand Data and then select Custom connectors. 11. Select + New custom connector and then Import an OpenAPI file.

www.dynamicscompanions.com Dynamics Companions

- 421 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

12. Enter Custom Office 365 Groups in the Connector name field. In the Import an OpenAPI file field, enter apiDefinition.swagger.json, select the Import button, and then select Continue. If you recall, this is the file that you located in step 7 of this exercise.

The custom connector publisher wizard will now be displayed. You do not need to complete actions on the General tab. 13. Select the Security tab and then select an Authentication type of No authentication. 14. No further actions are necessary on the Definition or Test tabs, so select the Create connector link to publish your connector. 15. In the upper-left corner, a message will briefly appear indicating that your custom connector has been published. Select the Close label to complete publishing the custom connector. You should now see your custom connector available within the Custom connectors experience.

www.dynamicscompanions.com Dynamics Companions

- 422 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You have now published your custom connector. In the next topic, you will manage this custom connector in a DLP policy.

Manage a custom connector in a DLP policy Currently, a custom connector cannot be managed through the Power Automate Admin center's DLP experience without some administrative actions. In this section, you will use the Microsoft Power Apps and Power Automate PowerShell cmdlets for administrators. To add a custom connector to a DLP policy, you will need to retrieve some unique identifiers for your custom connector and DLP policy to provide them as inputs when adding your custom connector. These steps are also covered in the following section.

Note Prior to attempting the following actions, ensure that you meet the prerequisites that were outlined earlier in this module. 1.

Launch Windows PowerShell and select Run as Administrator.

www.dynamicscompanions.com Dynamics Companions

- 423 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Import the required modules by using the following commands: Install-Module -Name Microsoft.PowerApps.Administration.PowerShell Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber

3.

If you are prompted to accept the change to the InstallationPolicy value of the repository, accept [A] Yes to all modules by entering A and then selecting Enter for each module.

4.

List all your DLP policies by running the following command in the Windows PowerShell command-line tool: Get-AdminDlpPolicy.

Note You will be prompted for credentials at this point. Ensure that the credentials you are using have Environment or Tenant Administrator permissions. 5.

A list of DLP policies will be displayed. Look for the DLP policy that you created in the previous module. When you find the policy, copy the PolicyName, which is represented as a GUID, to a text editor like Notepad.

www.dynamicscompanions.com Dynamics Companions

- 424 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

6.

You now need to retrieve more details about your custom connector. To do so, enter GetAdminPowerAppConnector in the Windows PowerShell command-line tool. When the results have returned, copy the ConnectorName and ConnectorId values to a text editor.

7.

Enter Add-CustomConnectorToPolicy in the Windows PowerShell command-line tool.

8.

When prompted, provide the PolicyName that you copied in step 5.

9.

Provide the ConnectorName value that you copied in step 6.

www.dynamicscompanions.com Dynamics Companions

- 425 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Provide the GroupName of hbi to put it into the Business data only data group. Use lbi if you would rather put the custom connector in the No business data allowed data group. 11. Provide the ConnectorId that you copied in step 6. 12. You will now be prompted to provide a ConnectorType. Provide a value of Microsoft.PowerApps/apis. 13. Your command should now run and you should be presented with a status Code of 200 and a Description of OK.

14. Validate that your custom connector can be managed through DLP policies by going to the Power Automate Admin center , and then explore your Office 365 Connectors DLP policy to ensure that your custom connector appears in your Business data only data group. You can now manage this custom connector, much like any other connector.

www.dynamicscompanions.com Dynamics Companions

- 426 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note Currently, you will not be able to rename the custom connector from this experience.

Check your knowledge 1.

2.

3.

To include HTTP triggers/actions within a DLP policy, what schema version must you use when creating that DLP policy? 

2018-11-01

2016-01-01

2017-07-21

2019-01-01

What is the default behavior for custom connectors with respect to DLP policies? 

Custom connectors are visible in the Power Automate Admin center in the Business data only data group.

Custom connectors are visible in the Power Automate Admin center and placed in the default data group.

Custom connectors are not visible in the Power Automate Admin center but are placed in the default data group.

Custom connectors are not managed.

What are the behaviors of the Power Platform Management connectors as they relate to DLP policies? 

Because these connectors are part of Power Platform, they are not subject to DLP policies.

www.dynamicscompanions.com Dynamics Companions

- 427 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

These connectors are managed in DLP policies, much like any other connector.

These connectors need to be enabled by an administrator before they can be managed in DLP policies.

These connectors cannot be managed in a DLP policy.

Summary This module reviewed the behavior of the default data group and its impact on new and custom connectors that are deployed to an environment. It also reviewed popular DLP configurations for Office 365 and Dynamics 365 workloads and demonstrated how you can layer additional governance on top of DLP policies. You also learned about how to include HTTP triggers and actions within DLP policies when you use the 2018-11-01 DLP schema version. Finally, you learned how to use the Power Apps and Power Automate PowerShell cmdlets to add a custom connector to an existing DLP policy.

www.dynamicscompanions.com Dynamics Companions

- 428 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manage environmental changes in Power Automate Learn best practices for communicating changes to Data Loss Prevention (DLP) policies, find out about how people are using Power Automate, discover who in your organization is creating and sharing flows, learn what connections are being used within your Power Automate environments, and observe how connections are established within your Power Automate environments.

Learning Objectives In this module, you will: 

Identify best practices for communicating changes to DLP policies.

Learn how people in your organization are using Power Automate.

Discover who in your organization is creating and sharing flows.

Learn what connectors are being used within your Power Automate environments.

Observe how connections are being established within your Power Automate environments.

Prerequisites A basic understanding of Power Apps and Power Automate, including their purpose and how these tools are used within an organization. Learners should understand how connectors are used within apps and flows to exchange data across source and destination systems. You also need an account that has environment or tenant admin privileges for Power Platform.

Introduction and best practices for building DLP change management plans Previous modules of this learning path discussed the role of environments, Data Loss Prevention (DLP) policies, and some of the tools that you can use to manage these features. This module explains how administrators can prepare for making governance changes through proactive change management. Change management is important because it reduces the friction that might occur when changes are made to Power Platform environments that app makers are not prepared for. Inevitably, if app makers are not prepared for these changes, people's expectations won't be met. For example, a maker that has built a flow that provides business critical automation won't be pleased if someone changes a DLP policy that ultimately breaks or disables their flow. Understanding what

www.dynamicscompanions.com Dynamics Companions

- 429 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

connectors are being used and who has included them in their flows gives an administrator more confidence about any change that they are about to make. Another consideration is that change management is not about limiting what people can do. With change management, you have the ability to identify when people are doing exceptional work with Power Platform. If you can identify these champions, then it might be a good idea to determine how they can be further empowered to help the organization achieve greater business results. The following units discuss different tools and techniques that you can use to gain insights that will help an administrator manage change in their environments.

Prerequisites for Power Platform governance and change management The Introduction to Power Automate security and governance module of this learning path explained tenant and environment scopes as they relate to Data Loss Prevention (DLP) policies. This module explores the Admin Analytics experience, which follows a similar scope model as the PowerShell cmdlets. Managing environment-scoped assets requires the person who is administrating these assets to possess environment admin permissions. In regard to managing tenant-scoped assets, the person who is administrating these assets must possess tenant admin permissions.

Implement best practices for building DLP change management plans Communicating changes to DLP can be a challenging endeavor and will differ depending on organization design. You can use certain approaches to communicate DLP change information to your makers. Consider the following strategies: 1.

Create an Intranet/Wiki site that can be used for app makers to reference so they understand what DLP policies exist.

2.

Track all flow users in a digital list. This list can be a Yammer group, SharePoint list, distribution list, or Microsoft Azure Active Directory group. You could also use the Power Platform Center of Excellence (COE) Starter Kit.

Note In the next module of this learning path, you will build a digital list that helps you track new users. 3.

Communicate upcoming DLP changes in your IT change management meetings. An IT change board is a common vehicle for IT organizations to communicate changes. Part of their purpose is

www.dynamicscompanions.com Dynamics Companions

- 430 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

to ensure that the right level of accuracy is applied to changes, but these meetings are also used to communicate changes to other stakeholders who might have a dependency on your service. 4.

Send out advance notice to all makers of upcoming DLP changes by using the digital list that was previously discussed. Ideally, this process is also automated, by using Power Automate, to reduce manual activities.

5.

Provide a channel, like a distribution list or service desk queue, for makers to communicate with if they have questions or concerns. As part of the communication that is sent out, ensure that makers have an outlet that they can use to request additional assistance if required.

6.

Be prepared for exceptions. The Introduction to Power Automate security and governance module discussed the need for exception environments where DLP rules are relaxed. As part of the communication that goes out to makers, they might have a legitimate need to continue using connectors in their current configuration. To address these needs, organizations should consider automating this process by using a Microsoft Form that connects to a Power Automate flow that includes automated approvals.

View Power Platform Admin Analytics Previously, you learned about the steps that you can take to support communicating with users when you are ready to make governance changes. However, it is important to understand the impacts of an upcoming change before sending out communications. The Power Platform Admin Analytics feature can help administrators understand how Power Automate is being used in your organization to help you avoid undesirable impacts. Six Power Automate reports are available in the Power Platform Admin center: 

Runs

Usage

Created

Errors

Shared

Connectors

Administrators can use these reports to gain insight about how people are using Power Automate. To access the Admin Analytics feature, go to the Power Platform Admin Center by using an account that has environment or tenant admin privileges. After you have signed in, expand the Analytics dropdown menu from the left navigation pane and select Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 431 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In regard to environment and tenant scopes, when it comes to Admin Analytics, everything is in the context of an environment. Currently, no method exists for you to see aggregated analytics, across a tenant, in this experience. A tenant administrator will be able to see analytics on an environment-byenvironment basis. Environment administrators will only see analytics for the environments that they are admins in. To change the environment, an administrator can select the filter icon in the upper-right corner of the Admin center page, where they can select their desired Environment and the Time period that they want to see analytics for. The Power Platform Admin center will store analytics for up to 28 days, but administrators can filter based on the last 14 and 7 days. In addition, the analytics are not aggregated in real time. Administrators can expect up to a three-hour delay before the latest analytics are published.

www.dynamicscompanions.com Dynamics Companions

- 432 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Within the Runs report in the Power Automate Analytics feature, administrators will be able to determine the number of flow runs within that environment for each day, week, and month. In addition, Power BI embedded slicers allow an administrator to filter data based on whether the run was successful, failed, or canceled. For organizations that are adopting Power Automate, this report can provide insights that help determine the level of adoption within the organization. People who are responsible for change management can use this data to help support training and adoption campaigns by being able to show measurable progress.

The Usage report outlines the types of flows in use, including whether the flow is Scheduled, Button clicked, or System Events driven or not. In addition, for each flow in use, the number of runs is aggregated so an administrator can see how frequently the flows run and what is the most frequently run flow. The Flow creator email is also captured so that if an administrator needs to contact this person, they have the correct email address. The Usage report also includes a trend that highlights the number of unique flows in use each day based on the Time period filter.

www.dynamicscompanions.com Dynamics Companions

- 433 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you are looking to identify new flows, the Created flow report will identify these new assets. These flows will be broken down by their type: Scheduled, Button clicked, or System Events. The flows that have been recently created will also be listed in a table that includes the Created date and the Flow creator email address information. Additionally, this report displays a trend of when these flows were created. The Created report is useful for people who are responsible for change management. Perhaps the organization has recently provided Power Automate training and wants to see if people are putting these new skills to use.

www.dynamicscompanions.com Dynamics Companions

- 434 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For administrators, detecting when makers are experiencing errors with their flows can become a great concern if a flow continues to fail and supports an important business process. The Errors report will help administrators identify flows that are failing and will display the Error count, the Last occurred timestamp, and the Flow creator email information. In addition, a pie chart will break down the error types that will highlight the different types of errors that makers have been experiencing.

www.dynamicscompanions.com Dynamics Companions

- 435 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The Shared report will identify the types of flows shared, including System Events, Button clicked, and Scheduled. In addition, a table will be displayed that includes the Flow name that was shared, the number of Shares, and the Flow creator email information. This report also displays a trend of what day the flow was shared on within the configured time period. The Shared report is useful for identifying makers who are sharing their work with others within the organization. These makers are often referred to as champions who should be empowered so they can drive further business results.

www.dynamicscompanions.com Dynamics Companions

- 436 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Often, Connectors is the most important report to consider when evaluating DLP changes. The Connectors report identifies all the connectors that have been involved in flow runs and how many connector calls have been made. Much like you would expect with a Power BI embedded experience, an administrator can filter out connectors as required. For example, consider a situation where an administrator wants to make a DLP connector change that involves the SharePoint connector. The administrator can select the SharePointOnline connector from the Connectors by flow runs visualization. As a result, the Connectors by connector calls visualization will be updated. In addition, you will see an updated table called Flows using connectors. In this visualization, you will see all flows that use the SharePoint connector and the Flow creator email address. This information will help you identify all makers that you should proactively reach out to before making any DLP changes. The Connectors report is useful in governance and change management situations. It allows administrators to identify if connectors are being used that are not in the best interest of the organization and allows administrators to work with those people to better understand why they are using those connectors and potentially implement actions that prevent further usage. On the other hand, if an administrator discovers a lot of use around a particular connector, like Microsoft Forms, perhaps they want to evangelize its usefulness with other business units in an attempt to scale the organization and acquire more benefits for the organization.

www.dynamicscompanions.com Dynamics Companions

- 437 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Gain visibility by using Power Automate PowerShell cmdlets Different Power Automate PowerShell cmdlets help provide administrators with visibility into how app makers are using Power Automate. After learning about the different cmdlets that are available, you will be able to complete the exercise at the end of this module to observe how an administrator can use the Power Automate PowerShell cmdlets to identify all the connections that have been created within the tenant. The exercise will also explain how to set up the prerequisite PowerShell modules. The different cmdlets that you can use are explained in the following sections.

Read connection permissions In the read connection permissions (Get-AdminPowerAppConnectionRoleAssignment) cmdlet, administrators can retrieve all connection permissions for Power Apps and Power Automate. The returned data includes whether the connection belongs to an owner or if the connection has been shared with another user.

www.dynamicscompanions.com Dynamics Companions

- 438 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Read and delete custom connectors In the read and delete custom connectors (Get-AdminPowerAppConnector) cmdlet, administrators can retrieve all custom connectors that have been deployed in the tenant.

www.dynamicscompanions.com Dynamics Companions

- 439 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Read environments In the read environments (Get-FlowEnvironment) cmdlet, administrators can retrieve all environments that have been created within the tenant. The returned information will also include the name of the person who created the environment, when it was created, and its location.

www.dynamicscompanions.com Dynamics Companions

- 440 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Read default environment The read default environment (Get-FlowEnvironment -Default) cmdlet is one that has already been discussed, but the difference in this case is that you can provide a parameter of -Default that will result in only the default environment being returned.

List all flows in tenant The list all flows in tenant (Get-AdminFlow) cmdlet will list all flows that exist within the tenant. The returned information includes when the flow was created, who created it, and the environment that it was created in.

If you want to export this information in CSV format, you can use the following command, which will write this information to a file.

www.dynamicscompanions.com Dynamics Companions

- 441 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get‐AdminFlow | Export‐Csv ‐Path '.\FlowExport.csv' Because the output of PowerShell cmdlet is a CSV file, you can load the results into a business intelligence tool, like Power BI or Microsoft Excel, where you can further analyze the results.

Exercise - List connections in a tenant In this exercise, you will connect to Power Apps and Power Automate PowerShell cmdlets to list all connections that are in your tenant. You can use this information to determine which users are making connections through different connectors. 1.

Launch Windows PowerShell and select Run as Administrator.

2.

Import the required modules by using the following commands: Install‐Module ‐Name Microsoft.PowerApps.Administration.PowerShell Install‐Module ‐Name Microsoft.PowerApps.PowerShell‐AllowClobber

3.

If you are prompted to accept the change to the InstallationPolicy value of the repository, accept this change for all modules by entering A and then pressing Enter for each module.

4.

List all connections by using the Get‐AdminPowerAppConnection command.

5.

At this point, you should be prompted for credentials. Enter your credentials while accounting for the prerequisites that were discussed at the beginning of this module.

6.

After you have entered your credentials, the cmdlet will run and all of the connections will be returned. Data that is returned includes the name of the connector, who created the connection, the environment, and its current status.

www.dynamicscompanions.com Dynamics Companions

- 442 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

2.

3.

What is the best way to determine which custom connectors have been deployed in an organization's tenant? 

Use the Maker Analytics feature that is found in the Power Automate maker portal.

Run the Get-AdminPowerAppConnector PowerShell cmdlet.

Run the Get-CustomTenantConnectors PowerShell cmdlet.

It is not possible to list the custom connectors in a tenant.

What is the maximum data retention period for Admin Analytics that is found in the Power Platform Admin center? 

14 days

90 days

7 days

28 days

What is the best way to look for flow errors that are occurring within a Power Automate environment? 

Run the Get-ErrorsForEnviornment PowerShell cmdlet.

View the Errors report that is found in the Power Platform Admin center - Admin Analytics feature.

Search the Office 365 Security and Compliance logs.

Currently, no method exists for finding all flow errors for an environment; a method only exists for a tenant.

www.dynamicscompanions.com Dynamics Companions

- 443 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary You have learned about the strategies that are used to establish governance and change management processes. Additionally, you discovered that the governance tools that Microsoft provides can be used for change management purposes. When makers use Power Platform tools to improve their productivity, administrators should try to encourage those users to help scale the organization. The Admin Analytics feature, found in the Power Platform Admin center, is a valuable tool for administrators to get insights into their users. This feature doesn’t require any intervention by an administrator. It's refreshed automatically and keeps data for 28 days. For situations where administrators want more control, you will have access to many PowerShell cmdlets that can help you provide administrators with more visibility into their user’s actions. One benefit of using these cmdlets is that the data can be exported as CSV files, meaning that they can be loaded into an organization’s business intelligence tools. In addition to the tools discussed in this module, in the next module, you'll learn about how to search Office 365 Security and Compliance logs by using a flow template for Power Automate events. By using this flow, you can detect when new events occur, such as newly created flows.

www.dynamicscompanions.com Dynamics Companions

- 444 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use templates to enforce governance policies in Power Automate Microsoft provides many templates in Power Automate that administrators can use to enforce governance policies and increase visibility of assets that are being created within a customer’s tenant. This module will identify some existing templates that you can use to provide administrators with greater visibility.

Learning Objectives In this module, you will: 

Identify existing templates that aid in security and governance processes.

Implement templates and configure them for personal use.

Respond to alerts that are generated by these templates.

Prerequisites A basic understanding of Power Apps and Power Automate, including their purpose and how these tools are used within an organization. Students should also understand how connectors are used within apps and flows to exchange data across source and destination systems. Prior experience with Power Automated Templates is beneficial, but not required.

Introduction to Power Automate flow templates Within Power Automate, templates exist that allow app makers to use blueprints that have been provided by Microsoft, Microsoft partners, and the community. These templates are free to use and can act as accelerators for people who are looking to solve a pre-determined problem. After a maker has provisioned a template, they are free to make changes as needed. Anyone can submit a template, provided that its last run was successful, from within the Power Automate maker portal. After the template has been submitted, Microsoft will review the template for suitability, remove any personal identifiable information, and publish it to the public gallery.

www.dynamicscompanions.com Dynamics Companions

- 445 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The public gallery can be accessed from the Templates link in the left navigation menu. From the gallery, makers can search for specific connectors or keywords that they are interested in. Additionally, Microsoft has categorized the templates based on popular scenarios like approvals, email, and calendar. While many of the templates in the gallery target information workers, some templates target Power Platform governance use cases. This module explores some of these templates that can be used by administrators to improve their productivity when governing Power Platform.

www.dynamicscompanions.com Dynamics Companions

- 446 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prerequisites No licensing requirements exist for exploring templates and using them. However, as you might have experienced in other modules, the person who is performing administrative functions needs to have either tenant or environment administrative privileges to perform those functions, even when using the Power Platform Management connectors. In addition, the person who is using these connectors needs to have a Power Automate P2 license . Use the links on the page for more licensing information.

Discover and implement Power Automate governance templates The following sections describe some of the templates that allow administrators to automate the governance of their environments.

Template 1 - List New Microsoft Flow Connectors The List New Microsoft Flow Connectors template will help you discover new connectors that have been deployed in a Power Platform environment. You can provision this template by accessing the List new connector template directly or by searching for it in the Templates gallery.

www.dynamicscompanions.com Dynamics Companions

- 447 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you have selected this template, you will find a description of what the flow does and will be prompted to establish new connections for the connectors that are used by the flow. If you already have existing connections for these connectors, you can select the Continue button.

www.dynamicscompanions.com Dynamics Companions

- 448 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After selecting the Continue button, the flow will be loaded into the Power Automate designer experience where you can modify the flow to suit your needs. For example, this flow is configured to run every day at 9:00 AM. The flow allows you to select an environment and the flow then checks if any connectors have been provisioned within the past 24 hours. Optionally, you can modify this expression to include a broader duration.

www.dynamicscompanions.com Dynamics Companions

- 449 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Because you do not need to make additional configuration changes, you can now run this flow. If new connectors have been deployed in the past day, you will receive an email similar to the following. In this case, you have a custom connector that has been recently deployed in your environment. This email is important for an administrator because they can now adjust their DLP policies to ensure that this connector has been placed in the correct data group.

www.dynamicscompanions.com Dynamics Companions

- 450 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note Depending on what environment you are running this flow in, you might encounter a DLP error based on activities that are performed in previous modules. Modify or remove DLP policies as appropriate.

Template 2 - Get list of new PowerApps, Flows, and Connectors Another useful template that administrators can take advantage of is Get list of new PowerApps, Flows, and Connectors, which can be found by searching in the Templates gallery or by selecting the template . This template is similar to the template that was previously discussed, except that it will search all environments within the tenant and will also identify new apps, flows, and connectors.

www.dynamicscompanions.com Dynamics Companions

- 451 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you select this template, you will also have to create connections to the connectors that are used in the flow, if they have not already been established. After your connections have been established, you can select the Continue button to provision the flow.

www.dynamicscompanions.com Dynamics Companions

- 452 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This flow is also configured to run daily, and you can modify a variable called reportingperiod. This value indicates the number of days back that the flow should evaluate when looking for new apps, flows, and connectors. The default value is ‐7, which means that this flow will look for new assets that were created in the past seven days.

www.dynamicscompanions.com Dynamics Companions

- 453 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

\ When you run this flow, a report will be generated that identifies every new flow, app, and connector that has been created in your tenant over the past seven days. Depending on how many environments, apps, and flows that you have in your tenant, this flow can take several minutes to complete.

www.dynamicscompanions.com Dynamics Companions

- 454 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Template 3 - Monitor Office 365 audit logs for specific details and send alerts The Monitor Office 365 audit logs for specific details and send alerts template can be found by searching for it in the Templates gallery or by directly selecting the template .

www.dynamicscompanions.com Dynamics Companions

- 455 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The purpose of this template is to search the Office 365 Security and Compliance logs for Power Automate events on a configured interval. The events that are captured in these logs include: 

Created flow

Edited flow

Deleted flow

Edited flow permissions

Deleted flow permissions

Started a Flow paid trial

Renewed a Flow paid trial

www.dynamicscompanions.com Dynamics Companions

- 456 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Before using this flow, you need to establish connections to SharePoint and Office 365 Outlook. The reason is because you will store the names of events that you want to subscribe to in SharePoint and you will use the Office 365 Outlook connector to send your results to your intended audience. After you have created your connections, you can select the Continue button to edit the flow.

www.dynamicscompanions.com Dynamics Companions

- 457 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Before configuring your flow, you need to create a custom SharePoint list where you can store the operations that you will pass into the Office 365 API. In this scenario, you are interested in knowing when new flows are created. As a result, you will add a record that includes a Title of CreateFlow. A complete list of supported operations can be found in this blog post .

With your SharePoint list created, you can edit your flow so that you can connect to your list. While you are in the flow designer, you need to configure a few actions, including the Recurrence trigger that indicates when your flow will run. You also need to populate a SendTo variable, which represents an email

www.dynamicscompanions.com Dynamics Companions

- 458 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

address that you want to send your output to. If you want a different duration of events to query for, you can modify the expressions in the FromDate and ToDate variables.

When connecting to the Office 365 Security and Compliance API, you need to provide your Office 365 admin credentials. You will do so by populating the Username and Password fields that are found in the advanced options in the HTTP action.

You are now ready to run your flow. If you have created a flow within your tenant in the past 30 days, you should receive an email that looks like the following example.

www.dynamicscompanions.com Dynamics Companions

- 459 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Build a digital tracking user list The previous module of this learning path discussed the need to maintain a digital tracking list that can be used to communicate governance changes to users. One way to track users is to put them in an Office 365 Group. If your DLP policies change, you can use this Office 365 group to send updates. However, to ensure that users are aware of an organization's governance policies, you can include training materials that they must complete prior to being added to this Office 365 group. This step will help you verify that the users are aware of permitted activities and will ensure that they are aware of training materials that will accelerate their learning journey. 1.

Before building your flow, create your Office 365 group. Launch Outlook mail in a web browser. In the left navigation pane, select Groups and then select New Group.

2.

Enter Flow Users in the Group name field and then select the Create button.

www.dynamicscompanions.com Dynamics Companions

- 460 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Go to the Power Automate Maker Portal and then select Create to make a new flow.

www.dynamicscompanions.com Dynamics Companions

- 461 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Select the Scheduled flow icon to create a flow that will run on a regular interval.

5.

Provide a name for your flow, such as Populate Flow Group.

6.

Set the Repeat every value to 1 Day so that your process will run once a day. Select the Create button to proceed.

www.dynamicscompanions.com Dynamics Companions

- 462 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

7.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create the following two variables by selecting +New step, followed by searching for variables and then selecting Initialize variable.

Name your variables in the following manner and include the appropriate Value as outlined: a.

reportingPeriod - Is an Integer type and has an initial value of ‐1. This variable will be your window that you will look back on to determine if you have any new flows created. If you want to run this process weekly, then a value of ‐7 would be appropriate.

b. reportingPeriodTicks - Is also an Integer type and represents the number of ticks that exist for your reporting period. The value of this integer is achieved through an expression of ticks(addDays(utcNow(),variables('reportingPeriod'))).

www.dynamicscompanions.com Dynamics Companions

- 463 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

8.

Add a List Environments As Admin action by using the PowerPlatform for Admin connector. Add this action by selecting + New Step, followed by searching for PowerPlatform and then selecting List Environments as Admin.

9.

The environment listing call will return a list of environments and will subsequently add an Apply to each loop to your flow when you try to use data that is returned from your list.

www.dynamicscompanions.com Dynamics Companions

- 464 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Next, add the List Flows as Admin action from the Flow Management connector and pass in the Name value of the current environment that you are iterating through, in your environments loop.

10. Listing all flows within an environment will naturally return an array of flows. To address iterating through this array of flows, you will add an Apply to each loop. Within this loop, you want to check if you have any new flows in this environment. To complete this task, use the Condition action to verify if the ticks of the current flow create date are greater than the ticks value of your reporting period variable that you established earlier. As a result, verify by using an expression of ticks(item()?\['properties'\]?\['createdTime'\]) is greater than our reportingPeriodTicks variable.

www.dynamicscompanions.com Dynamics Companions

- 465 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If your flow was created before your reporting period, that is acceptable; you won't perform additional actions. If your flow was created after your reporting period, then your logic will travel down the If yes green path. 11. Perform the next steps in the process: a.

List Office 365 group members (for the group previously created) by selecting +New step, searching for the Office 365 Groups connector, and then selecting the List group members action. When this action has been added to your designer, provide a Group ID of Flow Users, the group that you created previously.

b. Get the UPN for your flow creator by passing in the Creator object ID that is returned from your Flow Management connector into the Office 365 Users connector. After you have searched for this connector, select the Get user profile (V2) action and specify your Creator object ID value from the List Flows as Admin action.

www.dynamicscompanions.com Dynamics Companions

- 466 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

12. At this point, you have a flow that has been recently created and the owner and related metadata for that flow. However, you don't know if your user exists in your Office 365 group. To verify the user's status, use a condition that will turn your Office 365 group membership into a string by using the following expression: string(body(‘List_group_members’)). Next, verify if your group contains the name of your User Principal Name (UPN). If your UPN is not in your group, you need to add them by using the Office 365 Group connector and the Add member to group action, after they have completed the orientation material. 13. If your user is not found in your list of users, start an approval process by using the Approvals connector and the Start and wait for an approval action in the If no branch of your condition.

www.dynamicscompanions.com Dynamics Companions

- 467 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

14. Set the Approval type to Approve/Reject ‐ Everyone must approve and set the Assigned to value to your Mail property from the Office 365 Users output. In addition, provide appropriate Title, Details, and Item link information that reflect the actions that you want the user to take.

www.dynamicscompanions.com Dynamics Companions

- 468 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

15. Respond to the outcome of the approval. To complete this task, add another condition by adding a new Control and then selecting the Condition action.

16. To determine if your user has acknowledged their orientation, check the Outcome attribute from the Approvals output to see if it is equal to Approve.

www.dynamicscompanions.com Dynamics Companions

- 469 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

17. You are now ready to add this user to your security group by using the Office 365 Groups connector and the Add member to group action. Within this action are a couple inputs that you need to provide, including a Group ID of Flow Users and your User Principal Name (UPN) that was returned from your Office 365 Users connector.

Your complete flow should now resemble the following example.

www.dynamicscompanions.com Dynamics Companions

- 470 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

18. Test your flow. This step will help you validate your solution because your logic is going to look for any flows that have been created in the past day. You can create a flow manually or use a template. To keep things simple, provision the Send myself a reminder in 10 minutes template. 19. You can test your Populate Flow Group flow by using the Test feature that is found in the upperright corner of the Power Automate maker portal. Depending on the number of flows in your tenant, this flow might take a few minutes to run. It should detect any new flows that have been created in the past day, and check to see if the creator of that flow is part of your Office 365 Group. If the creator of this flow is not a member of your Flow Users security group, an approval will be sent to your user who created a new flow. They will have the opportunity to review the orientation information and approve (attest) that they have reviewed the orientation information. After they have done so, their account will be added to your Flow Users group. The way that approvals work, expect that the approval response is required before the flow can continue.

www.dynamicscompanions.com Dynamics Companions

- 471 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You now have a flow that will continue to run and will look for new users who have completed their orientation and add users to your Office 365 group. In the future, if you need to communicate with these users, you can send an email to this group.

Check your knowledge 1.

2.

3.

Who can submit a flow as a template, for publication, in the Power Automate template gallery? 

Only Microsoft employees can submit templates.

Anyone can submit a template, provided that no changes have been made since the last successful run.

Only Microsoft partners can submit templates.

Only Microsoft MVPs can submit templates.

Who is the target audience for using templates from the Power Automate template gallery? 

Administrators

Information workers

People learning Power Automate

Anyone who is looking to reduce their time of deploying a working solution and solve an immediate business need

What connector can you use to connect to the Office 365 Security and Compliance API? 

PowerPlatform for Admins

HTTP

Flow Management

Office 365 for Admins

www.dynamicscompanions.com Dynamics Companions

- 472 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary In this module, you learned about templates, including who creates them, how they get published, and who can access them. You also discovered that templates can be a useful tool regardless of your role in an organization. Some people might seek to use templates to automate their Office 365 activities, but as you also discovered, templates exist that can help you manage your governance needs. Additionally, you built a flow that helps administrators manage an Office 365 group that you can use to communicate change management and governance information to your app makers.

www.dynamicscompanions.com Dynamics Companions

- 473 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Couse PL-100T08: Create and use analytics reports with Power BI This learning path introduces you to Power BI, and teaches you to use and build business intelligence reports. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Familiarity with Excel

Access to the Power BI service

Power BI Desktop

www.dynamicscompanions.com Dynamics Companions

- 474 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started building with Power BI Learn what Power BI is, including its building blocks and how they work together.

Learning Objectives In this module, you will: 

Learn how Power BI services and applications work together.

Explore how Power BI can make your business more efficient.

Learn how to create compelling visuals and reports.

Introduction Microsoft Power BI is a collection of software services, apps, and connectors that work together to turn your unrelated sources of data into coherent, visually immersive, and interactive insights. Whether your data is a simple Microsoft Excel workbook, or a collection of cloud-based and on-premises hybrid data warehouses, Power BI lets you easily connect to your data sources, visualize (or discover) what's important, and share that with anyone or everyone you want.

Power BI can be simple and fast, capable of creating quick insights from an Excel workbook or a local database. But Power BI is also robust and enterprise-grade, ready not only for extensive modeling and real-time analytics, but also for custom development. Therefore, it can be your personal report and visualization tool, but can also serve as the analytics and decision engine behind group projects, divisions, or entire corporations. If you're a beginner with Power BI, this module will get you going. If you're a Power BI veteran, this module will tie concepts together and fill in the gaps.

www.dynamicscompanions.com Dynamics Companions

- 475 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The parts of Power BI Power BI consists of a Microsoft Windows desktop application called Power BI Desktop, an online SaaS (Software as a Service) service called the Power BI service, and mobile Power BI apps that are available on any device, with native mobile BI apps for Windows, iOS, and Android.

These three elements—Desktop, the service, and Mobile apps—are designed to let people create, share, and consume business insights in the way that serves them, or their role, most effectively.

How Power BI matches your role How you use Power BI might depend on your role on a project or a team. And other people, in other roles, might use Power BI differently, which is just fine. For example, you might view reports and dashboards in the Power BI service, and that might be all you do with Power BI. But your number-crunching, business-report-creating coworker might make extensive use of Power BI Desktop (and publish Power BI Desktop reports to the Power BI service, which you then use to view them). And another coworker, in sales, might mainly use her Power BI phone app to monitor progress on her sales quotas and drill into new sales lead details. You also might use each element of Power BI at different times, depending on what you're trying to achieve, or what your role is for a given project or effort. Perhaps you view inventory and manufacturing progress in a real-time dashboard in the service, and also use Power BI Desktop to create reports for your own team about customer engagement statistics. How you use Power BI can depend on which feature or service of Power BI is the best tool for your situation. But each part of Power BI is available to you, which is why it's so flexible and compelling.

www.dynamicscompanions.com Dynamics Companions

- 476 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

We discuss these three elements—Desktop, the service, and Mobile apps—in more detail later. In upcoming units and modules, we'll also create reports in Power BI Desktop, share them in the service, and eventually drill into them on our mobile device.

Download Power BI Desktop You can download Power BI Desktop from the web or as an app from the Microsoft Store on the Windows tab. Download Strategy

Link

Notes

Windows Store App

Windows Store

Will automatically stay updated

Download from web

Download .msi

Must manually update periodically

Sign in to Power BI service Before you can sign in to Power BI, you'll need an account. To get a free trial, go to app.powerbi.com and sign up with your email address. For detailed steps on setting up an account, see Sign in to Power BI service

The flow of work in Power BI A common flow of work in Power BI begins in Power BI Desktop, where a report is created. That report is then published to the Power BI service and finally shared, so that users of Power BI Mobile apps can consume the information. It doesn't always happen that way, and that's okay. But we'll use that flow to help you learn the different parts of Power BI and how they complement each other. Okay, now that we have an overview of this module, what Power BI is, and its three main elements, let's take a look at what it's like to use Power BI.

Use Power BI Now that we've introduced the basics of Microsoft Power BI, let's jump into some hands-on experiences and a guided tour. The activities and analyses that you'll learn with Power BI generally follow a common flow. The common flow of activity looks like this: 1.

Bring data into Power BI Desktop, and create a report.

2.

Publish to the Power BI service, where you can create new visualizations or build dashboards.

www.dynamicscompanions.com Dynamics Companions

- 477 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

Share dashboards with others, especially people who are on the go.

4.

View and interact with shared dashboards and reports in Power BI Mobile apps.

As mentioned earlier, you might spend all your time in the Power BI service, viewing visuals and reports that have been created by others. And that's fine. Someone else on your team might spend their time in Power BI Desktop, which is fine too. To help you understand the full continuum of Power BI and what it can do, we'll show you all of it. Then you can decide how to use it to your best advantage. So, let's jump in and step through the experience. Your first order of business is to learn the basic building blocks of Power BI, which will provide a solid basis for turning data into cool reports and visuals.

Building blocks of Power BI Everything you do in Microsoft Power BI can be broken down into a few basic building blocks. After you understand these building blocks, you can expand on each of them and begin creating elaborate and complex reports. After all, even seemingly complex things are built from basic building blocks. For example, buildings are created with wood, steel, concrete and glass, and cars are made from metal, fabric, and rubber. Of course, buildings and cars can also be basic or elaborate, depending on how those basic building blocks are arranged. Let's take a look at these basic building blocks, discuss some simple things that can be built with them, and then get a glimpse into how complex things can also be created. Here are the basic building blocks in Power BI:

www.dynamicscompanions.com Dynamics Companions

- 478 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Visualizations

Datasets

Reports

Dashboards

Tiles

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Visualizations A visualization (sometimes also referred to as a visual) is a visual representation of data, like a chart, a color-coded map, or other interesting things you can create to represent your data visually. Power BI has all sorts of visualization types, and more are coming all the time. The following image shows a collection of different visualizations that were created in the Power BI service.

Visualizations can be simple, like a single number that represents something significant, or they can be visually complex, like a gradient-colored map that shows voter sentiment about a certain social issue or concern. The goal of a visual is to present data in a way that provides context and insights, both of which would probably be difficult to discern from a raw table of numbers or text.

www.dynamicscompanions.com Dynamics Companions

- 479 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Datasets A dataset is a collection of data that Power BI uses to create its visualizations. You can have a simple dataset that's based on a single table from a Microsoft Excel workbook, similar to what's shown in the following image.

Datasets can also be a combination of many different sources, which you can filter and combine to provide a unique collection of data (a dataset) for use in Power BI. For example, you can create a dataset from three database fields, one website table, an Excel table, and online results of an email marketing campaign. That unique combination is still considered a single dataset, even though it was pulled together from many different sources. Filtering data before bringing it into Power BI lets you focus on the data that matters to you. For example, you can filter your contact database so that only customers who received emails from the marketing campaign are included in the dataset. You can then create visuals based on that subset (the filtered collection) of customers who were included in the campaign. Filtering helps you focus your data—and your efforts. An important and enabling part of Power BI is the multitude of data connectors that are included. Whether the data you want is in Excel or a Microsoft SQL Server database, in Azure or Oracle, or in a service like Facebook, Salesforce, or MailChimp, Power BI has built-in data connectors that let you easily connect to that data, filter it if necessary, and bring it into your dataset.

www.dynamicscompanions.com Dynamics Companions

- 480 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you have a dataset, you can begin creating visualizations that show different portions of it in different ways, and gain insights based on what you see. That's where reports come in.

Reports In Power BI, a report is a collection of visualizations that appear together on one or more pages. Just like any other report you might create for a sales presentation or write for a school assignment, a report in Power BI is a collection of items that are related to each other. The following image shows a report in Power BI Desktop—in this case, it's the second page in a five-page report. You can also create reports in the Power BI service.

Reports let you create many visualizations, on multiple pages if necessary, and let you arrange those visualizations in whatever way best tells your story. You might have a report about quarterly sales, product growth in a particular segment, or migration patterns of polar bears. Whatever your subject, reports let you gather and organize your visualizations onto one page (or more).

Dashboards When you're ready to share a single page from a report, or a collection of visualizations, you create a dashboard. Much like the dashboard in a car, a Power BI dashboard is a collection of visuals from a single

www.dynamicscompanions.com Dynamics Companions

- 481 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

page that you can share with others. Often, it's a selected group of visuals that provide quick insight into the data or story you're trying to present. A dashboard must fit on a single page, often called a canvas (the canvas is the blank backdrop in Power BI Desktop or the service, where you put visualizations). Think of it like the canvas that an artist or painter uses—a workspace where you create, combine, and rework interesting and compelling visuals. You can share dashboards with other users or groups, who can then interact with your dashboards when they're in the Power BI service or on their mobile device.

Tiles In Power BI, a tile is a single visualization on a report or a dashboard. It's the rectangular box that holds an individual visual. In the following image, you see one tile, which is also surrounded by other tiles.

When you're creating a report or a dashboard in Power BI, you can move or arrange tiles however you want. You can make them bigger, change their height or width, and snuggle them up to other tiles. When you're viewing, or consuming, a dashboard or report—which means you're not the creator or owner, but the report or dashboard has been shared with you—you can interact with it, but you can't change the size of the tiles or their arrangement.

www.dynamicscompanions.com Dynamics Companions

- 482 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

All together now Those are the basics of Power BI and its building blocks. Let's take a moment to review. Power BI is a collection of services, apps, and connectors that lets you connect to your data, wherever it happens to reside, filter it if necessary, and then bring it into Power BI to create compelling visualizations that you can share with others. Now that you've learned about the handful of basic building blocks of Power BI, it should be clear that you can create datasets that make sense to you and create visually compelling reports that tell your story. Stories told with Power BI don't have to be complex, or complicated, to be compelling. For some people, using a single Excel table in a dataset and then sharing a dashboard with their team will be an incredibly valuable way to use Power BI. For others, the value of Power BI will be in using real-time Azure SQL Data Warehouse tables that combine with other databases and real-time sources to build a moment-by-moment dataset. For both groups, the process is the same: create datasets, build compelling visuals, and share them with others. And the result is also the same for both groups: harness your ever-expanding world of data, and turn it into actionable insights. Whether your data insights require straightforward or complex datasets, Power BI helps you get started quickly and can expand with your needs to be as complex as your world of data requires. And because Power BI is a Microsoft product, you can count on it being robust, extensible, Microsoft Office–friendly, and enterprise-ready. Now let's see how this works. We'll start by taking a quick look at the Power BI service.

Tour and use the Power BI service As we learned in the previous unit, the common flow of work in Microsoft Power BI is to create a report in Power BI Desktop, publish it to the Power BI service, and then share it with others, so that they can view it in the service or on a mobile app. But because some people begin in the Power BI service, let's take a quick look at that first, and learn about an easy and popular way to quickly create visuals in Power BI: apps. An app is a collection of preset, ready-made visuals and reports that are shared with an entire organization. Using an app is like microwaving a TV dinner or ordering a fast-food value meal: you just have to press a few buttons or make a few comments, and you're quickly served a collection of entrees designed to go together, all presented in a tidy, ready-to-consume package. So, let's take a quick look at apps, the service, and how it works. We'll go into more detail about apps (and the service) in upcoming modules, but you can think of this as a taste to whet your appetite. You can sign into the service at https://powerbi.microsoft.com.

www.dynamicscompanions.com Dynamics Companions

- 483 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create out-of-box dashboards with cloud services With Power BI, connecting to data is easy. From the Power BI service, you can just select the Get Data button in the lower-left corner of the home page.

The canvas (the area in the center of the Power BI service) shows you the available sources of data in the Power BI service. In addition to common data sources like Microsoft Excel files, databases, or Microsoft Azure data, Power BI can just as easily connect to a whole assortment of software services (also called SaaS providers or cloud services): Salesforce, Facebook, Google Analytics, and more.

www.dynamicscompanions.com Dynamics Companions

- 484 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For these software services, the Power BI service provides a collection of ready-made visuals that are prearranged on dashboards and reports for your organization. This collection of visuals is called an app. Apps get you up and running quickly, with data and dashboards that your organization has created for you. For example, when you use the GitHub app, Power BI connects to your GitHub account (after you provide your credentials) and then populates a predefined collection of visuals and dashboards in Power BI. There are apps for all sorts of online services. The following image shows a page of apps that are available for different online services, in alphabetical order. This page is shown when you select the Get button in the Services box (shown in the previous image). As you can see from the following image, there are many apps to choose from.

www.dynamicscompanions.com Dynamics Companions

- 485 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For our purposes, we'll choose GitHub. GitHub is an application for online source control. When you select the Get it now button in the box for the GitHub app, the Connect to GitHub dialog box appears. Note that Github does not support Internet Explorer, so make sure you are working in another browser.

www.dynamicscompanions.com Dynamics Companions

- 486 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you enter the information and credentials for the GitHub app, installation of the app begins.

After the data is loaded, the predefined GitHub app dashboard appears.

In addition to the app dashboard, the report that was generated (as part of the GitHub app) and used to create the dashboard is available, as is the dataset (the collection of data pulled from GitHub) that was created during data import and used to create the GitHub report.

www.dynamicscompanions.com Dynamics Companions

- 487 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

On the dashboard, you can select any of the visuals and interact with them. As you do so, all the other visuals on the page will respond. For example, when the May 2018 bar is selected in the Pull Requests (by month) visual, the other visuals on the page adjust to reflect that selection.

www.dynamicscompanions.com Dynamics Companions

- 488 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Update data in the Power BI service You can also choose to update the dataset for an app, or other data that you use in Power BI. To set update settings, select the schedule update icon for the dataset to update, and then use the menu that appears. You can also select the update icon (the circle with an arrow) next to the schedule update icon to update the dataset immediately.

The Datasets tab is selected on the Settings page that appears. In the right pane, select the arrow next to Scheduled refresh to expand that section. The Settings dialog box appears on the canvas, letting you set the update settings that meet your needs.

www.dynamicscompanions.com Dynamics Companions

- 489 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

That's enough for our quick look at the Power BI service. There are many more things you can do with the service, and we'll cover these later in this module and in upcoming modules. Also, remember that there are many types of data you can connect to, and all sorts of apps, with more of both coming all the time.

Check your knowledge 1.

2.

What is the common flow of activity in Power BI? 

Create a report in Power BI mobile, share it to the Power BI Desktop, view and interact in the Power BI service.

Create a report in the Power BI service, share it to Power BI mobile, interact with it in Power BI Desktop.

Bring data into Power BI Desktop and create a report, share it to the Power BI service, view and interact with reports and dashboards in the service and Power BI mobile.

Bring data into Power BI mobile, create a report, then share it to Power BI Desktop.

Which of the following are building blocks of Power BI? 

Tiles, dashboards, databases, mobile devices.

Visualizations, datasets, reports, dashboards, tiles.

Visual Studio, C#, and JSON files.

www.dynamicscompanions.com Dynamics Companions

- 490 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

A collection of ready-made visuals, pre-arranged in dashboards and reports is called what in Power BI? 

The canvas.

Scheduled refresh.

An app.

Summary Let's do a quick review of what we covered in this module. Microsoft Power BI is a collection of software services, apps, and connectors that work together to turn your data into interactive insights. You can use data from single basic sources, like a Microsoft Excel workbook, or pull in data from multiple databases and cloud sources to create complex datasets and reports. Power BI can be as straightforward as you want or as enterprise-ready as your complex global business requires. Power BI consists of three main elements—Power BI Desktop, the Power BI service, and Power BI Mobile— which work together to let you create, interact with, share, and consume your data the way you want.

We also discussed the basic building blocks in Power BI: 

Visualizations – A visual representation of data, sometimes just called visuals

Datasets – A collection of data that Power BI uses to create visualizations

Reports – A collection of visuals from a dataset, spanning one or more pages

Dashboards – A single-page collection of visuals built from a report

Tiles – A single visualization on a report or dashboard

www.dynamicscompanions.com Dynamics Companions

- 491 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Power BI service, we installed an app in just a few clicks. That app, a ready-made collection of visuals and reports, let us easily connect to a software service to populate the app and bring that data to life. Finally, we set up a refresh schedule for our data, so that we know the data will be fresh when we go back to the Power BI service.

Next steps Congratulations! You've finished the first module of the learning path for Power BI. You now have a firm foundation of knowledge for when you move on to the next module, which walks through the steps to create your first report. We mentioned this before, but it's worth restating: this learning path builds your knowledge by following the common flow of work in Power BI: 

Bring data into Power BI Desktop, and create a report.

Publish to the Power BI service, where you create new visualizations or build dashboards.

Share your dashboards with others, especially people who are on the go.

View and interact with shared dashboards and reports in Power BI Mobile apps.

You might not do all that work yourself—some people will only view dashboards that were created by someone else, and they'll just use the service. That's fine, and we'll soon have a module dedicated to showing how you can easily navigate and use the Power BI service to view and interact with reports and apps.

www.dynamicscompanions.com Dynamics Companions

- 492 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

But the next module follows the flow of work in Power BI, showing you how to create a report and publish it to the Power BI service. You'll learn how those reports and dashboards are created and how they connected to the data. You might even decide to create a report or dashboard of your own. See you in the next module!

www.dynamicscompanions.com Dynamics Companions

- 493 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get data with Power BI Desktop How can you find, collect, and clean data from different sources? Power BI is a tool for making sense of your data. You will learn tricks to make data-gathering easier.

Learning Objectives In this module, you will: 

Explore the data-centric features and tools of Power BI.

Explore ways to find data.

Prerequisites Access to Power BI Desktop

Overview of Power BI Desktop Power BI Desktop is a free application for PCs that lets you gather, transform, and visualize your data. In this module, you'll learn how to find and collect data from different sources and how to clean or transform it. You'll also learn tricks to make data-gathering easier. Power BI Desktop and the Power BI Service work together. You can create your reports and dashboards in Power BI Desktop, and then publish them to the Power BI Service for others to consume. The following are the tasks that you will complete in this module:

To perform the exercises in this module, you’ll need to have Power BI desktop installed and have a Power BI Service account set up.

www.dynamicscompanions.com Dynamics Companions

- 494 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Download Power BI Desktop You can download Power BI Desktop from the web or as an app from the Microsoft Store on the Windows tab. Download Strategy

Link

Notes

Windows Store App

Windows Store

Will automatically stay updated

Download from web

Download .msi

Must manually update periodically

Sign in to Power BI service Before you can sign in to Power BI, you'll need an account. To get a free trial, go to app.powerbi.com and sign up with your email address. For detailed steps on setting up an account, see Sign in to Power BI service.

Download sample data To follow along with the examples in the videos and on the pages, download the sample Excel workbook here and import into Power BI Desktop (Get Data > Excel).

Explore Power BI Desktop The idea of building and sharing reports is an abstract concept. It will make more sense if you explore Power BI Desktop hands-on. The first step is to launch and explore the user interface (UI). In this unit, you will: 

Launch the Power BI Desktop.

Explore the UI.

www.dynamicscompanions.com Dynamics Companions

- 495 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Excel workbook here and import into Power BI Desktop (Get Data > Excel) if you haven't already.

Launch Power BI Desktop When you launch Power BI Desktop, the Getting Started dialog box will appear, which provides useful links to forums, blogs, and introductory videos. Close this dialog box for now, but keep the Show this screen on startup option selected so that you can explore it later.

Explore the report building environment In Power BI Desktop, you'll begin to build reports in the Report view. You'll be working in five main areas:

www.dynamicscompanions.com Dynamics Companions

- 496 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

Ribbon - Displays common tasks that are associated with reports and visualizations.

2.

Report view, or canvas - Where visualizations are created and arranged. You can switch between Report, Data, and Model views by selecting the icons in the left column.

3.

Pages tab - Located along the bottom of the page, this area is where you would select or add a report page.

4.

Visualizations pane - Where you can change visualizations, customize colors or axes, apply filters, drag fields, and more.

5.

Fields pane - Where query elements and filters can be dragged onto the Report view or dragged to the Filters area of the Visualizations pane.

Tip You can collapse the Visualizations and Fields panes to provide more space in the Report view by selecting the small arrow, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 497 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create a visual To create a visual, drag a field from the Fields list onto the Report view.

For example, Power BI Desktop automatically created a map-based visualization because it recognized that the State field contained geolocation data. (Note that screenshot examples come from a variey of datasets.)

Publish a report After creating a report with a few visuals, you're ready to publish to the Power BI service. On the Home ribbon on the Power BI Desktop, select Publish.

www.dynamicscompanions.com Dynamics Companions

- 498 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You’ll be prompted to sign in to Power BI. When you've signed in and the publish process is complete, the following dialog box will appear. You can select the link below Success!, which will take you to the Power BI service, where you can see the report that you published.

Pin a visual to a dashboard When you view a published report in the Power BI service, you can choose the Pin icon to pin that visual to a dashboard.

www.dynamicscompanions.com Dynamics Companions

- 499 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can choose whether to pin the visual to an existing dashboard or to create a new dashboard. For more information, see Report View in Power BI Desktop .

Connect to data sources Power BI Desktop connects to many types of data sources, including local databases, worksheets, and data on cloud services. Sometimes when you gather data, it's not quite as structured, or clean, as you want it to be. To structure data, you can transform it, meaning that you can split and rename columns, change data types, and create relationships between columns. In this unit, you will: 

Connect to data.

Import data into Power BI Desktop.

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article. You can connect Power BI Desktop to many types of data sources, including on-premises databases, Microsoft Excel workbooks, and cloud services. Currently, there are about 60 Power BI-specific connectors to cloud services such as GitHub and Marketo. You can also connect to generic sources through XML, CSV, text, and ODBC. Power BI will even extract tabular data directly from a website URL.

Connect to data When you start Power BI Desktop, you can choose Get Data from the ribbon on the Home tab.

www.dynamicscompanions.com Dynamics Companions

- 500 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In Power BI Desktop, several types of data sources are available. Select a source to establish a connection. Depending on your selection, you'll be asked to find the source on your computer or network. You might be prompted to sign in to a service to authenticate your request.

Choose data to import After connecting, the first window that you'll see is the Navigator. The Navigator window displays the tables or entities of your data source, and selecting a table or entity gives you a preview of its contents. You can then import your selected tables or entities immediately by selecting Load, or you can select Transform Data to transform and clean your data before importing.

www.dynamicscompanions.com Dynamics Companions

- 501 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you've selected the tables that you'd like to bring into Power BI Desktop, select the Load button. You might want to make changes to those tables before you load them. For example, if you only want a subset of customers or a specific country or region, select the Edit button and filter data before loading.

No matter what type of data you need, you're likely to find a way to import it into Power BI Desktop.

Get data from Excel Likely, you've used Microsoft Excel to create or view reports or to build pie charts or other visuals. Getting your Excel data into Power BI is a straightforward process. In this unit, you will bring Excel workbooks into Power BI.

www.dynamicscompanions.com Dynamics Companions

- 502 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the example in this video, download the sample Excel workbook here. This unit explains how you can import an Excel workbook file that contains a simple table from a local drive into Power BI. You'll then learn how to begin exploring that table's data in Power BI by creating a report.

Note Up until now, we've been importing data through Power BI Desktop. This unit page is done from the Power BI service.

Make sure that your data is formatted as a table For Power BI to import data from your workbook, that data needs to be formatted as a table. In Excel, you can highlight a range of cells, and then on the Insert tab of the Excel ribbon, select Table.

Make sure that each column has a good name; it will make it easier for you to find the data that you want when creating your reports in Power BI.

www.dynamicscompanions.com Dynamics Companions

- 503 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Import from a local drive Wherever you keep your files, Power BI makes importing them simple. In Power BI, you can go to Get Data > Files > Local File to select the Excel file that you want.

After the file has been imported into Power BI, you can begin creating reports. Your files don't have to be on a local drive. If you save your files on OneDrive or SharePoint Team Site, that's even better.

Create reports After your workbook's data has been imported, a dataset is created in Power BI and it will appear under Datasets.

Now, you can begin exploring your data by creating reports and dashboards. Select the Open menu icon next to the dataset and then select Explore. A new blank report canvas appears. On the right-hand side, under Fields, are your tables and columns. Select the fields for which you want to create a new visualization on the canvas.

www.dynamicscompanions.com Dynamics Companions

- 504 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can change the type of visualization and apply filters and other properties under Visualizations. If you use any of Excel's advanced BI features like Power Query, Power Pivot, or Power View, you can import that data into Power BI, too. For more information, see Get data from Excel workbook files.

Transform data to include in a report Sometimes, your data might contain extra data or have data in the wrong format. Power BI Desktop includes the Power Query Editor tool, which can help you shape and transform data so that it's ready for your models and visualizations. In this unit, you will transform data with Power Query Editor.

www.dynamicscompanions.com Dynamics Companions

- 505 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article.

Launch Power Query Editor To begin, select Edit from the Navigator window to launch Power Query Editor. You can also launch Power Query Editor directly from Power BI Desktop by using the Edit Queries button on the Home ribbon.

After loading your data into Power Query Editor, you'll see the following screen.

1.

In the ribbon, the active buttons enable you to interact with the data in the query.

2.

On the left pane, queries (one for each table, or entity) are listed and available for selecting, viewing, and shaping.

3.

On the center pane, data from the selected query is displayed and available for shaping.

4.

The Query Settings window lists the query’s properties and applied steps.

www.dynamicscompanions.com Dynamics Companions

- 506 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Transform data On the center pane, right-clicking a column displays the available transformations. Examples of the available transformations include removing a column from the table, duplicating the column under a new name, or replacing values. From this menu, you can also split text columns into multiples by common delimiters.

The Power Query Editor ribbon contains additional tools that can help you change the data type of columns, add scientific notation, or extract elements from dates, such as day of the week.

Tip If you make a mistake, you can undo any step from the Applied Steps list. As you apply transformations, each step appears in the Applied Steps list on the Query Settings pane. You can use this list to undo or review specific changes, or even change the name of a step. To save your transformations, select Close & Apply on the Home tab.

www.dynamicscompanions.com Dynamics Companions

- 507 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you select Close & Apply, Power Query Editor applies the query changes and applies them to Power BI Desktop. For more information, see Quickstart: Using Power Query in Power BI Desktop .

Combine data from multiple sources With Power BI Desktop, you can use the Power Query Editor tool to combine data from multiple sources into a single report. In this unit, you will combine data from different sources by using Query Editor.

www.dynamicscompanions.com Dynamics Companions

- 508 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). The FactData1 folder is here. If you have any issues loading the Access database, please read this article.

Add more data sources To add more sources to an existing report, from the Home ribbon, select Edit Queries and then select New Source. You can use many potential data sources in Power BI Desktop, including folders. By connecting to a folder, you can import data from multiple Excel or CSV files at once. Power Query Editor allows you to apply filters to your data. For example, selecting the drop-down arrow next to a column opens a checklist of text filters. Clearing a filter allows you to remove values from your model before the data is loaded into Power BI.

Important Filtering in the Power Query Editor changes which data is loaded into Power BI. Later, when you apply filters in the Data View or Report View, those filters only apply to what you see in visuals but do not change the underlying dataset.

Merge and append queries You can also merge and append queries. In other words, Power BI pulls data that you select from multiple tables or various files into a single table. Use the Append Queries tool to add the data from a new table to an existing query. Power BI Desktop attempts to match the columns in your queries, which you can then adjust as necessary in Power Query Editor.

www.dynamicscompanions.com Dynamics Companions

- 509 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Write customized queries You can use the Add Custom Column tool to write new customized query expressions by using the powerful M language.

For more information, see Tutorial: Shape and combine data in Power BI Desktop .

Clean data to include in a report While Power BI can import your data from almost any source, its visualization and modeling tools work best with columnar data. Sometimes, your data won't be formatted in simple columns, which is often the case with Excel spreadsheets. In this unit, you will clean columnar data with Power Query Editor.

Note To follow along with the Excel spreadsheet in this video, download the .xlsx here.

www.dynamicscompanions.com Dynamics Companions

- 510 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

A table layout that looks good to the human eye might not be optimal for automated queries. For example, the following spreadsheet has headers that span multiple columns.

Clean data Fortunately, Power Query Editor has tools to help you quickly transform multi-column tables into datasets that you can use.

Transpose data By using Transpose in Power Query Editor, you can swap rows into columns to better format the data.

Format data You might need to format data so that Power BI can properly categorize and identify that data. With some transformations, you'll cleanse data into a dataset that you can use in Power BI. Examples of powerful transformations include promoting rows into headers, using Fill to replace null values, and Unpivot Columns. With Power BI, you can experiment with transformations and determine which will transform your data into the most usable columnar format. Remember, the Applied Steps section of Power Query Editor

www.dynamicscompanions.com Dynamics Companions

- 511 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

records all your actions. If a transformation doesn't work the way that you intended, select the X next to the step, and then undo it.

After you've cleaned your data into a usable format, you can begin to create powerful visuals in Power BI. For more information, see Tutorial: Combine sales data from Excel and an OData feed .

Check your knowledge 1.

2.

3.

Which tool would you use to extract the day of the week from a set of dates? 

Navigator view

Power Query editor

New Measure

New Parameter

What is one method for creating a visual? 

Drag a field from the Fields list onto the Visualizations pane

Drag a field from the Fields list onto the Model view canvas

Drag a field from the Fields list onto the Report view canvas

Drag a field from the Fields list onto the Data view canvas

What is the best way to import tabular data from a website into Power BI? 

Download data from the website and then import to Power BI

Transfer data from the website to OneDrive and then import to Power BI

Select Get Data and point to the URL

Use the Query Editor to find and edit the web-based data

www.dynamicscompanions.com Dynamics Companions

- 512 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Summary Congratulations, you now know how to get data into Power BI Desktop and how to shape or transform that data so you can create compelling visuals.

www.dynamicscompanions.com Dynamics Companions

- 513 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Model data in Power BI Connect Power BI to multiple data sources to create reports. Define the relationship between your data sources.

Learning Objectives In this module, you will: 

Create relationships between your data sources

Create a new field with calculated columns

Optimize data by hiding fields and sorting visualization data

Create a measure to perform calculations on your data

Use a calculated table to create a relationship between two tables

Format time-based data so that you can drill down for more details

Prerequisites Access to Power BI Desktop

Introduction to modeling your data Often, you'll connect to multiple data sources to create your reports. All that data needs to work together to create a cohesive report. Modeling is how to get your connected data ready for use. Tasks in this module: 

Create relationships between your data sources

Create a new field with calculated columns

Optimize data by hiding fields and sorting visualization data

Create a measure to perform calculations on your data

Use a calculated table to create a relationship between two tables

Format time-based data so that you can drill down for more details

www.dynamicscompanions.com Dynamics Companions

- 514 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In Power BI, you can create a relationship to create a logical connection between different data sources. A relationship enables Power BI to connect tables to one another so that you can create visuals and reports. This module describes data-centric relationships and how to create relationships when none exists.

Note One of Power BI's strengths is that you don't need to flatten your data into a single table. Instead, you can use multiple tables from multiple sources and define the relationship between them. You'll also create your own custom calculations and assign new metrics to view specific segments of your data.

How to manage your data relationships The Model view in Power BI Desktop allows you to visually set the relationship between tables or elements. A relationship is where two or more tables are linked together because they contain related data. This enables users to run queries for related data across multiple tables.Use the Model view to see a diagrammatic view of your data. Tasks in this unit include:

www.dynamicscompanions.com Dynamics Companions

- 515 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article. In the Model view, notice that a block represents each table and its columns and that lines between them represent relationships.

Adding and removing relationships is straightforward. To remove a relationship, right-click the relationship and select Delete. To create a relationship, drag and drop the fields that you want to link between tables.

www.dynamicscompanions.com Dynamics Companions

- 516 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To hide a table or individual column from your report, right-click the table or column in the Model view and select Hide in report view.

For a more detailed view of your data relationships, on the Home tab, select Manage Relationships. The Manage Relationships dialog box displays your relationships as a list instead of as a visual diagram. From the dialog box, you can select Autodetect to find relationships in new or updated data. Select Edit to manually edit your relationships. You'll find advanced options in the Edit section to set the Cardinality and Cross-filter direction of your relationships.

www.dynamicscompanions.com Dynamics Companions

- 517 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Your options for Cardinality are explained in the following table. Cardinality Example options Many to One

The most common default relationship. The column in one table can have more than one instance of a value. The related table (or lookup table) has only one instance of a value.

One to One The column in one table has only one instance of a particular value, and the other related table has only one instance of a particular value. By default, you will set relationships to cross-filter in both directions. Cross-filtering in just one direction limits some of the modeling capabilities in a relationship. Setting accurate relationships between your data allows you to create complex calculations across multiple data elements. For more information, see: Create and manage relationships in Power BI Desktop .

www.dynamicscompanions.com Dynamics Companions

- 518 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create calculated columns Sometimes, the data that you're analyzing doesn't contain a field that you need. The answer might be calculated columns. You can create a new calculated column by transforming two or more elements of existing data. For example, you can create a new column by combining two columns into one. Tasks in this unit include:

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article. One reason for creating a calculated column is to establish a relationship between tables when no unique fields exist. The lack of a relationship becomes obvious when you create a simple table visual in Power BI Desktop and get the same value for all entries.

www.dynamicscompanions.com Dynamics Companions

- 519 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For example, to create a relationship with unique fields in data, you can create a new calculated column for "CountryZip" by combining the values from the Country and the Zip columns. To create a calculated column, select the Data view in Power BI Desktop from the left side of the report canvas.

www.dynamicscompanions.com Dynamics Companions

- 520 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

From the Modeling tab, select New Column to enable the formula bar. You can enter calculations by using Data Analysis Expressions (DAX) language. DAX is a powerful formula language, also found in Excel, that lets you build robust calculations. As you type a formula, Power BI Desktop displays matching formulas or data elements to assist and accelerate the creation of your formula. The Power BI formula bar will suggest specific DAX functions and related data columns as you enter your expression.

After you have created the calculated columns in each table, they can be used as a unique key to establish a relationship between them. By going to the Relationship view, you can then drag the field from one table to the other to create the relationship.

When you return to the Report view, notice that a different value for each district shows.

www.dynamicscompanions.com Dynamics Companions

- 521 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For more information on calculated columns, including the use of IF statements, see Tutorial: Create calculated columns in Power BI Desktop .

Optimize data models Imported data often contains fields that you don't need for your reporting and visualization tasks. Data might contain unnecessary information or it might be available in another column. Power BI Desktop has tools to optimize your data and make it more usable for building reports and visuals. Tasks in this module include:

www.dynamicscompanions.com Dynamics Companions

- 522 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article.

Hide fields To hide a field in the Fields pane of Power BI Desktop, right-click the column and select Hide. Your hidden fields aren't deleted. If you've used a hidden field in existing visuals, the data is still there; the hidden field just isn't displayed on the Fields pane.

www.dynamicscompanions.com Dynamics Companions

- 523 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you view tables in the Model view, hidden fields appear dimmed. The data in these tables is still available and is still part of the model. You can unhide any field that has been hidden by right-clicking the field and then selecting unhide.

Sort visualization data by another field The Sort by Column tool, available on the Modeling tab, is useful to help ensure that your data is displayed in the order that you intended.

www.dynamicscompanions.com Dynamics Companions

- 524 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

As a common example, data that includes the name of the month is sorted alphabetically by default, for example, August would appear before February.

In this case, selecting the field in the Fields list, selecting Sort by Column from the Modeling tab, and then choosing a field to sort by can remedy the problem. The MonthNo category sort option will order the months as intended.

www.dynamicscompanions.com Dynamics Companions

- 525 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Setting the data type for a field is another way to optimize your information so that it's handled correctly. To change a data type from the report canvas, select the column in the Fields pane, and then use the Format drop-down menu to select one of the formatting options. Any visuals you've created that display that field are updated automatically. For more information, see Sort by column in Power BI Desktop .

Create measures In Power BI, measures are defined calculations on your data that are performed at the time of your query. Measures are calculated as you interact with your reports and aren't stored in your database. Tasks in this unit include:

www.dynamicscompanions.com Dynamics Companions

- 526 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article.

Create a measure To create a measure, in Report view, select New Measure from the Modeling tab.

From the Formula bar, you can enter the DAX expression that defines your measure. As you enter your calculation, Power BI suggests relevant DAX functions and data fields. You'll also receive a tooltip that explains some of the syntax and function parameters.

If your calculation is long, you can add extra line breaks in the Expression Editor by typing ALT‐Enter.

www.dynamicscompanions.com Dynamics Companions

- 527 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Apply a measure After you've created a new measure, it will appear in one of the tables on the Fields pane, which is found on the right side of the screen. Power BI inserts the new measure into whichever table you have currently selected. While it doesn't matter, exactly, where the measure is located in your data, you can easily move it by selecting the measure and using the Home Table drop-down menu.

You can use a measure like any other table column: just drag and drop it onto the report canvas or visualization fields. Measures also integrate seamlessly with slicers, segmenting your data on the fly, which means that you can define a measure once and then use it in many different visualizations. For more information, see Tutorial: Create your own measures in Power BI Desktop .

Create calculated tables Calculated tables is a function within DAX. Most of the time, you can import data into your model from an external data source. However, calculated tables provide intermediate calculations and data that you want stored as part of the model rather than as part of a query. You can use calculated tables, for example, to cross join two tables.

www.dynamicscompanions.com Dynamics Companions

- 528 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tasks in this unit include:

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article. To create a calculated table, go to Data view in Power BI Desktop, which you can activate from the left side of the report canvas. Select New Table from the Modeling tab to open the formula bar. Type the name of your new table, the equal sign, and the calculation that you want to use to form the table. Your new table will appear on the Fields pane in your model.

After the new table has been created, you can use your calculated table as you would any other table in relationships, formulas, and reports. For more information, see: Using calculated tables in Power BI Desktop .

www.dynamicscompanions.com Dynamics Companions

- 529 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Explore time-based data Analyzing time-based data with Power BI is a simple process. The modeling tools in Power BI Desktop automatically generate fields that let you drill down through time periods. Tasks in this unit include:

Note To follow along with the examples in the videos and on this page, download the sample Access database here and import into Power BI Desktop (Get Data > Database > Access database). If you have any issues loading the Access database, please read this article. When you create a table visualization in your report by using a date field, Power BI Desktop automatically includes breakdowns by time period. For example, the single date field in the Date table was automatically separated into Year, Quarter, Month, and Day by Power BI.

www.dynamicscompanions.com Dynamics Companions

- 530 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Visuals display data at the year level by default, but you can change that by turning on Drill Down in the top, right-hand corner of the visual.

When you select the bars or lines in your chart, the system will drill down to the next level of time hierarchy, for example, from years to quarters. You can continue to drill down until you reach the most granular level of the hierarchy: days. To move back up through the time hierarchy, select Drill Up in the top, left-hand corner of the visual.

You can also drill down through all the data that is shown on the visual instead of through one selected period. To do so, use the Go to the next level in the hierarchy double-arrow icon.

www.dynamicscompanions.com Dynamics Companions

- 531 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

As long as your model has a date field, Power BI will automatically generate different views for different time hierarchies.

Check your knowledge 1.

2.

3.

4.

5.

How do you get Power BI Desktop to find relationships in data after it has been imported? 

Open the Power Query Editor

Select Manage Relationships and then Autodetect

Select the New Parameter button to map the relationship

Use the Performance Manager

If your months were sorted alphabetically, how could you sort them by month order? 

Click the Edit Queries button

Add a slicer to your visual

Change the visualization type

Apply the MonthNo category sort option

How do you get Power BI to separate date data into year, quarter, month, and day? 

Open the Query Editor

Select the New Parameter button

Select the New Measure button

You don't need to do anything, it is automatic.

How do you create intermediate calculations and data that you want stored as part of the model rather than as part of a query? 

Use a calculated table

Select the Enter Data button

Select the New Measure button

Select the New Parameter button

Why would a table show the same value, like "Sales", for every country? 

Because the Revenue data is corrupted

Because the column is assigned with the wrong data type www.dynamicscompanions.com Dynamics Companions

- 532 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Because there is no relationship between the Sales and Country fields.

Because the column is sorted incorrectly

Summary Congratulations. In this module, you learned how to create relationships between your data sources and optimize data. These skills will help you pull clean data from several different sources.

www.dynamicscompanions.com Dynamics Companions

- 533 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use visuals in Power BI Create and customize visuals to present data in compelling and insightful ways.

Learning Objectives In this module, you will: 

Explore Power BI visuals

Create visuals

Prerequisites Access to Power BI Desktop

Introduction to visuals in Power BI Visuals allow you to present data in a compelling and insightful way, and help you show the important components of it. Power BI has many compelling visuals and many more that are released frequently. The following are the tasks that you'll complete in this module: 

Explore Power BI visuals

Create visuals

This unit begins with the mainstays of visualizations, the simple visuals that everyone's familiar with, to make sure that you know the particulars of them. The rest of the module will provide more advanced, or at least less common, details to enhance your report-creating knowledge.

www.dynamicscompanions.com Dynamics Companions

- 534 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Visualizing data is one of the core parts and basic building blocks of Power BI. Creating visuals is one of the most effective ways to find and share your insights. You'll discover a wide variety of visualizations in Power BI, which offers features such as simple bar charts, pie charts, maps, and more esoteric offerings like waterfalls, funnels, and gauges. Power BI Desktop also offers extensive page formatting tools, such as shapes and images, that help bring your report to life.

Create and customize simple visualizations This unit explains how to create new bar charts, pie charts, and tree maps, and how to customize these elements to suit your reports. Two ways to create a new visualization in Power BI Desktop are: 

Drag field names from the Fields pane and then drop them on the report canvas. By default, your visualization appears as a table of data.

www.dynamicscompanions.com Dynamics Companions

- 535 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Visualizations pane, select the type of visualization that you want to create. With this method, the default visual is a blank placeholder that resembles the type of visual that you selected.

After you have created your graph, map, or chart, you can begin dragging data fields onto the bottom portion of the Visualization pane to build and organize your visual. The available fields will change based on the type of visualization that you selected. As you drag and drop data fields, your visualization will automatically update to reflect changes.

www.dynamicscompanions.com Dynamics Companions

- 536 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can resize your visual by selecting it and then dragging the handles in or out. You can also move your visualization anywhere on the canvas by selecting and then dragging it to where you want it. If you want to convert between different types of visuals, select the visual that you want to change and select a different visual from the Visualization pane. Power BI attempts to convert your selected fields to the new visual type as closely as possible. As you hover over parts of your visuals, you'll receive a tooltip that contains details about that segment, such as labels and total value. Select the paintbrush icon on the Visualizations pane to make cosmetic changes to your visual. Examples of cosmetic changes include background alignment, title text, and data colors.

www.dynamicscompanions.com Dynamics Companions

- 537 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The available options for cosmetic changes to your visual vary depending on the type of visual that you've selected.

Note Generally, visuals are used to compare two or more different values. However, sometimes when you are building reports, you might want to track a single metric over time. For more information, see Radial gauge charts in Power BI .

Create combination charts Combination charts are an effective way to visualize multiple measures that have different scales in a single visualization.

www.dynamicscompanions.com Dynamics Companions

- 538 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You might want to visualize two measures with different scales, such as revenue and units. Use a combination chart to show a line and a bar with different axis scales. Power BI supports many different types of combination charts by default, including Line and Stacked Columns charts.

You can split each column by category by dragging a category into the Column Series field. When you do so, each bar is proportionately colored based on the values within each category.

Create slicers Slicers are one of the most powerful types of visualizations, particularly as part of a busy report. A slicer is an on-canvas visual filter that allows report users to segment the data by a specific value. Examples of filters include by year or by geographical location. To add a slicer to your report, select Slicer from the Visualizations pane.

www.dynamicscompanions.com Dynamics Companions

- 539 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Drag the field by which you want to slice and drop it to the top of the slicer placeholder. The visualization turns into a list of elements with check boxes. These elements are your filters. Select the box next to the one that you want to segment, and Power BI will filter, or slice, all other visuals on the same report page.

A few different options are available to help you format your slicer. You can set it to accept multiple inputs at once, or you can use the Single Select mode to use one at a time. You can also add a Select All option to your slicer elements, which is helpful when you have a long list. Change the orientation of your slicer from the vertical default to horizontal, and it becomes a selection bar rather than a checklist.

When you have multiple visualizations on the same report page, Power BI Desktop lets you control how interactions flow between visuals. For more information, see Change how visuals interact in a Power BI report .

www.dynamicscompanions.com Dynamics Companions

- 540 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Map visualizations Power BI has two different types of map visualizations: a bubble map that places a bubble over a geographic point, and a shape map that shows the outline of the area that you want to visualize.

Important When you are working with countries or regions, use the three-letter abbreviation to ensure that geocoding works properly. Do not use two-letter abbreviations because some countries or regions might not be properly recognized. If you only have two-letter abbreviations, go to this external blog post for steps on how to associate your two-letter country and/or region abbreviations with three-letter country and/or region abbreviations.

Create bubble maps To create a bubble map, select the Map option in the Visualization pane. In the Visualizations options, add a value to the Location bucket to use a map visual.

Power BI accepts many types of location values. It recognizes city names, airport codes, or specific latitude and longitude data. Add a field to the Size bucket to change the size of the bubble for each map location.

www.dynamicscompanions.com Dynamics Companions

- 541 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create shape maps To create a shape map, select the Filled Map option in the Visualization pane. As with bubble maps, you must add a value to the Location bucket to use this visual. Add a field to the Size bucket to change the intensity of the fill color.

A warning icon in the top-left corner of your visual indicates that the map needs more location data to accurately plot values. This is a common problem when the data in your location field is ambiguous, such as using an area name like Washington, which could indicate a state or a district.

www.dynamicscompanions.com Dynamics Companions

- 542 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

One way to resolve the location data problem is to rename your column to be more specific, such as State. Another way is to manually reset the data category by selecting Data Category on the Modeling tab. From the Data Category list, you can assign a category to your data such as "State" or "City."

Matrices and tables You can use Power BI Desktop to create graphical and tabular visuals. If you have numerical information in a table, such as revenue, a total sum will appear at the bottom. You can manually sort by each column by selecting the column header to switch ascending or descending order. If a column isn't wide enough to display all its contents, select and drag the column header to expand it. In the Visualizations pane, the order of the fields in the Values bucket determines the order in which they appear in your table.

A matrix is similar to a table, but it has different category headers on the columns and rows. As with tables, numerical information will be automatically totaled along the bottom and right side of the matrix.

www.dynamicscompanions.com Dynamics Companions

- 543 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Many cosmetic options are available for matrices, such as auto-sizing columns, switching between row and column totals, setting colors, and more.

Create scatter, waterfall, and funnel charts Use a scatter chart to compare two different measures, such as unit sales versus revenue.

www.dynamicscompanions.com Dynamics Companions

- 544 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To create a blank chart, select Scatter chart from the Visualizations pane. Drag and drop the two fields that you want to compare from the Fields pane to the X Axis and Y Axis option buckets. At this point, your scatter chart probably has a small bubble in the center of the visual. You need to add a measure to the Details bucket to indicate how you want to segment your data. For example, if you're comparing item sales and revenue, you might want to split the data by category, or manufacturer, or month of sale. Adding another field to the Legend bucket will color-code your bubbles according to the field's value. You can also add a field to the Size bucket to alter the bubble size according to that value.

Scatter charts have many visual formatting options as well, such as turning on an outline for each colored bubble and switching between individual labels. You can change the data colors for other chart types as well.

www.dynamicscompanions.com Dynamics Companions

- 545 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can create an animation of your bubble chart's changes over time by adding a time-based field to the Play Axis bucket. Select a bubble during an animation to see a trace of its path.

www.dynamicscompanions.com Dynamics Companions

- 546 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note Remember, if you only see one bubble in your scatter chart, it's because Power BI is aggregating your data, which is the default behavior. To get more bubbles, add a category to the Details bucket in the Visualizations pane.

Create waterfall and funnel charts Waterfall and funnel charts are two of the more noteworthy (and uncommon) standard visualizations that are included in Power BI. To create a blank chart of either type, select its icon from the Visualizations pane.

Waterfall charts are typically used to show changes in a specific value over time.

www.dynamicscompanions.com Dynamics Companions

- 547 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Waterfalls only have two bucket options: Category and Y Axis. Drag a time-based field, such as Year, to the Category bucket, and drag the value that you want to track to the Y Axis bucket. Time periods where an increase in value occurred are displayed in green by default, while periods with a decrease in value are displayed in red. Funnel charts are typically used to show changes over a specific process, such as a sales pipeline or website retention efforts.

You can slice and customize Waterfall and Funnel charts.

www.dynamicscompanions.com Dynamics Companions

- 548 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Modify colors in charts and visuals Occasionally, you might want to modify the colors that are used in charts or visuals. Power BI gives you control over how colors are displayed. To begin, select a visual and then select the paintbrush icon in the Visualizations pane.

Power BI provides many options for changing the colors or formatting the visual. You can change the color of all bars in a visual by selecting the color picker beside Default color and then selecting your color of choice.

www.dynamicscompanions.com Dynamics Companions

- 549 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can change the color of each bar (or other element, depending on the type of visual that you selected) by turning the Show all slider to On. A color selector will then appear for each element.

Conditional formatting You can change the color based on a value or measure. To do so, select the vertical ellipsis next to Default color.

www.dynamicscompanions.com Dynamics Companions

- 550 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The resulting visuals will be colored by the gradient that you select.

You can use those values to create rules, for example, to set values above zero to a certain color and values below zero to another color.

www.dynamicscompanions.com Dynamics Companions

- 551 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Analytics pane, you can create many other lines for a visual, such as Min, Max, Average, Median, and Percentile lines.

You can create a border around an individual visualization, and like other controls, you can specify the color of that border as well. For more information, see Tips and tricks for color formatting in Power BI .

Page layout and formatting Power BI Desktop gives you the ability to control the layout and formatting of your report pages, such as size and orientation. Use the Page View menu from the View tab to change the way that your report pages scale. The available options include Fit To Page (default), Fit To Width, and Actual Size.

www.dynamicscompanions.com Dynamics Companions

- 552 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can also change the page size. By default, the report page size is set to 16:9. To change the page size, make sure that no visuals are selected, select the paintbrush icon on the Visualizations pane, and then select Page Size to expand that section.

Options for page size include 4:3 (more of a square aspect ratio) and Dynamic (the page will stretch to fill the available space). A standard letter size option is available for reports as well. You might need to resize your visuals after changing the page size to ensure that they're completely on the canvas. You can specify a custom page size, setting the size by inches or pixels, and you can also change the background color of the entire report.

www.dynamicscompanions.com Dynamics Companions

- 553 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Another option is to select Cortana, which sizes the report so that it can be used as a result for searches that use Cortana.

Add static elements Along with data-bound visuals, you can also add static elements such as text boxes, images, and shapes to improve the visual design of your reports. To add a visual element, select Text Box, Image, or Shapes from the Home tab.

You can display large titles, captions, or short paragraphs in Text boxes, which can also include links and URLs. Selecting Image will open a file browser where you can select the image from your computer or other networked source. By default, resizing an image in your report will maintain its aspect ratio. You can insert five types of Shapes, including rectangles and arrows. Shapes can be opaque or transparent with a colored border. The latter is useful for creating borders around groups of visualizations.

Manage how elements overlap When you have several elements on a report, Power BI lets you manage how they overlap with each other. This ordering of layers is known as the z-order. To manage the z-order of elements in a report, select an element and use the Bring forward and Send backward buttons on the Visual tools tab.

www.dynamicscompanions.com Dynamics Companions

- 554 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Reuse a report layout Individual pages of a report can be complex, with multiple visualizations that interact in specific ways and have precise formatting. Occasionally, when building a report, you might want to use the same visuals and layouts for two different pages. For example, if you've just put together a report page on gross revenue, you might want an almost identical page on net revenue. Recreating all your work would be difficult, but with Power BI Desktop, you can duplicate a report page. Right-click the tab that you want to copy and then select Duplicate Page.

For more information, see Tutorial: Adding formatting options to a Power BI custom visual .

Check your knowledge 1.

2.

3.

You want your report readers to be able to view your bar chart visual for any year that they choose. What tool could you use? 

Conditional formatting

Slicer

Treemap

Z-order

If you were very satisfied with the appearance of a page and wanted the next page to look the same, what would be the best method? 

Export the report to PDF and then import the PDF with a different name

Right-click the report page tab and select "Duplicate Page"

Publish the report to a different location

Use the "New Quick Measure" feature

Which scenario would be a good case for using bubble maps? 

You want to see months with the highest sales by country.

You want to see the types of products sold in each country. www.dynamicscompanions.com Dynamics Companions

- 555 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You want to see sales by age group.

You want to see total revenue by country.

Summary Visuals allow you to better communicate information that is hidden in raw data. Visuals can highlight obscure trends in ways that tabular data might not. Power BI includes many compelling visuals that you can use to illuminate your data and tell better stories.

Continue your journey Want to learn more about Power BI visuals? Check out these resources: 

Radial gauge charts in Power BI

Change how visuals interact in a Power BI report

How-To: Display 2-letter country data on a Power BI map

Tips and tricks for color formatting in Power BI

Tutorial: Adding formatting options to a Power BI custom visual

Best design practices for reports and visuals

www.dynamicscompanions.com Dynamics Companions

- 556 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Explore data in Power BI Turn your business intelligence data into data insights by creating and configuring Power BI dashboards.

Learning Objectives In this module, you will: 

Upload reports

Create dashboards

Ask questions of your data

Prerequisites Access to Power BI Desktop

Introduction to the Power BI service This unit explores the Power BI service and shows how it can help you turn your business intelligence data into data insights. The following are the tasks that you will complete in this module: 

Upload reports

Create dashboards

Ask questions of your data

www.dynamicscompanions.com Dynamics Companions

- 557 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The Power BI service is the natural extension of Power BI Desktop, and you can use its features for uploading reports, creating dashboards, and asking questions of your data by using natural language. Additionally, you can use the service to set data refresh times, share data with your organization, and create customized service packs.

Sign in to the Power BI service Before you can sign in to Power BI, you'll need an account. To get a free trial, go to app.powerbi.com and sign up with your email address. For detailed steps on setting up an account, see Sign in to Power BI service .

Quick insights in Power BI The Power BI service can automatically look for insights in a dashboard, report, or dataset. From the Datasets section, select the ellipsis beside the dataset that you're interested in and then select Get quick insights.

When you select Get quick insights, Power BI searches the data for patterns. After about 15 seconds, the notification changes to let you know that Power BI found some insights.

www.dynamicscompanions.com Dynamics Companions

- 558 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you select the View insights button on the notification, you're presented with a page of visuals. You can scroll down through the page to view and consider the visuals.

As with any other visual, you can interact with the visuals on the Quick Insights page. You can also pin any of them to a dashboard or filter to uncover additional insights. With Quick Insights, you can let Power BI do the work to spot outliers and trends in your data. Use those findings in your dashboards or continue to refine and filter to get to the insights that you need. For more information, see Generate data insights automatically with Power BI .

www.dynamicscompanions.com Dynamics Companions

- 559 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create and configure a dashboard Dashboards in Power BI are one-page collections of visualizations that are created from within the Power BI service. You can create dashboards by pinning visuals from reports. Pinning a visual to a dashboard is a lot like pinning a picture to a corkboard on a wall, where the visual is pinned to a particular spot for others to see. To pin a visual, open its report on the Power BI service. Hover over the visual that you want to pin and select the pin icon.

You can select a destination dashboard for the visual from the drop-down menu or create a new dashboard. You can pin visualizations from multiple reports and pages to a single dashboard, allowing you to combine different datasets and sources into a single page of insights.

On dashboards, you can add any sort of visualization, including graphs, maps, images, and shapes, by pinning them. After a visual has been pinned to a dashboard, it's called a tile. Your dashboards appear in the Dashboards section on the left side of the Power BI service. Select a dashboard from the list to view it.

www.dynamicscompanions.com Dynamics Companions

- 560 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can change the layout of visuals on a dashboard however you'd like. To resize a tile, drag its handles in or out. To move a tile, simply select and drag it to a different location on the dashboard. Hover over a tile and select the pencil icon to open the Tile details form, where you can change information in the Title or Subtitle fields.

Select a dashboard tile to view the report from which it originated. You can also change that link by using the Set custom link field on the Tile details form. You can pin tiles from one dashboard to another, for example, if you have a collection of dashboards and want to create one summary board. The process is the same: hover over the tile and select the pin icon.

www.dynamicscompanions.com Dynamics Companions

- 561 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Dashboards are simple to create and to change. You can customize your one-page dashboard to show exactly the information that it should. For more information, see Introduction to dashboards for Power BI designers .

Ask questions of your data with natural language Sometimes, the fastest way to get answers about your data is by asking questions in the Q&A feature of Power BI.

Note Currently, Power BI Q&A only supports answering queries that are asked in English; however, a preview is available for Spanish that can be enabled by your Power BI administrator. Explore Q&A You can use Q&A to explore your data by using the intuitive, natural language capabilities of Power BI and receive answers in the form of charts and graphs.

Ask a question Ask a question about your data in Q&A by using natural language. Natural language refers to the ordinary language that humans use to communicate with one another every day. An example would be, “What are the total units by region?”

www.dynamicscompanions.com Dynamics Companions

- 562 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Q&A is available on dashboards and reports in Power BI. Go to the dashboard and place your cursor in the question box to open the Q&A screen.

www.dynamicscompanions.com Dynamics Companions

- 563 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If the visuals' axis labels and values include the words sales, account, month, and opportunities, then you can confidently ask questions. For example, "Which account has the highest opportunity" or "Show sales by month as a bar chart." Other helpful items are provided on the side of the screen. For each dataset, Q&A shows you keywords and occasionally shows you some sample or suggested questions. Select any of these to add them to the question box. Another way that Q&A helps you ask questions is with prompts, autocomplete, and visual cues.

Q&A visuals Q&A picks the best visual based on the data that is being displayed. For example, numbers might be displayed as a line chart while cities are more likely to be displayed as a map. You can also tell Q&A which visual to use by adding it to your question. Q&A will prompt you with a list of workable visual types. By using the previous example, you could ask, "What are the total units by region by pie chart?"

www.dynamicscompanions.com Dynamics Companions

- 564 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For more information, see Create a visual with Power BI Q&A .

Create custom Q&A suggestions With Power BI, you can add your own suggested questions for others who use the natural language query box. Users will see your suggested questions when they ask a question.

To add your own questions, select the ellipsis next to the dashboard that you want to use. Select Settings from the menu. You can completely disable the Q&A search input box from the Dashboards section of the Settings page.

www.dynamicscompanions.com Dynamics Companions

- 565 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To add questions, select the Datasets section. All datasets that are associated with the dashboard are displayed. Select the dataset that is associated with your dashboard from the list, select Featured Q&A questions, and then select the Add a question link. Enter your question or prompt into the input box and then select Apply.

www.dynamicscompanions.com Dynamics Companions

- 566 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When anyone selects the search input box, they'll see your suggested entries at the top of the prompt list. Custom questions are a valuable way to get dashboard users to think about the type of data that is available and how to best use it. For more information, see Create featured questions for Power BI Q&A .

Share dashboards with your organization Power BI reports help you find data, collect it in a data model, and build reports and visualizations. These features are even more powerful when you share your insights with others in your organization. To share a dashboard, open it in the Power BI service and select the Share link in the top left-hand corner.

From the Share dashboard page, select the Share tab. In the Email address field, enter the names of people whom you'd like to grant access to your dashboard. You can also copy and paste email addresses into this field, or you can use a distribution list, security group, or Microsoft 365 group.

www.dynamicscompanions.com Dynamics Companions

- 567 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you select the Send email notification to recipients check box, then your recipients will receive an email with a link to the shared dashboard. You can add an optional note to the email.

Note Recipients without an existing Power BI account will be taken through the sign-up process before viewing your dashboard. Anyone whom you share a dashboard with can see and interact with it exactly as you do. However, they have read-only access to the underlying reports, and they have no access to the underlying datasets. For more information, see Share Power BI dashboards and reports with coworkers and others .

Display visuals and tiles in full screen When you're looking at dashboards or reports in the Power BI service, it can be helpful to expand and focus on an individual chart or visual. You can do that in two different ways. Hover over a dashboard tile and select the ellipsis to see possible actions for the tile. Select Open in focus mode to expand the tile to encompass the full dashboard space.

Focus mode allows you to see more detail in your visuals and legends. For example, some of the columns might not be shown because of the space that is available in the tile.

www.dynamicscompanions.com Dynamics Companions

- 568 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In Focus mode, you can pin the visual directly to a different dashboard by selecting the pin icon. To exit Focus mode, select the Exit focus mode icon in the top-left corner. The process is similar when you are viewing a report. A visual is still interactive in Focus mode, though you will temporarily lose any cross-filter effect between visuals.

Edit tile details and add widgets After you've built a dashboard, you can format your tiles in the Power BI service. To modify a tile, hover over and select the ellipsis to see the choices that are shown in the following screenshot.

Select the pen icon to open the Tile details pane. From this pane, you can change the tile's Title, Subtitle, or include its last refresh time.

www.dynamicscompanions.com Dynamics Companions

- 569 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, when you select a dashboard tile, you're redirected to the report from which it originated. To change this behavior, use the Set custom link field on the Tile details pane. One popular use of this feature is to redirect users to the organization homepage when they select a logo image.

Add images and text to your dashboard You can also add tiles that contain images, online videos, text boxes, or web content. When you select the Add tile link in the upper-left corner of a dashboard, the Add tile dialog box appears.

www.dynamicscompanions.com Dynamics Companions

- 570 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When you add a text box, for example, a Tile details pane appears on the right side, where you can edit details. A section is also available for you to define or modify the tile content, such as a rich text editor for a text box. With tiles and the ability to edit details, you can customize your dashboard and make it appear how you want. For more information, see Edit or remove a dashboard tile .

Get more space on your dashboard You might find that you have more content than you can fit on a canvas. You can get a full view of your dashboard content by managing how dashboard space is displayed. The easiest method to display your entire dashboard in one screen is to select the Full Screen Mode button in the top right-hand corner of the dashboard. Selecting the Full Screen Mode button removes all chrome elements from around the dashboard, which increases the amount of viewable space.

From within Full Screen Mode, you can select Fit to Screen to shrink all your tiles to a single screen. This mode without scrollbars is commonly called TV mode and is useful for giving presentations.

www.dynamicscompanions.com Dynamics Companions

- 571 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can also collapse the navigation pane on the left-hand side of the page by selecting the hamburger icon. To expand the navigation pane, select the icon again.

You can ensure that a dashboard will always have a collapsed navigation bar by appending the following to the end of the URL: ?collapseNavigation=true Users who follow that link will open the dashboard with a collapsed navigation bar.

Check your knowledge 1.

How can you get Power BI to spot outliers and trends in your data? 

Use the Spotlight feature

Export data to Microsoft Excel

www.dynamicscompanions.com Dynamics Companions

- 572 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

3.

Use Quick insights

Use Custom Q&A

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

How could you gather, arrange, and share interesting Power BI visuals from several different sources? 

Pin them to a Power BI report

Pin them to a Power BI dashboard

Export them to PDF

Use the Get Data feature

If you think of some interesting questions to ask in your report, how could you share them to help your Q&A users? 

Use the Spotlight feature

Include your questions in a text box on the report canvas

Use the "Featured Q&A questions" feature

Use the "Edit Queries" feature

Summary The Power BI service is full of remarkable ways to explore data, share insights, and interact with visuals. It's all accessible from a browser, so you can connect wherever you are.

www.dynamicscompanions.com Dynamics Companions

- 573 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Publish and share in Power BI Publish and share your Power BI reports and dashboards to teammates in your organization or to everyone on the web.

Learning Objectives In this module, you will: 

Publish reports

Print and export reports

Build apps

Integrate with OneDrive

Publish to the web

Prerequisites Access to Power BI Desktop

Introduction to content packs, security, and groups Likely, you will want to share your reports and dashboards with your coworkers and friends at some point. With Power BI, publishing and sharing your reports and dashboards is straightforward. Tasks in this module: 

Publish reports

Print and export reports

Build apps

Integrate with OneDrive

Publish to the web

www.dynamicscompanions.com Dynamics Companions

- 574 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Share and collaborate with colleagues in Power BI Power BI offers various ways of sharing and collaborating with colleagues on your dashboards, reports, and data including: 

Publish your reports from Power BI Desktop to the Power BI service.

Create Apps that package a dashboard, report, and dataset to send to your colleagues, who can use the content pack as a starting point and further enhance it.

Create Groups, which you can use as a security model to identify a subset of users who have access to dashboards, reports, and datasets that you create.

Publish to the web so that live reports can be embedded in a webpage.

Publish Power BI Desktop reports Publishing your reports to the Power BI service is fast and simple. After you've completed writing your report, select the Publish button on the Home tab.

www.dynamicscompanions.com Dynamics Companions

- 575 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Power BI packages your report and data, including visualizations, queries, and custom measures, and uploads them to the Power BI service.

Note It's common to refer to Power BI Desktop reports as .pbix files, which is the extension that they're given in Microsoft Windows. When the upload is complete, a dialog box appears, informing you that the publishing process succeeded, and provides a link to your report in the Power BI service.

Print and export dashboards and reports Occasionally, you might want to print a report or dashboard for a meeting or for sharing with others. Power BI provides a few ways for you to make these printouts. In the Power BI service, select Export in the top-left side of the service and then select Print this page to open a print dialog box.

Export data from a visual You can also export the data from any visual in the Power BI service. Select the ellipsis on any visual and then select Export data. You can save to a Microsoft Excel file or a .CSV file.

You can also print or export directly from a report. When you are viewing a report in the Power BI service, select Export > Print to open the print dialog box.

www.dynamicscompanions.com Dynamics Companions

- 576 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manually republish and refresh your data To update reports and datasets that you've already published from Power BI Desktop to the Power BI service, select Publish on the Home tab. When you republish a report in the Power BI service, you're prompted to confirm that you want to replace the previous dataset and reports. When you select Replace, the datasets and reports in the Power BI service are overwritten with the new datasets and reports. For more information, see Export data from visualizations .

Introducing Power BI Mobile To keep track of your data while you're on the move, you can use one of Power BI's touch-friendly mobile applications for iOS, Android, or Windows devices. Sign in to your account by using your Power BI service account information. The first screen displays all the content to which you have access, including reports, dashboards, and groups. The workspace also includes sample dashboards that you can explore for inspiration.

www.dynamicscompanions.com Dynamics Companions

- 577 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Tap any dashboard to open it. Within a dashboard, you can tap a dashboard tile to focus on it in a larger view. Note any insights that you discover by tapping the Annotate button in the top-right corner. The Annotate feature allows you to draw on a focused tile to highlight areas of interest. The annotation tools are along the bottom of the screen.

Share your annotated tile by tapping the Share link in the top right-hand corner. For more information, see What are the Power BI mobile apps? .

www.dynamicscompanions.com Dynamics Companions

- 578 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create workspaces in Power BI In this unit, you will create a group that defines a set of users who have access to specific dashboards, reports, and data. Workspaces are places to collaborate with colleagues to create and refine collections of dashboards, reports, and paginated reports. There are two types of groups in Power BI: 

Classic workspaces - groups are based on the groups in Microsoft 365. If you've been using Microsoft 365 groups to manage your group's email, calendar, and documents, then you'll find that Power BI offers the same features. When you create a group in Power BI, you're actually creating an Microsoft 365 group.

New workspaces - are now the default workspace in Power BI. -Assign workspace roles to user groups: security groups, distribution lists, Microsoft 365 groups, and individuals. o

Create a workspace in Power BI without creating an Microsoft 365 group.

o

Use more granular workspaces roles for more flexible permissions management in a workspace.

o

The Power BI admin can control who can create workspaces in Power BI.

Setting up a new workspace In Workspace settings in the admin portal, admins can use the Create workspaces (new workspace experience) setting to allow everybody or nobody in an organization to create new workspace experience workspaces. They can also limit creation to members of specific security groups.

Setting up a classic workspace Imagine setting up a new finance group. Start in My Workspace with the dashboards, reports, and datasets that you've created or that someone has shared with you.

www.dynamicscompanions.com Dynamics Companions

- 579 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Expand My Workspace and select Create a group.

Give the group a name, for example, Finance. Power BI makes sure that the name doesn't exist on the domain.

Set the privacy level by deciding whether anyone in your organization or only its members can see the contents of the group. In the Create a group dialog box, type email addresses, security groups, and distribution lists. Select Add to make the set of users members of the group, and then select Save to save the group. For more information, see Create classic workspaces in Power BI and Organize work in the new workspaces in Power BI .

Build apps In this lesson, you will create an app with artifacts that already exist in Power BI, and then you will share the app with colleagues.

www.dynamicscompanions.com Dynamics Companions

- 580 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Start in the Power BI service. In My Workspace, you will create an app that includes your dashboard, the report underneath, and the dataset. Then, you will share the app with people in your organization so they can reuse the artifacts. In the workspace list view, decide which dashboards and reports you want Included in app. Select the Publish app button in the upper right to start the process of creating and publishing an app from the workspace.

On Setup, fill in the name and description to help people find the app. You can set a theme color to personalize it. You can also add a link to a support site. Choose whether to distribute the app to specific people or to groups, and then give the app a title. Provide a detailed description in the Description box so that people know what your app provides.

On the bottom of the dialog box, you can upload an image for the app and then select the dashboard to include in the app. When you publish, the app is added to the organization's content gallery. For more information, see Publish an app in Power BI .

www.dynamicscompanions.com Dynamics Companions

- 581 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use apps In this lesson, you will create an instance of an app for everyone in a group. Start in My Workspace, select the group that you previously created, select My Organization to browse your content packs, and then connect to your app.

Power BI imports the dashboards, reports, and datasets that are in the app. When you select the dataset, Power BI asks if you want to personalize the app. Create a copy of the app that you can use to make changes to yet keep it disconnected from the published version of the app. By creating a copy, you won't automatically receive updates if the app creator makes changes to the published version of the app. You can edit the dashboard, the report, and even the dataset if you want.

www.dynamicscompanions.com Dynamics Companions

- 582 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Update apps To edit an app that you created previously and see how other people use your app, start in the Power BI Service in My Workspace. Anytime that you make changes to the dashboard, you'll get a reminder that you've changed something that you've shared with others in an app. Power BI will prompt you to update the shared version.

Return to the settings icon and select View app to see the apps that you've already published. When you select Edit, you'll return to the screen where you can edit the title and description. This time, the screen includes an Update button.

Power BI processes those changes and publishes the updated app to the app gallery. Anyone who has connected to your app will receive a message that the app has changed, and they will have the option to accept the changes or to keep the older version. As the app owner, you can manage the versions that your colleagues are using. For more information, see Change your published app.

Integrate OneDrive for Business with Power BI You can use your Power BI and Office365 groups to collaborate and share by using Microsoft OneDrive for Business. OneDrive for Business is a potential storage location for your Power BI content that provides version history. You can share your files with an Office365 group to enable several people to work on the same Power BI or Excel files.

www.dynamicscompanions.com Dynamics Companions

- 583 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To connect to a PBIX (Power BI Desktop) file on OneDrive for Business, sign in to the Power BI service and select Get Data. Under Create new content, select Files, and then select OneDrive ‐ Business. Highlight the file and then select Connect.

Your content appears on the left-hand side navigation bar. File changes on the OneDrive for Business page will automatically reflect in the Power BI environment and will be recorded in the version history. For more information, see Connect to files stored in OneDrive for your Power BI app workspace .

Publish to web In this lesson, you're going to share a Power BI report on a webpage or share it through email. This feature of Power BI is often referred to as Publish to web.

www.dynamicscompanions.com Dynamics Companions

- 584 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Power BI service, select the report that you want to share so that it's displayed on the canvas. Then from the menu, select File > Publish to web. A dialog box will appear, explaining that you'll receive an embed code that will allow you to include the report on a website or in an email.

When you select Create embed code, Power BI presents another dialog box stating that you're about to share your data with everyone on the Internet. Verify that sharing publicly is acceptable before moving ahead. Power BI presents a dialog with two links: 

A link that you can share in an email, which shows the report as a webpage

HTML code (a link plus within an iframe) so that you can embed the report directly into a webpage

For the HTML link, you can choose from predefined sizes for the embedded report, or you can modify the iframe code and customize its size. You can paste the email link into a browser and see your report as a webpage. You can interact with that webpage just as you would if you were viewing the report in Power BI. The following image shows a Publish to web page when its link was copied directly from that dialog box into a browser.

www.dynamicscompanions.com Dynamics Companions

- 585 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can also embed that iframe link into a blog post, website, or Sway. If you want to delete an embedded code that you created, Power BI can help. In Power BI, select the gear icon in the upper-right corner and then select Manage embed codes. The Power BI workspace shows the embed codes that you've created. For more information, see Publish to web from Power BI .

Check your knowledge 1.

2.

In Power BI, what does the "Publish" button do? 

Packaging your report and data on Power BI Desktop and sending them to the Power BI service.

Packaging your report and data on the Power BI service and sending them to Power BI Desktop.

Packaging your report and data and share it as an app.

Packaging your report and data and saving it to PDF.

What is the purpose of a "workspace" in Power BI? 

To create a custom bundle of dashboards, reports, and data.

www.dynamicscompanions.com Dynamics Companions

- 586 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To define the working area of a canvas.

To designate the relationship between two tables.

To define a set of colleagues who have access to specific dashboards, reports, and data.

What happens if you update content that's part of an app you already published? 

Nothing. You have now created a new fork of that content.

The new content will automatically update anyone who has connected to your app

Anyone who has connected to your app will receive a message and they can decide whether to accept the changes or keep the older version

Anyone who has connected to your app will automatically update but they can roll back to the older version whenever they choose

Summary Publishing your report to the web and sharing it with the world is simple with Power BI Desktop.

www.dynamicscompanions.com Dynamics Companions

- 587 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T09: Bring AI to your business with AI Builder Do you want to bring AI to your business to improve your business performance? This learning path introduces you to AI Builder, teaches you how to build models, and explains how you can use them in Power Apps and Power Automate. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Signed up for Power Apps or Power Automate

Access to Common Data Service

www.dynamicscompanions.com Dynamics Companions

- 588 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with AI Builder This self-paced module helps you build an AI model from the beginning and shows how you can use it in your business without writing a single line of code.

Learning Objectives In this module, you will: 

Explore how AI Builder can help improve your business performance.

Learn how to use different AI technologies to enhance your processes.

Create your first model.

Learn how to use your models in Power Apps and Power Automate.

Prerequisites 

A Power Apps or Power Automate license

Access to Common Data Service

An AI Builder add-on or trial

Introduction to AI Builder Welcome to AI Builder. This self-paced module will help you build an AI model from the beginning and will show you how to use it in your business without writing a single line of code.

AI Builder defined AI Builder is a Power Platform capability that helps you improve your business performance by automating processes and predicting outcomes. By using AI Builder, you can quickly bring AI to your apps and flows that connect to your business data that is stored in the underlying data platform (Common Data Service) or in various cloud data sources, such as SharePoint, OneDrive, or Azure. AI models that you create in AI Builder can help provide intelligence to enhance your business. AI Builder simplifies the AI creation experience by giving people with any level of technical skill the ability to add AI capabilities to their apps and flows without writing code. AI Builder also provides prebuilt AI models, where you don't need to gather data to build and train the model. You can start to use the intelligence right away.

www.dynamicscompanions.com Dynamics Companions

- 589 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

What you can do with AI Builder You can use AI Builder to create custom AI models that suit the needs of your business, or you can choose from a selection of prebuilt models. You can then use the AI from these models in your apps and workflows. For example, with AI Builder you can: 

Analyze text for classification, key phrases, language, and sentiment.

Predict whether something will happen.

Process business card information.

Process text from images.

Read and save information from standard documents.

Recognize and count items in images.

A common use of AI Builder is to automate processes. The following examples can help you think about how you can use AI in your business: 

Invoice processing - Companies often receive invoices in large quantities and from a variety of sources, such as mail, fax, email, or in person. Processing these documents and manually entering them into your database can take considerable time. By using AI to extract the text, key/value pairs, and tables from your documents, you can create workflows to automatically pipe the information into your database. You can even create an app to review the information.

Text analysis - Businesses today are collecting more data than ever before. Whether it's from survey responses, product reviews, user feedback, or support emails, generating the proper insights is important to understanding your business and your customers. By using AI to analyze

www.dynamicscompanions.com Dynamics Companions

- 590 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

text, you can identify customer feedback that contains negative sentiment or certain key phrases. Use AI to identify problems and then trigger the necessary workflows to take action.

Where you can use AI Builder You can access AI Builder within Power Apps and Power Automate.

Two available areas under AI Builder in the left side menu are: 

Build - Where you create and get started by using AI models.

Models - Where your created and shared models reside.

Next steps Now that you've learned about AI Builder, your next step is to gain in-depth knowledge about the available AI capabilities.

Choose an AI capability AI Builder offers several AI capabilities. AI capabilities are brought to your apps and flows by models. A model can be built and customized by you, or it can be a prebuilt model that is ready to be used right away. Before learning about the model creation process, you should be familiar with the various model types that are available.

www.dynamicscompanions.com Dynamics Companions

- 591 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Choose a model AI Builder comes with a wide variety of models to enhance your apps and business processes. 1.

Sign in to Power Apps or Power Automate and select AI Builder > Build on the left menu. Each tile represents a different AI capability that you can bring to your business.

2.

Select any tile.

Learn about the model Each AI Builder model has an introductory experience where you can learn more about the model.

www.dynamicscompanions.com Dynamics Companions

- 592 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For those models that require customization, AI Builder provides a summary of the steps that you need to take and what you need to get started. The Examples tab also includes examples of how you can use the model. For prebuilt models, AI Builder includes best practices on how to use them and buttons that you can select to get started using them right away.

Next steps Now that you have learned about AI capabilities, your next step is to learn how models are created and managed.

Create your first model You can create a model in AI Builder by following a few simple steps.

Select a model type Sign in to Power Apps or Power Automate and select AI Builder > Build on the left menu. The two classes of model are: 

Models that require customization before they can be used

Models that are prebuilt and can be used right away

www.dynamicscompanions.com Dynamics Companions

- 593 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prebuilt models have already been created for you and can be used right away in your apps and flows. No prior work is needed to create the model. The following sections explore what you can do with the models that you customize. Select the tile for one of the following model types: 

Form processing

Object detection

Prediction

Text classification

Make sure that you have everything you need to create your model, as listed on the Get started tab. You can also use sample data to create any of these models. 3.

Enter a name for your model in the Name this AI model field.

4.

Select Create.

Follow the guided experience To help create your model, AI Builder offers a guided experience that will walk through each step of the experience. Every model type has its own set of steps to create a model. You can find these steps outlined in the left column to help guide you through the model creation process. As you progress from step to step, the left column will be updated to reflect your progress. At any time during the creation process, you can save your work and come back later. Select Save and close in the upper-right corner, next to the name of your model. Progress is also saved automatically when you go between steps. Along the right column is a list of Quick tips that can help you understand some of the concepts and actions that you need to take in the current step. If you need more help, select the Get help link on the Get help or send feedback tip card, where you can report an issue, send feedback, and find documentation. Follow the instructions on each page to advance to the next step. The final step is a summary of the customizations that you made in the previous steps. Review this information to be sure that every detail is configured as intended, and then begin training your model. Training might take a while depending on the size of your data. After the training has been completed, your model is ready to be tested.

Next steps You have now learned how to create your first model. Next, you'll learn how to use your model in Power Apps and Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 594 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Ways to use your models After creating your AI Builder model, you can use it in Power Apps and Power Automate.

View your model details After your model has completed training, you can view important details about your newly trained model on a details page for that model. The information might vary depending on the model type.

On the model details page, you can see the customizations that you made to train your model. In some cases, it shows additional insights on the training performance. Some model types give you the opportunity to quick test your model to see it live in action. You can access this page at any time from the left menu by selecting AI Builder > Models and then searching for your model name.

Publish your model Your model can't be used until it is published. If you are satisfied with your model, select Publish to make it available. Three main ways that you can use your model are: 

As a component in an app

As an action in a flow

As new data in your database

www.dynamicscompanions.com Dynamics Companions

- 595 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When your model is published, select Use model to see a list of the available actions that you can take to use your model.

Use your model in an app In the Use your model pane, select Create new app, which appears if your model type supports it. This selection redirects you to the canvas app creation experience, with the AI Builder component already added to your canvas and your model automatically linked to the component.

You can add AI Builder components to your existing apps at any time by selecting the Insert tab and then selecting the component from the AI Builder menu.

Use your model in a flow In the Use your model pane, select Create new flow, which appears if your model type supports it.

www.dynamicscompanions.com Dynamics Companions

- 596 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This selection redirects you to the flow template page in Power Automate. Confirm the connections and then select Continue.

In the flow creation experience, you'll find the AI Builder action already added to your flow and your model automatically linked to the action. You can add the AI Builder action to solution-aware flows by searching for the Predict action under Common Data Service (current environment) and then selecting your model name from the Model drop-down menu.

Use your model in your database Some model types write the intelligence back to your database, so you can use it in your data views in Power Apps or Power BI. After you have published your model, some model types automatically begin scheduling the model to write data back to your database by default. For others, you can customize the scheduling. In the Use your model pane, select Set run schedule to define the frequency. This option appears when the model supports it. You have now learned the various ways that you can use your AI Builder models in Power Apps and Power Automate.

Check your knowledge 1.

Which of the following statements is true?

www.dynamicscompanions.com Dynamics Companions

- 597 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

AI Builder is only available in Power Apps.

AI Builder is only available in Power Automate.

AI Builder is available in both Power Apps and Power Automate.

You have customized a model by using the guided experience. What is the final step that you must take before you can use it? 

Create it

Publish it

Save it

Train it

What do you need to do before you can use a prebuilt model? 

Gather data

Train the model

Publish the model

Nothing

Summary Congratulations on creating your first model with AI Builder. In this module, you discovered how to bring AI to your business by using AI Builder. Specifically, you learned that: 

A wide variety of AI capabilities are at your disposal.

Some model types can be customized to your needs, whereas other model types can be used right away.

You can use your model in several different ways: in your apps, in your flows, and in your database.

www.dynamicscompanions.com Dynamics Companions

- 598 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manage models in AI Builder Understand your model, model versions, and model sharing in AI Builder.

Learning Objectives In this module, you will: 

Learn about the lifecycle of a model.

Learn how to manage model versions.

Explore how to share a model, including permissions.

Get a better understanding of AI Builder.

Prerequisites 

A Power Apps or Power Automate license

Access to Common Data Service

An AI Builder add-on or trial

Model lifecycle Learn how your model can develop over time. An AI Builder model goes through several stages as it evolves from when you create it through publishing, sharing, and use. The following sections describe each of those stages.

Create your model You can find all the AI Builder model types and capabilities on the Build page, which you can access from the left menu. This page is where you start to create a new custom AI model, or select a prebuilt model that you can use right away.

Draft models When you've made progress building and customizing your AI model, you can save a draft to finish later. You can come back at any time and continue where you left off.

www.dynamicscompanions.com Dynamics Companions

- 599 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Trained models After you have finished building your AI model, you're ready to train it. During training, your model learns from your data to perform to your specifications. The time it takes for your model to train depends on the size of your data. After training is complete, you can view additional training and performance information on the details page. In some cases, you can also quick test to see your model live in action.

Published models If you are satisfied with your model, you're ready to publish it. You have to publish a model before it can be available to use in Power Apps and Power Automate, so it's important not to miss this step.

Keep track of your model Any models you create can be accessed at any time by visiting the Models page, which you can access from the left-side menu in AI Builder. The Models page shows a complete list of your models, as well as their date of latest training and the various states we've learned about here.

Next steps Now that you have learned how your model can develop over time, your next step is to learn how to edit your model to improve its performance and how to manage multiple model versions.

Manage model versions Learn how to manage multiple versions of your model. Getting the best model performance for your business can be a rather iterative process. Results can vary depending on the customizations you make to the model, and the training data you provide. To help facilitate this process, AI Builder allows you to have multiple versions of your model so you can use your model and continue to improve it at the same time.

Edit your model Editing your model creates a new version that is based on your existing customizations. To edit your model, follow these steps: 1.

Select AI Builder > Models on the left menu.

2.

Find your model and select it to go to its details page.

3.

In the upper-left corner of the screen, select Edit model.

www.dynamicscompanions.com Dynamics Companions

- 600 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

While you edit your model, you can save your work at any time and return later. The new version will be saved as a draft, which you can access again from your model's details page and by selecting Resume draft.

Work with multiple versions You can have three versions of your model at any given time: 

One published version

One last trained non-published version

One draft version

On the model details page, you can switch between the trained versions using the pivots at the top of the page.

When you edit your model, if you have a published version and a last trained version, you can start from the configuration of either version.

What's next? You now know how to manage multiple versions of your model. Next, you'll learn how to share your model so others in your organization can use it.

Share your models Learn how other people in your organization can use your model.

www.dynamicscompanions.com Dynamics Companions

- 601 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, only you can see the models you create and publish. This feature allows you to test them and use them within apps and flows without exposing them. If you want others to use your model, you can share it with specific users, groups, or your whole organization.

Share your model 1.

Click AI Builder > Models on the left menu.

2.

Find your model name and select it to access its details page.

3.

In the top left corner of the screen, select Share.

Use a shared model In addition to the models you create yourself, the models that are shared with you by others appear on the Models page, accessible from the left menu.

When a model is shared with you, you have user permissions to use it in apps and flows. You cannot view details or edit the model. You now know how to share your model with other people in your organization.

Check your knowledge 1.

2.

What is the purpose of training your model? 

It creates the model

It makes it available for use

It learns from your data

It makes it stronger

How many trained model versions can you have at one time? 

One

Two www.dynamicscompanions.com Dynamics Companions

- 602 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Three

 3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, who can see and use a model you have created? 

Just me

People in my environment

People in my organization

Everyone

Summary In this module, you learned all about the lifecycle of a model, managing model versions, and sharing your model. Specifically, you learned that: 

A model can assume various states between the time it was created and the time it is being used.

You can have multiple versions of your model so you can use your model and continue to improve it at the same time.

You can share your model for it to be used by others in your organization.

www.dynamicscompanions.com Dynamics Companions

- 603 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T09: Bring AI to your business with AI Builder Do you want to bring AI to your business to improve your business performance? This learning path introduces you to AI Builder, teaches you how to build models, and explains how you can use them in Power Apps and Power Automate. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites 

Signed up for Power Apps or Power Automate

Access to Common Data Service

www.dynamicscompanions.com Dynamics Companions

- 604 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Get started with AI Builder This self-paced module helps you build an AI model from the beginning and shows how you can use it in your business without writing a single line of code.

Learning Objectives In this module, you will: 

Explore how AI Builder can help improve your business performance.

Learn how to use different AI technologies to enhance your processes.

Create your first model.

Learn how to use your models in Power Apps and Power Automate.

Prerequisites 

A Power Apps or Power Automate license

Access to Common Data Service

An AI Builder add-on or trial

Introduction to AI Builder Welcome to AI Builder. This self-paced module will help you build an AI model from the beginning and will show you how to use it in your business without writing a single line of code.

AI Builder defined AI Builder is a Power Platform capability that helps you improve your business performance by automating processes and predicting outcomes. By using AI Builder, you can quickly bring AI to your apps and flows that connect to your business data that is stored in the underlying data platform (Common Data Service) or in various cloud data sources, such as SharePoint, OneDrive, or Azure. AI models that you create in AI Builder can help provide intelligence to enhance your business. AI Builder simplifies the AI creation experience by giving people with any level of technical skill the ability to add AI capabilities to their apps and flows without writing code. AI Builder also provides prebuilt AI models, where you don't need to gather data to build and train the model. You can start to use the intelligence right away.

www.dynamicscompanions.com Dynamics Companions

- 605 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

What you can do with AI Builder You can use AI Builder to create custom AI models that suit the needs of your business, or you can choose from a selection of prebuilt models. You can then use the AI from these models in your apps and workflows. For example, with AI Builder you can: 

Analyze text for classification, key phrases, language, and sentiment.

Predict whether something will happen.

Process business card information.

Process text from images.

Read and save information from standard documents.

Recognize and count items in images.

A common use of AI Builder is to automate processes. The following examples can help you think about how you can use AI in your business: 

Invoice processing - Companies often receive invoices in large quantities and from a variety of sources, such as mail, fax, email, or in person. Processing these documents and manually entering them into your database can take considerable time. By using AI to extract the text, key/value pairs, and tables from your documents, you can create workflows to automatically pipe the information into your database. You can even create an app to review the information.

Text analysis - Businesses today are collecting more data than ever before. Whether it's from survey responses, product reviews, user feedback, or support emails, generating the proper insights is important to understanding your business and your customers. By using AI to analyze

www.dynamicscompanions.com Dynamics Companions

- 606 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

text, you can identify customer feedback that contains negative sentiment or certain key phrases. Use AI to identify problems and then trigger the necessary workflows to take action.

Where you can use AI Builder You can access AI Builder within Power Apps and Power Automate.

Two available areas under AI Builder in the left side menu are: 

Build - Where you create and get started by using AI models.

Models - Where your created and shared models reside.

Next steps Now that you've learned about AI Builder, your next step is to gain in-depth knowledge about the available AI capabilities.

Choose an AI capability AI Builder offers several AI capabilities. AI capabilities are brought to your apps and flows by models. A model can be built and customized by you, or it can be a prebuilt model that is ready to be used right away. Before learning about the model creation process, you should be familiar with the various model types that are available.

www.dynamicscompanions.com Dynamics Companions

- 607 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Choose a model AI Builder comes with a wide variety of models to enhance your apps and business processes. 5.

Sign in to Power Apps or Power Automate and select AI Builder > Build on the left menu. Each tile represents a different AI capability that you can bring to your business.

6.

Select any tile.

Learn about the model Each AI Builder model has an introductory experience where you can learn more about the model.

www.dynamicscompanions.com Dynamics Companions

- 608 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

For those models that require customization, AI Builder provides a summary of the steps that you need to take and what you need to get started. The Examples tab also includes examples of how you can use the model. For prebuilt models, AI Builder includes best practices on how to use them and buttons that you can select to get started using them right away.

Next steps Now that you have learned about AI capabilities, your next step is to learn how models are created and managed.

Create your first model You can create a model in AI Builder by following a few simple steps.

Select a model type Sign in to Power Apps or Power Automate and select AI Builder > Build on the left menu. The two classes of model are: 

Models that require customization before they can be used

Models that are prebuilt and can be used right away

www.dynamicscompanions.com Dynamics Companions

- 609 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Prebuilt models have already been created for you and can be used right away in your apps and flows. No prior work is needed to create the model. The following sections explore what you can do with the models that you customize. Select the tile for one of the following model types: 

Form processing

Object detection

Prediction

Text classification

Make sure that you have everything you need to create your model, as listed on the Get started tab. You can also use sample data to create any of these models. 7.

Enter a name for your model in the Name this AI model field.

8.

Select Create.

Follow the guided experience To help create your model, AI Builder offers a guided experience that will walk through each step of the experience. Every model type has its own set of steps to create a model. You can find these steps outlined in the left column to help guide you through the model creation process. As you progress from step to step, the left column will be updated to reflect your progress. At any time during the creation process, you can save your work and come back later. Select Save and close in the upper-right corner, next to the name of your model. Progress is also saved automatically when you go between steps. Along the right column is a list of Quick tips that can help you understand some of the concepts and actions that you need to take in the current step. If you need more help, select the Get help link on the Get help or send feedback tip card, where you can report an issue, send feedback, and find documentation. Follow the instructions on each page to advance to the next step. The final step is a summary of the customizations that you made in the previous steps. Review this information to be sure that every detail is configured as intended, and then begin training your model. Training might take a while depending on the size of your data. After the training has been completed, your model is ready to be tested.

Next steps You have now learned how to create your first model. Next, you'll learn how to use your model in Power Apps and Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 610 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Ways to use your models After creating your AI Builder model, you can use it in Power Apps and Power Automate.

View your model details After your model has completed training, you can view important details about your newly trained model on a details page for that model. The information might vary depending on the model type.

On the model details page, you can see the customizations that you made to train your model. In some cases, it shows additional insights on the training performance. Some model types give you the opportunity to quick test your model to see it live in action. You can access this page at any time from the left menu by selecting AI Builder > Models and then searching for your model name.

Publish your model Your model can't be used until it is published. If you are satisfied with your model, select Publish to make it available. Three main ways that you can use your model are: 

As a component in an app

As an action in a flow

As new data in your database

www.dynamicscompanions.com Dynamics Companions

- 611 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When your model is published, select Use model to see a list of the available actions that you can take to use your model.

Use your model in an app In the Use your model pane, select Create new app, which appears if your model type supports it. This selection redirects you to the canvas app creation experience, with the AI Builder component already added to your canvas and your model automatically linked to the component.

You can add AI Builder components to your existing apps at any time by selecting the Insert tab and then selecting the component from the AI Builder menu.

Use your model in a flow In the Use your model pane, select Create new flow, which appears if your model type supports it.

www.dynamicscompanions.com Dynamics Companions

- 612 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This selection redirects you to the flow template page in Power Automate. Confirm the connections and then select Continue.

In the flow creation experience, you'll find the AI Builder action already added to your flow and your model automatically linked to the action. You can add the AI Builder action to solution-aware flows by searching for the Predict action under Common Data Service (current environment) and then selecting your model name from the Model drop-down menu.

Use your model in your database Some model types write the intelligence back to your database, so you can use it in your data views in Power Apps or Power BI. After you have published your model, some model types automatically begin scheduling the model to write data back to your database by default. For others, you can customize the scheduling. In the Use your model pane, select Set run schedule to define the frequency. This option appears when the model supports it. You have now learned the various ways that you can use your AI Builder models in Power Apps and Power Automate.

Check your knowledge 4.

Which of the following statements is true?

www.dynamicscompanions.com Dynamics Companions

- 613 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

6.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

AI Builder is only available in Power Apps.

AI Builder is only available in Power Automate.

AI Builder is available in both Power Apps and Power Automate.

You have customized a model by using the guided experience. What is the final step that you must take before you can use it? 

Create it

Publish it

Save it

Train it

What do you need to do before you can use a prebuilt model? 

Gather data

Train the model

Publish the model

Nothing

Summary Congratulations on creating your first model with AI Builder. In this module, you discovered how to bring AI to your business by using AI Builder. Specifically, you learned that: 

A wide variety of AI capabilities are at your disposal.

Some model types can be customized to your needs, whereas other model types can be used right away.

You can use your model in several different ways: in your apps, in your flows, and in your database.

www.dynamicscompanions.com Dynamics Companions

- 614 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Manage models in AI Builder Understand your model, model versions, and model sharing in AI Builder.

Learning Objectives In this module, you will: 

Learn about the lifecycle of a model.

Learn how to manage model versions.

Explore how to share a model, including permissions.

Get a better understanding of AI Builder.

Prerequisites 

A Power Apps or Power Automate license

Access to Common Data Service

An AI Builder add-on or trial

Model lifecycle Learn how your model can develop over time. An AI Builder model goes through several stages as it evolves from when you create it through publishing, sharing, and use. The following sections describe each of those stages.

Create your model You can find all the AI Builder model types and capabilities on the Build page, which you can access from the left menu. This page is where you start to create a new custom AI model, or select a prebuilt model that you can use right away.

Draft models When you've made progress building and customizing your AI model, you can save a draft to finish later. You can come back at any time and continue where you left off.

www.dynamicscompanions.com Dynamics Companions

- 615 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Trained models After you have finished building your AI model, you're ready to train it. During training, your model learns from your data to perform to your specifications. The time it takes for your model to train depends on the size of your data. After training is complete, you can view additional training and performance information on the details page. In some cases, you can also quick test to see your model live in action.

Published models If you are satisfied with your model, you're ready to publish it. You have to publish a model before it can be available to use in Power Apps and Power Automate, so it's important not to miss this step.

Keep track of your model Any models you create can be accessed at any time by visiting the Models page, which you can access from the left-side menu in AI Builder. The Models page shows a complete list of your models, as well as their date of latest training and the various states we've learned about here.

Next steps Now that you have learned how your model can develop over time, your next step is to learn how to edit your model to improve its performance and how to manage multiple model versions.

Manage model versions Learn how to manage multiple versions of your model. Getting the best model performance for your business can be a rather iterative process. Results can vary depending on the customizations you make to the model, and the training data you provide. To help facilitate this process, AI Builder allows you to have multiple versions of your model so you can use your model and continue to improve it at the same time.

Edit your model Editing your model creates a new version that is based on your existing customizations. To edit your model, follow these steps: 4.

Select AI Builder > Models on the left menu.

5.

Find your model and select it to go to its details page.

6.

In the upper-left corner of the screen, select Edit model.

www.dynamicscompanions.com Dynamics Companions

- 616 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

While you edit your model, you can save your work at any time and return later. The new version will be saved as a draft, which you can access again from your model's details page and by selecting Resume draft.

Work with multiple versions You can have three versions of your model at any given time: 

One published version

One last trained non-published version

One draft version

On the model details page, you can switch between the trained versions using the pivots at the top of the page.

When you edit your model, if you have a published version and a last trained version, you can start from the configuration of either version.

What's next? You now know how to manage multiple versions of your model. Next, you'll learn how to share your model so others in your organization can use it.

Share your models Learn how other people in your organization can use your model.

www.dynamicscompanions.com Dynamics Companions

- 617 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, only you can see the models you create and publish. This feature allows you to test them and use them within apps and flows without exposing them. If you want others to use your model, you can share it with specific users, groups, or your whole organization.

Share your model 4.

Click AI Builder > Models on the left menu.

5.

Find your model name and select it to access its details page.

6.

In the top left corner of the screen, select Share.

Use a shared model In addition to the models you create yourself, the models that are shared with you by others appear on the Models page, accessible from the left menu.

When a model is shared with you, you have user permissions to use it in apps and flows. You cannot view details or edit the model. You now know how to share your model with other people in your organization.

Check your knowledge 4.

5.

What is the purpose of training your model? 

It creates the model

It makes it available for use

It learns from your data

It makes it stronger

How many trained model versions can you have at one time? 

One

Two www.dynamicscompanions.com Dynamics Companions

- 618 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

Three

 6.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

By default, who can see and use a model you have created? 

Just me

People in my environment

People in my organization

Everyone

Summary In this module, you learned all about the lifecycle of a model, managing model versions, and sharing your model. Specifically, you learned that: 

A model can assume various states between the time it was created and the time it is being used.

You can have multiple versions of your model so you can use your model and continue to improve it at the same time.

You can share your model for it to be used by others in your organization.

www.dynamicscompanions.com Dynamics Companions

- 619 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T10: Use the UI and controls in a canvas app in Power Apps The app user experience often defines the success of your app. This learning path will focus on how to provide the best app navigation, and build the best UI using themes, icons, images, personalization, different form factors, and controls. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites A basic understanding of how to create a Power Apps canvas app and some experience working with controls in Power Apps is helpful but not required.

www.dynamicscompanions.com Dynamics Companions

- 620 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Navigation in a canvas app in Power Apps App users can only navigate through the navigation options provided by an app developer, and this module is designed to help you build a good navigation experience for your canvas app.

Learning Objectives In this module, you will: 

Understand how navigation works in a canvas app

Use the Navigate and Back functions

Understand the different ways these functions can be invoked

Prerequisites A basic understanding of how to create a Power Apps canvas app and some experience working with controls in Power Apps is helpful but not required.

Understanding navigation In Power Apps, because most apps have multiple screens, it's essential that you understand how to implement the Navigate function in your app. The Navigate function allows users to move or navigate from screen to screen in an app. For example, if you create an app with three screens and you want to give users a way to navigate to another screen, set the OnSelect property of a Button control to: Navigate(Screen2,ScreenTransition.Cover) With this formula, when the button is selected, Screen2 will automatically display. You could also use this formula on an icon, like an arrow, to provide navigation in the app. The Navigate function also allows for a visual transition as the users move from screen to screen, which is set using ScreenTransition. In the example shown above, ScreenTransition.Cover was applied. There are a few different ScreenTransitions to choose from, and each one provides a slightly different user experience when navigating screens. ScreenTransitions will be covered in further detail later in this module. Similar to the Navigate function, you also have the option to use the Back() function. The Back() function is fairly straight-forward, it sends the user back to the previous screen. You can use Navigate to set one or more context variables. You can use this approach to pass parameters to a screen. If you've used another programming tool, this is similar to passing parameters to procedures.

www.dynamicscompanions.com Dynamics Companions

- 621 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Hidden screens You can have "Hidden screens" in your app for various purposes, such as: 

Documentation screen

Settings screen

Special permissions screen

A "Hidden screen" allows the creator of the app to add screens but not give users to access those screens. This is accomplished by not creating any navigation for users to those screens. There's an example later in this module to demonstrate this functionality further.

The navigation and back function In the previous section, you learned how to implement the Navigate and Back() functions using a Control. When implementing these functions, like any other function in Power Apps, there are certain arguments that need to be defined.

Navigate function Here's a breakdown of the syntax for the navigation function: Navigate(Screen, Transition [, UpdateContextRecord ] ) 

Screen - Required. The name of the screen to display.

ScreenTransition - Required. The visual transition to use between the current screen and the next screen.

UpdateContextRecord - Optional. A record that contains the name of at least one column and a value for each column. This record updates the context variables of the new screen. For more information, see UpdateContext function in Power Apps.

In the first argument, you specify the name of the screen to display. In the second argument, you specify how the old screen changes to the new screen. In the third argument, you have the option to specify a Context variable. Taking a step back to the second argument, ScreenTransition, there are a number of different ScreenTransitions you could apply. Each ScreenTransition produces a slightly different visual experience for the user.

Screen transitions ScreenTransition.Cover - The new screen slides into view, covering the current screen. ScreenTransition.Fade - The old screen fades away to reveal the new screen. ScreenTransition.None - The old screen is quickly replaced with the new screen.

www.dynamicscompanions.com Dynamics Companions

- 622 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

ScreenTransition.UnCover - The old screen slides out of view, uncovering the new screen. Here are some examples using ScreenTransitions. Formula

Description

Result

Navigate(Details, ScreenTransition.None)

Displays the Details screen with no transition or change in value for a context variable.

The Details screen appears quickly.

Navigate(Details, ScreenTransition.Fade)

Displays the Details screen with a Fade transition. No value of a context variable is changed.

The current screen fades away to show the Details screen.

Navigate(Details, Displays the Details screen with ScreenTransition.Fade, {ID: 12}) a Fade transition, and updates the value of the ID context variable to 12.

The current screen fades away to show the Details screen, and the context variable ID on the screen is set to 12.

The Back () function has an optional argument for ScreenTransition. Here's a more detailed example using these functions with multiple controls in a common real-world scenario. In many of the apps that you develop, certain screens may have multiple controls allowing users to navigate to different screens depending on the control they select. In the following example, you will create a three screen app to demonstrate the Navigate and Back() functionality. 1.

In Power Apps Studio, create 3 blank screens.

2.

On Screen1, add a Button control and change the Text property to Next.

3.

On Screen2, add two Button controls and change the Text of one button to Next and the other button control to Back.

4.

On Screen3, add a Button control and change the Text property to Back.

5.

On Screen1, set the Next button OnSelect property to Navigate(Screen2,ScreenTransition.Fade).

6.

On Screen2, set the OnSelect property for the Next button to Navigate(Screen3,ScreenTransition.Cover).

7.

Set the OnSelect property for the Back button to Back().

8.

On Screen3, set the OnSelect property for the Back button to Back().

9.

To test this, put the app in Preview or Play mode and navigate through the app as a user would.

As you select each button, notice the subtle visual transitions of each ScreenTransition. Remember, the Navigate function must include a ScreenTransition. If you tried to write your Navigate function like this, Navigate(Screen2), Power Apps would display a red squiggly line in the formula box indicating that there is an issue with the function as written.

www.dynamicscompanions.com Dynamics Companions

- 623 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Back () function When using the Back() function it should be noted, this will take you back to the previous screen that you navigated from, the key word being "navigated". To elaborate, this does not mean the screen you or the user was just on, you need to use the Navigate function to navigate away from the screen to then use the Back() function to get back there. This can be a little confusing, so here's an example of how this works. In the previous example there are 3 screens. Update the OnSelect property of the Next button on Screen1 from Navigate(Screen2,ScreenTransition.Cover) to Navigate(Screen3,ScreenTransition.Cover) and the text property to Jump to Screen 3. Now, when the user selects the button, the app will navigate to Screen3. Then when they select the Back button on Screen3, they will navigate back to Screen1 and skip Screen2 entirely. This is by design in Power Apps and is important to concept understand to ensure the navigation in your app is configured properly. Before moving on to the next section, add one more screen to the example app and rename the screen Documentation. With no Navigation pointing to this screen, it is not accessible to your end users. The purpose of this screen is to give the App creator a location in the app to make notes or add documentation about certain aspects of how the app functions. The App creator can also provide instructions for other editors of the app so they can quickly and easily identify what the previous creator did. In this simple four screen app example, you can see how easy it is to navigate screens by setting the OnSelect property of a control. There are several additional ways to navigate through your app covered in the next section.

More ways to use the navigation function As previously mentioned, one of the most common ways to move from screen to screen is by setting the OnSelect property of a control. Keep in mind that there are also several other ways to trigger the Navigate or Back() functions.

Navigating screens by setting the OnChange property of a drop-down control One option is to use a DropDown control and an If statement. With this solution, depending on the choice selected in the drop-down menu the app navigates to a specific screen. 1.

In Power Apps Studio, add 2 blank screens. There should be a total of 3 blank screens.

2.

On Screen1, add a dropdown control.

3.

Set the Items property for the dropdown control to [" ", "Active","Inactive"]

4.

Set the OnChange property for the dropdown control to the following www.dynamicscompanions.com Dynamics Companions

- 624 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If(Dropdown1.Selected.Value ="Active",Navigate(Screen2,ScreenTransition.Cover), If(Dropdown1.Selected.Value = "Inactive",Navigate(Screen3,ScreenTransition.Fade))) On your keyboard, hold the Alt key to test the new functionality. When the user selects Active from the drop-down menu, the user will be sent to Screen2. When the user selects Inactive from the drop-down menu, the user will be sent to Screen3. Finally, if the blank option is selected from the drop-down menu, the app will not navigate to another screen.

Using variables and the Timer control to navigate screens You can use a variable and an If statement to set navigation. Depending on what the variable is set to this will send the user to a specific screen. For example, if you have the question "Do you have additional feedback to provide regarding this incident?" If the user selects "Yes", then you want to open the Additional Information screen. If the user selects, "No", then you want to load the Form Completed screen. Another option is to use a timer control. When the time runs out, the app navigates to a different screen. For example, maybe you only want to allow a users 30 seconds to answer the questions on a screen before navigating to the next set of questions. The following example builds off the previous example and incorporates variables and a Timer control. 1.

On Screen1, add a Timer control.

2.

Set the Duration property to 10000 (milliseconds).

3.

Set the Auto start to On.

4.

Set the OnTimerEnd property to If(Dropdown1.Selected.Value = " ",Navigate(Screen2,ScreenTransition.None))

5.

Select the drop-down control and change the OnChange property to If(Dropdown1.Selected.Value = "Active",Set(varStatus,1),If(Dropdown1.Selected.Value = "Inactive",Set(varStatus,2),Set(varStatus,0)))

6.

Add a Button control under the drop-down menu, and set the Text property to Next.

7.

Set the OnSelect property for the button to If(varStatus = 1,Navigate(Screen2,ScreenTransition.Cover), If(varStatus = 2,Navigate(Screen3,ScreenTransition.Fade)))

Now, if the Timer Ends, the user is automatically sent to Screen two. If the user selects Active from the drop-down menu, a Variable named varStatus is set to 1. When the user selects the Next button, they will be sent to Screen2. If the user selects Inactive from the drop-down menu, a Variable named varStatus is set to 2. When the user selects the Next button, they will be sent to Screen3. Test this by putting the app in Preview or Play mode, select the Timer control and wait for 10 seconds. Now test the variables by selecting Active or Inactive from the drop-down menu and selecting the Next button.

www.dynamicscompanions.com Dynamics Companions

- 625 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

As you can see there are different ways to configure navigation in your app. In the previous example, the navigation automatically changed when the user selects a value in the drop-down control. In the second example, navigation can happen in two different ways: when the timer reaches zero or when the user selects a button. The variable still allows you to control which screen they navigate to based on the dropdown value selected, but they will not automatically navigate there when the value is selected. You have the flexibility to choose what works best in your solution.

Check your knowledge 1.

2.

3.

In Power Apps, the Back () Function sends the user to what screen? 

A hard-coded screen.

A pre-defined screen.

The previous screen the user navigated from.

Back() is not a valid function.

Which of the following ScreenTransitions is NOT an option to choose from when using the Navigate function? 

ScreenTransition.Cover

ScreenTransition.Fade

ScreenTransition.UnCover

ScreenTransition.Wipe

In certain scenarios you might create screens, but not build navigation to these screens, what is the purpose of doing this? 

To give other co-editors or owners insight around how the app was built in case additional changes are needed later.

To create Documentation about the app.

To keep track of certain settings, formatting, and or colors used in your app so they are easy to find.

All of these are reasons to have Hidden screens.

Summary In Power Apps, you can use a number of different controls, variables, and other functions to fully customize the end user's navigation experience. 

Use the Navigate function to send the user to any screen in your app.

Create additional navigational functionality by utilizing If statements, variables, and timer controls.

www.dynamicscompanions.com Dynamics Companions

- 626 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use the Back() function to send your end-users back to the screen that they previously navigated from.

By choosing to use a combination of different controls, properties, functions, and formulas you can develop and deploy an app that's both functionally sound and simple to use. It should also be noted, just because you can add navigation in many ways doesn't mean it's always the best to do so. Think about the end-user interacting with the app and keep it simple.

www.dynamicscompanions.com Dynamics Companions

- 627 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

How to build the UI in a canvas app in Power Apps Do you want to build a better UI for app users? This module helps you do that using themes, icons, images, personalization, different form factors, and controls.

Learning Objectives In this module, you will: 

Understand the basics of building the UI through themes, icons, control customization, and images.

Use personalization in a canvas app

Understand the differences between the Tablet and Mobile form factors

Prerequisites A basic understanding of how to create a Power Apps canvas app. General knowledge of Controls is also helpful but not required.

Use themes to quickly change the appearance of your app A quick and easy way to change the colors in your app is to apply a theme. In Power Apps, there are several out-of-the-box themes to choose from. The following screenshot illustrates all the themes that are available in your app.

www.dynamicscompanions.com Dynamics Companions

- 628 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

These themes have a specific set of default colors and visual elements which will alter the look and feel of your entire app. To use any of these themes in your Canvas app, select a theme from the ribbon. The changes to your app will take effect immediately. If none of the included themes work for your app, you can create a custom theme. For example, if you decide to select the Steel theme but want the screen background to be a lighter color, this can be easily done. To change the background of your screen, change the Fill property to RGBA(250, 250, 250, 1). The screen will be a slighter lighter shade of gray. Keep in mind, this only changed the fill of that specific screen, if you want to add a new blank screen it would still have the Fill property of RGBA(232, 232, 232, 1). This is by design when working with a canvas app. Also, there is no option to create a Custom theme for a canvas app and store it to be used for other apps. Typically, many organizations will select the theme that best suits their needs, and then alter the various control properties to align with their corporate branding.

www.dynamicscompanions.com Dynamics Companions

- 629 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Branding a control As noted earlier, one of the built-in themes may not match your organizations desired look and feel for the app. You can customize your app by changing various properties of the app controls. By adjusting a few of the Control properties, like Fill, Hover, and Border you can completely change how the control looks. If you decide to customize your controls, it's recommended that you do this thorough testing to ensure that you don't run into any complications when users interact with the app. For example, consider the Button control. The following are some of the properties of a Button control that you could customize to better fit your companies theme.

Typical properties These properties are in effect when the user is not interacting with the control. 

BorderColor - The color of a control's border.

BorderStyle - Determines whether a control's border is solid, dashed, dotted, or none.

Color - The color of text in a control.

Fill - The background color of a control

Disabled properties These properties are in effect when the control is disabled. A control can be disabled if the Disabled property is set to Disabled. 

DisabledColor - The color of text in a control if its DisplayMode property is set to Disabled.

DisabledFill - The background color of a control if its DisplayMode property is set to Disabled.

Hover properties These properties are in effect when the user hovers over the control with a mouse. 

HoverColor - The color of the text in a control when the user keeps the mouse pointer on it.

HoverFill - The background color of a control when the user keeps the mouse pointer on it.

These are just some of the properties that you could modify. For more details about the properties that you can customize, see Color and Border Properties in Power Apps. Note that each control is independent. This means that if you alter the HoverColor property of one button control on your screen or in your app, the other buttons in the app will remain unchanged. You must edit the properties of each control that you want to appear in a different manner.

www.dynamicscompanions.com Dynamics Companions

- 630 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Some color settings are only controlled by the theme There are certain aspects of controls that cannot be altered and are specific to the theme that you select. For example, here's an example of the Date picker control. 1.

In Power Apps Studio, add the Date picker control.

2.

Put the app in preview mode and select the control so that it opens.

3.

The color at the top of the Date picker control is specific to the theme, meaning there isn't a control property you can change to set the color manually. To change the color of that background you would have to select a different theme.

As you design your app, be sure to incorporate the use of icons. In the next section, you'll learn how to add an icon to a Canvas app to change the look and feel of the app.

Icons When designing your app, utilize Shapes and Icon controls when possible to enhance the user experience of your app. There are certain shapes and icons that are universally recognized that you will find in many of the apps that you use daily. For example, instead of adding a Button control to your app and setting the OnSelect property to Back(), you could just as easily use the Back icon control and set it's OnSelect property to Back().

www.dynamicscompanions.com Dynamics Companions

- 631 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Remember, icons are controls, and each control has a specific set of properties that can be modified to change how the control looks and functions. To view all of available icon controls, select Insert and then select the Icons drop-down menu.

These controls include arrows, geometric shapes, actions, and symbols. By incorporating shapes and icons, you can save some space and reduce clutter in your app, especially when working with a Phone form factor app. The Phone form factor app has a much smaller area for designing and adding controls so replacing some of the buttons with shapes and icons could really benefit the overall spacing of your app.

Images The Image control is a control that shows an image. The image may be from a local file or a data source. Adding an image, such as a company logo is an easy way to enhance the overall look and feel of your app. On each screen you can apply a Background image, as well as multiple Image controls. You're not limited to a certain number of images that you can display; you can have as many images as you would like. Too many images may cause issues with the app performance and load times, but you would have to add quite a few large images for this to be an issue. There are a set of properties specific to the Image control that allow you to customize how the image is displayed. When working with the Image control, a few of the more common properties you will most likely want to modify are the Image, Image position, and Transparency properties. 

Image - The name of the image that appears in an image, audio, or microphone control.

Image Position - The position (Fill, Fit, Stretch, Tile, or Center) of the image in a screen or a control if it isn't the same size as the image.

Transparency - The degree to which the controls behind an image remain visible.

Here’s a quick example of how to change the transparency and image position of an Image control. 1.

In Power Apps, create a Tablet app using the "Product Showcase" App template.

2.

On the left, under Screens, select Image1.

3.

In the right pane, set the Transparency property to 0.5. You will notice that the image immediately becomes lighter in color.

www.dynamicscompanions.com Dynamics Companions

- 632 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the Image position property, change this to Center. The image appears to be zoomed in or larger.

As you develop your app, keep these settings in mind when using the Image control to enhance the look and feel of your app.

Personalization In Power Apps, you can show information about the current user with the User() function. This includes the full name, email address, and the picture that's associated with the user who's signed into a canvas app. It will match the "Account" information that is displayed in the Power Apps players and studio, which can be found outside of any authored apps. This may not match the current user's information in Office 365 or other services. The User function returns a record of information about the current user: Property

Description

User().Email

Email address of the current user.

User().FullName

Full name of the current user, including first and last name.

User().Image

Image of the current user. This will be an image URL of the form "blob:identifier".

Set the Image property of the Image control to this value to display the image in the app. Here’s an example of how to add a user's profile picture, email, and name to your app. 1.

On the Insert tab, click or tap Media, and then click or tap Image.

2.

Set the Image property to this formula: User().Image

3.

On the Insert tab, click or tap Text, and then click or tap Label:

4.

Set the Text property to this formula: User().FullName

5.

Move the label so it's below the image control.

6.

Add another label, and set its Text property to this formula: User().Email

7.

Move the label so it's below the first label:

www.dynamicscompanions.com Dynamics Companions

- 633 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Using the tablet or phone form factors It is important to design your app for the primary device that it will be used on. There are two form factors to choose from, the Phone form factor and the Tablet form factor. The main difference between these is the Screen size. The screen size affects the amount of space available to build the app. The Phone form factor has a significantly smaller area to build your app, but if most of your users will be accessing the app from a mobile phone then this is the best form factor for you. When building for mobile, select controls that will be easy to use on a mobile device, ensure that the text is large enough to be easily seen, and design the app in a single column vertical format. The Tablet form factor has a much larger area for designing your app and is the best option if your users will be accessing the app from a tablet or PC. Because you have more screen size to work with, you will have more flexibility in designing this app. Regardless of the form factor that you choose; the functionality available in the Power Apps Studio will be the same. Take a moment and create two blank Canvas apps. For one of the apps use the Phone form factor and for the other app use the Tablet form factor. You will immediately notice the difference in the amount of space available on the screen to design your app.

www.dynamicscompanions.com Dynamics Companions

- 634 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Phone form factor

Tablet form factor

www.dynamicscompanions.com Dynamics Companions

- 635 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Depending on the form factor that you choose, you have the ability to alter the screen size. To view the current screen size and orientation, for either form factor, see following steps. 1.

In Power Apps Studio, in the upper-left corner, select File.

2.

On the left, select App settings.

When you are in the tablet app, you will notice multiple options to select from for the screen size. Be sure to select the appropriate size for the majority of your app users. 

16:9 (Default)

3:2 (Surface Pro 3)

16:10 (Widescreen)

4:3 (iPad)

Custom

The Phone form factor does not include screen size options.

Lock aspect ratio and lock orientation Other options that you might want to consider regarding the screen size and orientation include the lock aspect ratio and lock orientation settings. If you lock the aspect ratio, the app will retain the appropriate aspect ratio for a phone. If the app is running on another kind of device, the app will display incorrectly and may show unwanted results. If you unlock the aspect ratio, the app will adjust to the aspect ratio of the device on which it's running. If you lock the app's orientation, the app will retain the orientation that you specify. If the app is running on a device for which the screen is in a different orientation, the app will display incorrectly and may show unwanted results. If you unlock the app's orientation, it will adjust to the screen orientation of the device on which it's running. You can also modify the app's orientation by enabling Enable app embedding user experience in Advanced settings. This feature aligns the app when it's embedded and changes the background color of the hosting canvas to white.

Check your knowledge 1.

2.

When creating an app, what two form factors can you choose from? 

Tablet and PC

Tablet and Phone

Phone and PC

Tablet and iPhone

Which formula returns the full name of the current Power Apps user?

www.dynamicscompanions.com Dynamics Companions

- 636 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

User.FullName

FullName.User()

User().FullName

User().Name

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When using an Image Control, which of the following ImagePositions does NOT belong? 

Stretch

Fit

Tile

Expand

Summary There are many options available to enhance the usability and appearance of your app. Throughout this module, you explored themes, properties for changing a control's appearance, using icons and images, personalization, and the different form factors available. Some important items to remember are: 

There are several out-of-the box or default themes to choose from and these can be easily applied.

By modifying various Control properties, you can completely change how the control looks and functions when users interact with the app.

Use the User() function to personalize the app. For example, create a Welcome screen and greet the user by using the User() function.

You must select the form factor when you begin building your app. After you have selected tablet or mobile, it cannot be changed. With the tablet form factor, you can adjust the screen size.

www.dynamicscompanions.com Dynamics Companions

- 637 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Use and understand Controls in a canvas app in Power Apps Controls help create a better experience for the user and collect the appropriate data. This module will help you understand and use Controls.

Learning Objectives In this module, you will: 

Understand how to use controls in a canvas app

Use the different types of controls

Understand how Galleries and Forms related to controls

Prerequisites Basic knowledge of how to create a Power Apps canvas app.

Understand controls In Power Apps, you can add a variety of user interface (UI) elements to your canvas app and configure aspects of their appearance and behavior directly from the toolbar, Properties tab, or formula bar. These UI elements are called Controls. Many of the controls in Power Apps are just like the controls that you've used in other apps, such as labels, text-input boxes, drop-down lists, and navigation elements. You can find all the controls available in Power Apps on the Insert tab.

You can configure the appearance and behavior of a control by setting one or more of its properties. Each type of control has a different set of properties. Some properties, such as Height and Width, are common to almost every type of control, but other properties, such as ChevronFill are specific to only certain Controls. In addition to the controls listed above, there are other types of controls that you can add to enhance your apps: Galleries - These controls are layout containers that hold a set of controls that show data from a data source. For more information about galleries, see Work with data in a Power Apps canvas app.

www.dynamicscompanions.com Dynamics Companions

- 638 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Data table - The Data table control shows data from a data source in a format that includes column headers for each field that the control shows. As an app maker, you have full control over which fields appear and in what order. Like the Gallery control, the Data table control maintains a Selected property that points to the selected row. Therefore, you can link the Data table control to other controls. Forms - These controls show details about your data and let you create and edit items. for more information about forms, see Write data in a Power Apps canvas app. Media - These controls let you add background images and sounds. Controls include a camera button (so that users can take pictures from the app) and a barcode reader for quickly capturing identification information. Charts - These controls let you add charts so that users can do instant analysis. Icons - These controls include shapes, graphics, and symbols to enhance the user interface. They are quickly recognizable by your users to ease their interaction with the app. For more information about icon controls, see the How to build the UI in a canvas app in Power Apps module of this learning path. In this module, you will learn about some of these controls and their properties to see how you can incorporate them into your app to enhance the overall functionality. Before developing your app, take a moment to determine the functionality that you want to provide and then select the control that best fits those needs. The more familiar you are with controls and how to work with them. the easier it will be to design your app. In some cases, certain controls are almost interchangeable, and in those cases, you can use the control that you prefer. For example, the Dropdown and Combo box are similar controls. One key difference between them is that a Combo Box allows you to search for items as well as select multiple items. The Dropdown control does not support this functionality.

Core properties of controls Because controls are designed with specific use cases in mind, the properties for each control are slightly different. Here are some important properties to be aware of: 

Default - The initial value of a control before it is changed by the user. For example, when working with a Drop down control you could set the default value to appear when users see the control.

DelayOutput - Set to true to delay action during text input.

DisplayMode - Values can be Edit, View, or Disabled. Configures whether the control allows user input (Edit), only displays data (View), or is disabled (Disabled). For more information about display modes, see Use basic formulas to make better canvas apps in Power Apps learning path.

Items - The source of data that appears in a control such as a gallery, list, or chart.

OnChange - How the app responds when the user changes the value of a control. For example, when a user selects a different value in a Dropdown control.

OnSelect - How the app responds when the user taps or clicks a control.

www.dynamicscompanions.com Dynamics Companions

- 639 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Reset - Whether a control reverts to its default value. For more information, see Reset function in Power Apps.

Text - Text that appears on a control or that the user types into a control.

Tooltip - Explanatory text that appears when the user hovers over a control.

Visible - Whether a control appears or is hidden.

To view a list of all the controls and their properties, see Controls and properties in Power Apps.

Entering and displaying data with text controls In Power Apps, text controls are used for all kinds of purposes, such as displaying text, numbers, dates, and calculating currency. For example, you could calculate the value of two Text input controls and display the results in a Label control. There are several text controls that you could incorporate into your app. Each of these controls have slightly different purposes and use cases. For example, maybe you're creating an employee survey app, and you want to get employee feedback. In this scenario, you would use the Text input control and modify the Mode property to be Multiline instead of single line. Most likely, every app that you work with will have text controls so familiarizing yourself with these controls will be helpful as you develop your app. The follow list details the different text controls that are available. 

Label - A label shows data that you specify as a literal string of text, which appears exactly the way you type it, or as a formula that evaluates to a string of text. Labels often appear outside of any other control (such as a banner that identifies a screen), as a label that identifies another control (such as a rating or audio control), or in a gallery to show a specific type of information about an item.

Text input - A box in which the user can type text, numbers, and other data. For example, a user can specify data by simply typing in a text input control. Depending on how you configure the app, that data might be added to a data source, used to calculate a temporary value, or incorporated in some other way.

HTML text - An HTML text control not only shows plain text and numbers but also converts HTML tags, such as non-breaking spaces.

Rich text editor - The rich text editor control provides the app user a WYSIWYG editing area for formatting text. This control should be used if you want to allow the user to provide numbered lists or bullet lists. A good example is a Power Apps app that used to collect content for an article or newsletter, where you allow the user to add formatted text that would be helpful for the person compiling the article.

Pen input - A control in which the user can draw, erase, and highlight areas of an image. The user can use this control like a whiteboard, drawing diagrams and writing words that can be converted to typed text.

Here's a closer look at the Label control and a few examples so you can get a better idea as to how it works.

www.dynamicscompanions.com Dynamics Companions

- 640 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

First, add a label control to show text. 1.

In Power Apps Studio, add a Label control.

2.

Set Text property for the Label to "Hello, world" (including the double quotation marks).

Next, create a more dynamic solution by combining a button, gallery, and multiple label controls. In this scenario, you'll create a collection called CityPopulations that contains data about the population of various cities in Europe. Next, you'll show that data in a gallery that contains three labels, and you'll specify the type of data that each label will show. 1.

Add a button, and set its OnSelect property to this formula: ClearCollect(CityPopulations, {City:"London", Country:"United Kingdom", Population:8615000}, {City:"Berlin", Country:"Germany", Population:3562000}, {City:"Madrid", Country:"Spain", Population:3165000}, {City:"Rome", Country:"Italy", Population:2874000}, {City:"Paris", Country:"France", Population:2273000}, {City:"Hamburg", Country:"Germany", Population:1760000}, {City:"Barcelona", Country:"Spain", Population:1602000}, {City:"Munich", Country:"Germany", Population:1494000}, {City:"Milan", Country:"Italy", Population:1344000})

2.

Press and hold Alt Key, and select the Button control. (This will create your collection and store all the information.)

3.

Add a Blank vertical gallery and set its Items property to CityPopulations.

4.

With the gallery selected, in the right pane, change the layout from blank to Title, subtitle, and body.

5.

Select the top or first Label, in the Text property the default for example shows ThisItem.City, you could change this to something else if you would like. For more information about the ThisItem operator, see Operators and data types in Power Apps.

6.

Select the middle or second Label, which shows as ThisItem.Country.

7.

Select the last or third Label, change the Text property to ThisItem.Population.

www.dynamicscompanions.com Dynamics Companions

- 641 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

These were just two simple examples demonstrating some basic functionality of a label control. There are many other ways to utilize label controls in your app.

Additional controls for enhancing your app's usability At the beginning of the module, you learned what controls are, when to use them, and how to modify control properties. In this section, you get a more detailed look into some of the controls available from the Controls drop-down menu in the ribbon. On the Insert tab, if you select the Controls heading, you will get a list of several different controls.

www.dynamicscompanions.com Dynamics Companions

- 642 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Remember, every control was designed with different use cases in mind. The following information about a few of the controls will help you to decide when you might use each one.

Controls with pre-populated values Each of these controls allows you to determine the values the user can select from. Use these controls when you want to control the values for your data set. This is often an important consideration for reporting. As a trade-off, you may miss valuable insights that come from free form answers. Here's a closer look at the differences between each of these controls. 

Drop down - This control conserves screen real estate, especially when the list contains a large number of choices. The control takes up only one line unless the user selects the chevron to reveal more choices. This control will show a maximum of 500 items.

Combo box - This control allows you to search for items you will select. The search is performed on the server on the SearchField property so performance is not affected by very large data sources.

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. The user can specify a Boolean value by using this familiar control.

Radio - A Radio control, a standard HTML input control, is best used with only a few, mutuallyexclusive options.

www.dynamicscompanions.com Dynamics Companions

- 643 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Controls for ratings When you have a specific need for the app users to rate items, the following two controls provide a better experience than free form text or drop-down controls. 

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 - In this control, the user can indicate, for example, how much they liked something by selecting a certain number of stars.

Other available controls 

Toggle - Use this control to enhance the UI of the app. It functions in the same manner as the check box control.

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.

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.

Media Media controls give the app designer a way to display and share an audio file or video file easily, take a picture, scan bar codes, etc. For example, you need to build an employee safety training app. For the solution, you want to share a video with your employees and then have them acknowledge that they have completed the training. With the Video control, the safety video can be shown in the app and then the next screen would be a training acknowledgment form. Or maybe you have an expense report app and want to let users upload pictures of their receipts. By using the Camera control, the user can take a photo and attach the picture without leaving the app. Here are some details about the Media controls that are available: 

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.

Audio - This control plays a sound clip from a file, a recording from a Microphone control, or the audio track from a video file.

Camera - A control which allows the user to take photos by using the camera on the device.

www.dynamicscompanions.com Dynamics Companions

- 644 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Bar code scanner - This control opens a native scanner on an Android or iOS device. The scanner automatically detects a barcode, QR code, or data-matrix code when in view. The control doesn't support scanning in a web browser.

Microphone - A control that allows app users to record sounds from their device as long as the device has a microphone accessible. Audio is stored in 3gp format in Android, AAC format in iOS, and OGG format in web browsers.

Add picture - With this control users can take photos or upload image files from their device and update the data source with this content. On a mobile device, the user is presented with the device's choice dialog to choose between taking a photo or selecting one that is already available.

Here's how you can add a video to your app. In this example, you will have two screens. When a user selects the button on the first screen they will navigate to the second screen where a video will start playing automatically. 1.

In Power Apps studio, add a new blank screen. You should now have two screens.

2.

Make sure that you are on the first screen and add a Button control.

3.

On the left, under Screens, select Screen 2.

4.

On the ribbon, add a Video control.

5.

For the Media property, in the formula box, enter a video URL from YouTube. The URL must be inside quotations.

6.

Now set the AutoStart property to true.

7.

Go back to Screen 1, set the OnSelect property for the button to: Navigate(Screen2,ScreenTransition.Cover).

Test out your app. Put the app in preview or play mode and press the button.

Check your knowledge 1.

2.

If you want to set the initial value of a control, which property would you edit? 

OnSelect

Text

Default

Input

Which of the following statements is NOT True? 

The Combo box Control allows you to search for items to select, by default the dropdown control does not support this functionality.

The dropdown control shows a maximum of 500 items, this limit does not apply to the Combo box.

The Combo box supports the selection of multiple items, with a dropdown control you can only select a single item.

www.dynamicscompanions.com Dynamics Companions

- 645 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

The Combo box control shows a maximum of 500 items, this limit does not apply to the dropdown control.

 3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

When building an app, if you wanted to give users the ability to enter any value, which Control would you add to your app? 

Label

Text input

Drop down

Timer

Summary In this module, you learned more about controls and how you can incorporate them into your app. You also learned about the properties of controls and how you can modify them to enhance the functionality of your app. Depending on the app that you're developing, you can use several different controls, or you can only use a few specific ones. Here are a few important points to remember: 

There are many control options for placing text on a screen or allowing a user to enter text.

Use the pre-populated value controls to provide choices for the user.

By adding media controls directly to your app, you can enhance the functionality and reduce the number of steps for your user. For example, users can enter their expenses and upload their receipts without leaving the app.

www.dynamicscompanions.com Dynamics Companions

- 646 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Course PL-100T11: Create a business process flow in Power Automate This learning path introduces you to creating business process flows in Power Automate. This learning path can help you prepare for the Microsoft Certified: Power Platform App Maker Associate certification.

Prerequisites A basic understanding of Microsoft Power Automate.

www.dynamicscompanions.com Dynamics Companions

- 647 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Introduction to business process flows in Power Automate Do you want to create business process flows? This module will discuss what business process flows are and how to use them to solve business solutions. You will discover why automating the business process is important to organizations and how to build business process flow solutions by using Power Platform and Common Data Service. Additionally, you will learn how business process flows differ from regular Power Automate workflows and when to use each.

Learning Objectives In this module, you will: 

Discover why standardizing business process flows is important and valuable to an organization.

Learn about the difference between a workflow and a business process.

Find out about how business process flows are used within Power Platform and Common Data Service.

Prerequisites A basic understanding of how to model a business process as a set of stages, steps, and branching concepts and a familiarity with Power Platform.

Introduction to business process flows A business process flow is a series of ordered work steps that a user completes within a business process. In Microsoft Power Automate, a business process flow is composed of a series of discrete stages that leads a user along a path toward process completion. Each stage contains one or more fields (called data steps) that you should complete before proceeding to the next stage in the business process flow. A business process flow visually guides a user through stages within a process and shows progress toward process completion. A user can also see which stages that they have completed and which stages that they still need to complete within an instance of a process. Business process flows can be configured to require users to enter information into certain fields (data steps) before completing the stage and, if needed, you can also allow users to jump stages. All data that is collected while you are completing a business process flow is stored in one or more entities in Common Data Service.

www.dynamicscompanions.com Dynamics Companions

- 648 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

The following illustration shows a simple business process flow with two stages for adding questions to a survey. The business process flow is shown as a component of a model-driven solution in Power Apps.

Business process flows are created and managed by using Power Automate, and they are available for out-of-the-box entities and for your own custom entities. Microsoft has many prebuilt business process flows, or you can create your own. Additionally, an entity can have none, one, or many business process flows associated with it. Business process flows are customizable to fit many organizational needs.

Tip Business process flows are meant to guide users through steps that are required to complete a business process. You must have a valid Power Apps Dynamics 365 license or a valid Power Apps license to create or use a business process flow.

Differences between a business process flow and a regular flow in Power Automate A business process flow is a visual guide that is meant to help users complete a business process by using a set of predefined stages. Users are not limited on how long they run a business process or how long they have a stage open. All data that is associated with the business process flow can only be stored in one or more entities in Common Data Service, and you cannot associate a business process flow with another data source behind it. Common Data Service has many different out-of-the-box business process flows that you can use in its current state or modified to fit your needs. A Power Automate flow does not have any visual components like a business process flow. Power Automate flows can be configured to work with many different data sources and a flow can connect to many different data sources within the same flow. A flow can be configured to time out if it is not completed in a certain time and can be triggered to move between steps based on data or user

www.dynamicscompanions.com Dynamics Companions

- 649 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

interaction. Flows support complex logic and looping and a Power Automate flow can call another Power Automate flow as needed.

Business process flows value to organizations Business process flows allow organizations to quickly standardize how processes are completed and what data is collected at each stage. Business process flows support logical branching so they can be used to standardize many common business processes within an organization. Business process flows offer the following benefits: 

Improved outcomes

Consistent stages and work steps across all instances of the process

Improved data collection and reporting

Decreased time to complete the process

Predictable outcomes

Business process flows are simple to set up and administer. Business process users who are close to business operations and processes can create new business process flows or modify out-of-the-box business process flows by using Power Automate. Business process flows can be customized based on security roles, allowing access to the appropriate stages and steps based on a security role. Finally, the process of each instance of a business process flow can be monitored, and the data from the process flow can be used in Power BI dashboards and reporting for simplified administration.

Business process flows and the larger Power Platform Business process flows are deeply integrated with the Microsoft Power Platform. They are created, customized, and managed by using Power Automate. You can manage or create new business process flows by launching Power Automate and selecting Business process flows under My Flows in Power Automate, as shown in the following image.

www.dynamicscompanions.com Dynamics Companions

- 650 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can launch the new business process flows as a component of a model-driven Power App or a standalone application within Power Automate (called an immersive business process flow), as shown in the following image.

As mentioned previously, all data that is associated with a business process flow is stored in one or more Common Data Service entities (custom or standard). You could launch an instant Power Automate flow in conjunction with a business process flow to store data outside of Common Data Service if needed. Additionally, you can create Power BI dashboards from the data that was collected within the business process flow. Business process flows are deeply integrated within Power Platform and offer powerful ways to improve how you manage common business processes.

www.dynamicscompanions.com Dynamics Companions

- 651 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Uses of a business process flow and a standard Power Automate flow Knowing when to use a business process flow or a regular Power Automate flow to automate a processes or task can be difficult. The following guidelines can help you decide if you should use a business process flow or a standard Power Automate flow. Use a business process flow if you: 

Want to create automated business processes with Dynamics 365 Solutions.

Want a simple visual guide to help users complete a process.

Want to use out-of-the-box business process flows.

Have a Dynamics 365 license and want to create automated business processes with Common Data Service.

Use a Power Automate flow if you: 

Want to schedule a workflow to start based on a predefined time interval or after X minutes, hours, or days of some action or event.

Want to trigger a flow based on data outside of Common Data Service (SharePoint, for example).

Do not want to store data that is captured in the flow in Common Data Service.

Want to push notifications outside of Outlook (SMS or Gmail, for example).

Want to use and create workflows with only an Office 365 license.

Check your knowledge 1.

2.

3.

What license is required to create or use a business process flow? 

You must have a valid SharePoint license.

You must have a valid Office 365 license.

You must have a valid Dynamics 365 license.

You must have a valid Power Apps Dynamics 365 license or a valid Power Apps license.

What type of business process flows does Common Data Service include? 

A number of out-of-the-box predefined business process flows.

No existing business process flows. Only custom business process flows are available with Common Data Service.

A number of custom business process flows.

A number of regular Power Automate flows only.

Where can business process flows be embedded?

www.dynamicscompanions.com Dynamics Companions

- 652 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

They can be embedded into a public website.

They can be added as a Web Part in SharePoint.

They can be embedded in a custom .NET application.

They can be embedded in model-driven Power Apps.

What tool is used to build business process flows? 

Microsoft Visio

Microsoft Visual Studio

Microsoft Power Apps Canvas App Maker studio

Business process flow editor in Microsoft Power Automate

Summary Business process flows are a powerful way to visually standardize and guide users through a process. They ensure consistent implementation and data collection, can improve the quality of outcomes, and decrease the cycle times to complete a process. You can create business process flows as a custom solution, or you can choose to use or customize outof-the box business process flows that are shipped with Common Data Service and Dynamics solutions. Additionally, you can create business process flows as a stand-alone solution (called an immersive business process flow), or you can include them as a panel within a model-driven app. An important parameter to remember is that business process flows only store data within Common Data Service. You should use a regular Power Automate flow if you want to store data in a data source outside of Common Data Service, or if you want to trigger the flow based on a time or recurring condition or if you only have an Office 365 license available.

www.dynamicscompanions.com Dynamics Companions

- 653 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Create an immersive business process flow in Power Automate What is an immersive business process flow? This module answers that question and focuses on how to build an immersive business process flow by using Power Automate and Common Data Service.

Learning Objectives In this module, you will: 

Learn about immersive business process flow.

Discover the difference between an embedded business process and an immersive business process.

Create an immersive business process flow by using Power Automate and Common Data Service.

Prerequisites A basic understanding of how to model a business process as a set of stages, steps, and branching concepts by using Power Platform. You should also have an account that has permission to create entities and fields in Common Data Service to complete the exercises and have a Power Apps or Dynamics 365 license.

Introduction to immersive business process flows Business process flows are available in two different varieties: embedded within a model-driven app and as a stand-alone solution called an immersive business process flow. You should examine the differences between each before learning how to create an immersive business process flow. Embedded business process flows are visual representations of a series of work steps within an end-toend process. They always appear along the top of a model-driven app in their own control, as shown in the following image.

www.dynamicscompanions.com Dynamics Companions

- 654 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

An immersive business process flow can exist on its own, and it is built entirely within the Power Automate editor. They will always exist within the default solution in an instance of Common Data Service, and are only accessible within Power Automate or the data tab that is associated with an entity in Common Data Service. Immersive business process flows offer many of the same advantages of an embedded business process flow, but with the added advantage of simplified creation and streamlined management. You will learn how to build an immersive business process flow in the next units of this module. The following screenshot shows a simple two-step immersive business process flow.

By taking a closer look, you'll see that immersive and embedded business process flows look similar. The map of the business process flow is shown along the top of the screen and a main form is shown beneath it. The name of the business process flow is shown on the left side of the control, while each step (called a Stage) is shown as a red circle. A user selects the red circle of the current Stage and fills out information in a drop-down screen that includes various fields (called data steps). The key difference between immersive and embedded business process flows is that an embedded business process flow is a component within the larger model-driven app, while the immersive business

www.dynamicscompanions.com Dynamics Companions

- 655 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

process flow is a stand-alone solution. Embedded and immersive business process flows help users complete a process within the context of a larger solution. A user always views and completes an embedded business process flow within a model-driven app. An immersive business process flow is a stand-alone app, and it is built solely for the purpose of completing the business process. The immersive business process flow exists as the entire solution rather than a component of a larger model-driven app. Many of the concepts and techniques that are discussed and demonstrated within this learning path apply to both embedded and immersive business process flows. Immersive and embedded flows are similar. The main difference between them is how they are launched and the context that they are viewed in. The remainder of this module is focused on exploring and building an immersive business process flow.

Exercise - Create an immersive business process flow The following scenario and exercise will help you practice building an immersive business process flow with Power Automate and Common Data Service. Remember, all data that is associated with any business process flow is always stored in one or more entities within Common Data Service and business process flows.

Note To complete this exercise, you will need access to an account that has permission to create entities and fields in Common Data Service and you should have a Power Apps or Dynamics 365 license. Ask your Power Platform administrator for proper permissions or sign in and create a personal Power Apps and Power Automate development environment by using the Power Apps Community Plan (which is free). Sign up by accessing the Power Apps Community Plan page.

Scenario You work for SmogChecksRUs, a rapidly growing auto repair company that specializes in performing automotive smog checks and other auto services. SmogChecksRUs has been using a Microsoft Excel spreadsheet to collect customer and vehicle information, but now the marketing department has asked for a better way to collect information so they can follow up with customers and schedule checkups every two years, improve customer retention, and increase sales. Management believes that improved data collection and standardized processes will improve customer satisfaction, improve customer loyalty, and increase recurring business and overall sales revenue. You have decided to create an immersive business flow by using Power Automate to meet management goals.

Create an immersive business process flow 1.

Go to Power Automate and sign in to your local instance.

2.

Select the proper environment in the upper-right corner of the screen. www.dynamicscompanions.com Dynamics Companions

- 656 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

3.

Select My Flows on the menu on the left side of the screen and then select the Business process flows tab.

4.

Select the + New button on the upper-left corner of the screen.

www.dynamicscompanions.com Dynamics Companions

- 657 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Enter Customer Check In as the Flow name, select None (Immersive Business Process) under the entity drop-down list, and then select the Create button, as shown in the following screenshot. Wait a minute for the entity to be created, and then the Business process flow editor will launch.

6.

In the Business process flow editor, add fields to the new entity (customercheckin) that was automatically created in the previous step. Select Customer Check In New Stage, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 658 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

7.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select New Stage within the designer, rename the Stage to Collect Customer Info, and then select the Apply button, as shown in the following screenshot.

Next, you will add fields to the new CollectCustomerInfo entity in Common Data Service so you can capture customer information. 8.

Select the Collect Customer Info stage and then select the Click to add fields and forms hyperlink, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 659 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note If you select Click to add field and forms link from Power Automate, you may see the classic UI. To see the modern UI, Open Power Apps in a new window and sign-in. On the left, select Data then Entities. Find and select the Customer Check In entity. Add the fields as listed in the next step. 9.

Add fields to the collectcustomerinfo entity by selecting the Add Field button, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 660 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Add each of the fields from the following list. Enter the name and data type and then select the Done button each time you add a new field, as shown in the following screen.

Entry Date - Date Only

First Name - Text

Last Name - Text

Phone Number - Phone

Address - Text

www.dynamicscompanions.com Dynamics Companions

- 661 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

City - Text

State - Text

Postal Code - Text

Phone Number - Phone Number

Comments - Text Area

11. When you are finished, select the Save Entity button to save the new fields. Make sure that you select the Save Entity button or none of the fields will be added.

12. Close the current tab of the browser that is showing the entity fields, and then return to the business process flow designer screen.

Add fields as steps and finish the flow Now, you will add the fields as Steps in the first Stage in the Customer Check In business process flow. 1.

Refresh your browser and then select the Customer Check In Stage.

www.dynamicscompanions.com Dynamics Companions

- 662 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Data Step # 1, and then enter the following information: 

Step Name - Enter First Name.

Data Field - Select First Name from the drop-down menu.

Select the Required check box.

Select the Apply button.

www.dynamicscompanions.com Dynamics Companions

- 663 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Components tab and then drag a Data Step under Data Step #1, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 664 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select Data Step #2 and enter the following information: 

Step Name - Enter Last Name.

Data Field - Select Last Name from the drop-down menu.

Select the Required check box.

Select the Apply button.

www.dynamicscompanions.com Dynamics Companions

- 665 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Select the Components tab, and then drag additional data steps and add fields that were added earlier under Stage One (Entry Date, Address, City, State, and so on).

6.

When you are done, Stage 1 should appear as shown in the following figure. If all appears correct, select the Update button in the ribbon.

www.dynamicscompanions.com Dynamics Companions

- 666 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Note When the data process flow is used, data will be saved into the fields that you created in the customercheckin entity in Common Data Service. Now, you will collect information about the automobile being serviced, so you'll add a new stage and add fields about the automobile to the customercheckin entity. 7.

Select the Components tab and drag a new stage to the right of Stage 1. Make sure to drop the new stage into the plus (+) sign. The new stage should resemble the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 667 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

8.

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Repeat the steps that were covered for Stage 1, and then add the following fields and steps: 

Automobile Make - Text

Automobile Model - Text

Automobile Year - Whole Number

Automobile Mileage - Whole Number

Automobile Comments - Text Area

Make sure to save the entity after you add the new fields.

10. When you are done adding the data steps, select the Update button in the ribbon. Your completed Stage 2 should look like the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 668 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exercise - Run the business process flow and view data Now that you have a new business process flow, you can try it out and discover how the data is stored after it has been run. 1.

Select the Update button in the top ribbon.

2.

Close the business process flow designer after you see the message that the process flow has updated successfully.

3.

Go back to My Flows. Select Business process flows, where you should see the new flow listed.

Note You can see all immersive business process flows that are in process or that have been run by going to the main Power Automate page, selecting the My flows icon on the left menu, and then selecting the Business process flows tab. 4.

Select the Run arrow, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 669 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This selection will launch a new instance of the flow that you created. 5.

Enter a name in the Name field on the General form (main form) and then select Save, as shown in the following figure.

6.

After you select the Save button, select the red circle for the first stage, fill out the information, and then select the Next Stage button.

7.

Select the second stage, fill out the vehicle information, and then select the Finish button.

www.dynamicscompanions.com Dynamics Companions

- 670 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you select the Finish button, the button in Stage 2 should turn green and the data that you entered is automatically saved.

8.

You can create additional records by launching Power Automate, selecting My Flows and Business process flows, and then selecting the arrow next to the Customer Check In business process flow, as shown in the following screenshot.

View the created data You can view the data that you created for running the flow by following these steps: 1.

Go to Power Apps and sign in.

www.dynamicscompanions.com Dynamics Companions

- 671 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

2.

Select the environment that you used to create the Customer Check In business process flow, as shown in the following screenshot.

3.

Select the Solutions menu on the left side of the screen.

www.dynamicscompanions.com Dynamics Companions

- 672 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Double-click the Common Data Services Default Solution to open it, as shown in the following figure.

5.

Select the Customer Check In entity.

www.dynamicscompanions.com Dynamics Companions

- 673 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

6.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Data tab then click Select view on the right side of the screen, and then select the All Data view option.

Now, you can view the all the data that you created with your new immersive business process flow.

www.dynamicscompanions.com Dynamics Companions

- 674 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

In the next and final module of this learning path, you will improve your new immersive flow by customizing the form that is associated with your flow, adding logical branching, and adding instant workflow notification to make your new immersive business process flow even more powerful.

Check your knowledge 1.

2.

3.

4.

Which of the following best describes an immersive business process flow? 

They are embedded within a model-driven app.

They are stand-alone and launched in Power Automate.

They are launched and run from Microsoft Visio.

They can be launched within a SharePoint team site.

Where do immersive business process flows store all data that is collected from the flow? 

Any source that is accessible through a connector

In SQL Server in the cloud or on-prem

Common Data Service entities

SharePoint

Which item is a key benefit of an immersive business process flow? 

Ease of development and deployment

Ability to store data in multiple sources

Mobile interface

The only kind of business process flows that support running within Microsoft Visio

How do immersive and embedded business process flows mainly differ? 

How they are launched and the context that they are viewed within

How they are built

Capability

Visual Process Maps

Summary This module explained the tools that you can use for building your first immersive business process flow. In addition, you learned about the following concepts: 

The definition of an immersive business process flow.

The differences between an embedded and immersive business process flow.

How to create a new immersive business process flow in Power Automate.

How to add fields to an entity by using the business process flow designer.

www.dynamicscompanions.com Dynamics Companions

- 675 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

How to build and save a two-step business immersive business process flow by using stages and data steps.

How to run an immersive business process flow.

How to view the data that you created in the new immersive business process flow.

Though immersive business process flows are the main focus of this module, business process flows can also be created and embedded within a model-driven application. If you want to learn more about embedded business process flows, select the following links for a series of videos that demonstrate the building of an embedded business process flow within a model-driven app. The videos are informative and led by Microsoft Power Automate Product Managers. 

Introduction & Planning a Business Process Flow

Building a Model Driven App

Build A Business Process Flow and Add to Model Driven Apps

Add a Flow to help manage Stages in a Business Process Flow

Watching the Business Process Flow in Action

www.dynamicscompanions.com Dynamics Companions

- 676 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Understand advanced business process flow concepts in Power Automate Do you want to improve your business process flow? This module introduces more advanced business process flow concepts and techniques that you can use to help improve your flow.

Learning Objectives In this module, you will: 

Learn about branching logic.

Create additional fields and a main form to enhance a business process flow.

Discover how to use instant flows with business process flows.

Enhance immersive business process flows by using advanced techniques.

Prerequisites A basic understanding of how to model a business process as a set of stages, steps, and branching concepts and a familiarity with Power Platform.

Introduction to logical branching in business process flows The previous module of this learning path explained how to create a simple, two-step linear business process flow. Some business processes are simple step-by-step sequential workflows, but many processes might need branching logic that requires one set of stages for one condition and another set of stages for an alternative condition. Think of this logic as a simple if then else statement. Logical branching requires a decision point and a test of a value or condition. If a condition matches a certain value, then the flow goes through one branch with one or many stages; if it does not, then the flow goes through another set of one or many stages. Occasionally, the two logical paths will meet at a rendezvous point; other times, they will not. The following sections explore how you can use logical branching with business process flows. Branching logic is useful when you are trying to model a business process to standardize data collection and improve process outcomes. Logical branching enables the creation of business process flows that can adapt to different conditions within the same flow instead of having to create and launch many different flows to handle one condition or another. For example, consider the scenario from the previous module, where customers refer to the fictitious company SmogChecksRUs for bi-annual smog checks on their vehicles. In many jurisdictions, different

www.dynamicscompanions.com Dynamics Companions

- 677 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

requirements are in place for emission control standards and equipment based on the year of the vehicle manufacture. It would be useful to be able to model all required tests within a single business process flow. You can accomplish this task by using logical branching within a business process flow. The following diagram models the branching business logic that you need to build into your flow.

The business process flow logical diagram shows that the smog equipment and the required checks are different for vehicles that are built before or during 1971 and after 1971. As a result, you need to add a logical branch to check the year when the vehicle was manufactured, collect different information, and then perform different checks on vehicles that are built after 1971. The exercises at the end of this module explain how to build a business process flow to manage this scenario. Unfortunately, business process flows have some limitations on what can be modeled with logical branching. The following sections examine what types of logical branching can't be modeled and built in business process flows today.

Unsupported logical branching and a possible work-around Occasionally, you will want to model a business process that has multiple branches, and not all branches end up at the same rendezvous stage. Currently, this situation is not allowed in a business process flow. An example of an unsupported flow is shown in the following image.

www.dynamicscompanions.com Dynamics Companions

- 678 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Notice the choices that exist around the Vehicle Service decision point. Two of the branches end up at the Issue or Deny Smog Certificate stage and then move into the Collect Payment stage, whereas the top branch skips the Issue or Deny Smog Certificate stage and then ends at the Collect Payment stage. This logical model is not supported. All stages at a decision point must resolve to the same stage, and cannot have intermediate stages for some but not other branches. The root of the problem in the preceding figure is that the logic is not modeled properly. The decision stage is modeling two if then else conditions and not one. A better way to model this logic is to add a second decision point, as shown in the following figure. The approach that is shown in the diagram is supported because the decision stages are each testing one condition and all resolve to a single stage.

Study this example so you understand how to add another logical branch and model business process flows correctly.

Instant flows Business process flows aren't the exclusive workflow automation option that is available to an entity in Common Data Service. In fact, a single business process flow can run against up to five entities in Common Data Service. Dynamics 365 workflows are also supported as part of a business process flow.

www.dynamicscompanions.com Dynamics Companions

- 679 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

This topic is beyond the scope of this learning path, but if you are interested in this topic, you can learn more about Dynamics 365 workflows by selecting the related link in the summary unit of this module. A third workflow automation, called instant flows, in Power Automate offers a powerful capability that can supplement business process flows. Microsoft Power Automate offers instant workflows that can run (trigger) automatically based on a schedule, time, data value, or if a record is added, selected, or modified. These workflows can work in conjunction with a business process flow to gather approvals, copy data from Common Data Service to another data source, or trigger an email notification to specific users to alert them that something has changed and needs their attention. You can make instant flows that automatically trigger based on a record that is created, deleted, or modified, or you can make the flows run (trigger) by having a user select a button within a step in a stage. Instant flows are made with Power Automate and they start with a single trigger followed by a series of actions. The following figure shows an example of an instant flow that sends an approval request to a user when a record in an entity in Common Data Service is modified. In the exercises at the end of this module, you'll create an instant workflow in Power Automate and add it to your business process solution.

Business process flows work within Power Platform and many options are available, including instant flows and approval flows that can run in concert with a business process flow. Business process flows don't exclude the possibility of adding more capabilities to the envisioned solution by using additional components of Power Platform like Power Apps, Power Automate instant flows, or Power BI Dashboards. You can read more about instant flows by selecting the related links in the summary unit within this module.

www.dynamicscompanions.com Dynamics Companions

- 680 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Enhance the form to augment a business process flow Examine the business process flow that was created in the exercise for the previous module, Create an immersive business process flow in Power Automate. Review the following screenshot and notice the visual representation of the process flow and a form under the business process flow called General, which contains only the Name and Owner fields.

If you want to add more fields to a form such as this, it would be beneficial. For example, if you want to record the amount of the invoice, you could record an autogenerated invoice number and then add general notes about the service that you completed for a customer. Adding more fields and displaying them on a form that is associated with an immersive business process flow can be simple and quick. These flows are powerful, and you are only limited by your imagination and skill.

Exercise – Add branching logic to a business process flow This exercise assumes that you have completed the exercise to create an immersive business process flow in the previous module of this learning path. If you have not, return to the previous module and complete the exercises within prior to attempting the exercises in this module. In this exercise, you'll enhance the business process flow by adding a logical branch to determine what test needs to be performed and what information is required to collect to complete a smog check on a vehicle based on the vehicle's manufacture year. You will add logic that will provide a different set of instructions for vehicles that were manufactured prior to, or during, 1971 versus vehicles that were manufactured after 1971. 1.

Sign in to Power Automate and make sure that you are in the same environment that you used to create the process flow in the previous module.

2.

Select My flows and then select Business process flows.

www.dynamicscompanions.com Dynamics Companions

- 681 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Edit button (pencil icon) and open the Customer Check In business process flow in the Business process flow editor.

Before you create the conditions, you need to set up the data that you want to collect in each stage that you add. Select the Customer Check In stage and add the following fields by using the Click to add field and forms hyperlink on the right side of the page.

Note The entity window may open in the an older UI. Alternatively, you can open Power Apps, select your environment, expand Data and select Entities to see the modern UI. 1.

Select the Add field button in the ribbon above the fields that are shown for the Customer Check In entity, as shown in the following figure, and then add the following fields.

Smog Pump Intact - Two Options - Set Yes as default

PVC Valve Intact - Two Options - Set Yes as default

Aftermarket Exhaust Headers - Two Options - Set No as default

Comments Pre 1972 - Text Area www.dynamicscompanions.com Dynamics Companions

- 682 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Exhaust Test Performed with Passing Score - Two Options - Set Yes as default

HC Reading at 2000 RPM - Floating Number

O2 Reading 2000 RPM - Floating Number

CO Reading 2000 RPM - Floating Number

Original Equipment - Two Options - Set Yes as default

Comments Post 1972 - Text Area

Amount - Currency

Certificate Number - Whole Number

Payment Method - Create a new option set with the following options: a.

Cash

b. Mastercard c.

Visa

d. Discover e.

Debit Card

f.

Bit Coin

www.dynamicscompanions.com Dynamics Companions

- 683 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

After you have created the new fields, select the Save Entity button and then close the screen and return to the Business process flow designer.

www.dynamicscompanions.com Dynamics Companions

- 684 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

2.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Condition flow control under the Components tab and then drag it to the right of the Customer Check In stage, as shown in the following image.

www.dynamicscompanions.com Dynamics Companions

- 685 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

3.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Condition component within the editor and enter the following information: 

Display Name - Manufacture Year Pre or Post 1971

Field - Automobile Year

Operator - Is greater than

Type - Value

Value - 1971

The entries should resemble the following screenshot. When finished, select the Apply button.

www.dynamicscompanions.com Dynamics Companions

- 686 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Select the Components tab and then drag a new stage to the plus (+) sign on the right of the page and another to the plus (+) sign under the Condition stage, as shown in the following figure. Name each of the new stages by selecting each new stage and entering the new name.

www.dynamicscompanions.com Dynamics Companions

- 687 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

5.

Drag another stage to the right of the Customer Check In Post 1971 Smog Check stage, as shown in the following screenshot. Rename this last stage as Collect Payment.

6.

Connect the Customer Check In 1971 or Older Smog Check stage to the Collect Payment Stage by following these steps: a.

Select the Customer Check In 1971 or Older Smog Check stage.

b. Select Connector in the ribbon and then select the Connect option. c.

Select the Customer Check In Collect Payment stage to connect the two stages, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 688 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Now, you will add the fields that you created to each stage. Refresh your browser and then select the following stages. Add the fields that are noted for each stage as a step under the stage by selecting the details link drop-down menu and then adding data steps. Add a data step for each field within each stage. When you are done, you should have a data step under each of the following stages. Stage - Customer Check In Post 1971 - add the following fields by using the Add field option: 

Smog Pump Intact o

PVC Valve Intact

o

Aftermarket Exhaust Headers

o

Comments Pre 1972

Stage - Customer Check In 1971 or Older - add the following fields: o

Exhaust Test Performed with Passing Score

o

HC Reading at 2000 RPM

o

O2 Reading 2000 RPM

o

CO Reading 2000 RPM

o

Original Equipment

o

Comments Post 1972

Stage - Customer Check In Collect Payment - add the following fields: o

Amount

o

Certificate Number

o

Payment Method

When you're done, select the Update button in the top ribbon. Your business process flow should look like the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 689 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Now, you'll test the enhanced business process flow. 1.

Select My flows and then Business process flows.

2.

Run the Customer Check In flow by selecting the run button (the little triangle button next to the name of the flow).

You can enter a vehicle with a manufactured date of 1971 or before and another after 1971. Notice that the smog check information in Stage 3 changes based on the year of vehicle manufacture. Additionally, notice that both potential flows reconnect again at the last stage called Collect Payment.

Exercise – Add an instant flow In the previous exercise, you created a business process flow that includes logical branching for vehicles that were made in 1971 or before and all others that were made in 1972 and beyond. Now, you will enhance that flow by adding a simple instant flow in Power Automate. You'll create an instant flow that sends an email to the store manager (you) when a new customer check-in record is created. 1.

Sign in to Power Automate and select My flows.

2.

Select + New in the ribbon in the left corner of the screen.

3.

Select the + Instant-from blank option, as shown in the following screenshot.

4.

Select the Skip button to open the flow instant designer.

www.dynamicscompanions.com Dynamics Companions

- 690 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

5.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Enter Common Data Service in the connector search dialog box, as shown in the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 691 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

6.

Select the Common Data Service connector and the When a Record is created trigger. Select the Environment name that you used in the previous exercises, select Customer Check In from the Entity Name field, select the User in the Scope field, and then select + New step, as shown in the following figure.

7.

Enter Send Email in the actions search box and then select Send an email notification (V3).

8.

Enter the following information into the Send an email notification (V3) action:

www.dynamicscompanions.com Dynamics Companions

- 692 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

To - Enter your email address so you receive an email and can see how the instant flow works.

Subject - Enter A record was added to the Customer Check In entity.

Select the First Name and Last Name fields from the list of fields under the Dynamic content option. 

9.

Email Body - Enter A new record for (select the new_firstname field and the new_lastname field), and then type was entered today!

Save the flow by selecting Save in the top ribbon.

Run the instant flow 1.

Close the instant flow that you created and then select My flows and Business process flows.

2.

Run the Customer Check In business process flow.

3.

Enter some values in the first stage fields and then enter a value in the Name field on the main screen (the field is on the General form under the Business process flow diagram) so that values are in the record before you save it.

4.

Save the record. An email will appear in your inbox similar to the one in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 693 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Congratulations, you have now created an instant flow that works with your business process flow.

Exercise – Enhance the main form that is associated with the business process flow One last enhancement needs to be made before you can complete your business process flow. Before you begin, quickly review the fields on the main form under the diagram of your business process flow. The following screenshot shows a new instance of your business process flow. Notice that only two fields are shown on the main screen (outlined in red): Name and Owner. The name of the record is similar to the title of this record, and the owner of the record is the current user who created the instance of the current business process flow. Now, you will add some fields to make this screen more useful.

Add fields to the main form Follow these steps to add fields to the main form.

www.dynamicscompanions.com Dynamics Companions

- 694 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

1.

Sign in to Power Automate, make sure that you are in the proper environment that you have been working in, select My flows, and then select Business process flows.

2.

Open the Customer Check In flow in design mode by selecting the pencil icon, as shown in the following screenshot.

3.

Select the last stage (Collect Payment) and then select the Data Fields and Forms link.

www.dynamicscompanions.com Dynamics Companions

- 695 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

4.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Start your enhancements by selecting the +Add field button and then adding the following fields.

Clerk - Text

Transaction Date - Date Only

Location - New Option Set a.

Los Angeles

b. San Francisco

www.dynamicscompanions.com Dynamics Companions

- 696 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

c.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

San Diego

d. Portland 

Invoice Number - Autonumber - leave the defaults that are provided by Power Automate and Common Data Service

Service Comments - Text Area

5.

After you have added the new fields, save the entity by selecting the Save Entity button. Don't skip saving the entity or your new fields will not be saved with the entity.

6.

To enhance the main form, select the Forms tab on the current screen, as shown in the following figure.

7.

Select the top main form name, which is a hyperlink to the form designer (the name of your form might be different). This action will open the WYSIWYG forms designer. The WYSIWYG designer is not available for immersive business forms at this time.

8.

Select Switch to classic when the new screen opens.

www.dynamicscompanions.com Dynamics Companions

- 697 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Scroll down to the General section at the bottom of the form. Double-click the Name field, rename the invoice title label to Invoice Description, and then select the OK button.

10. Drag the new fields that you previously added in this exercise onto the form, as shown in the following screenshot. Select the Save button and then select the Publish button in the ribbon at the top of the form designer.

www.dynamicscompanions.com Dynamics Companions

- 698 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

11. Close the Designer tab in the browser. 12. Go back to the home page of Power Automate. Select My flows and Business process flows. Select the Customer Check In flow and run an instance of the flow by selecting the small triangle icon next to the flow name. It should look like the following screenshot. Add data to the main form and the stages and then save the record.

www.dynamicscompanions.com Dynamics Companions

- 699 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Add read-only fields to the form Your next task is to add a few fields to the main form from the data that you entered within a few of the stages. You will make these fields read-only. 1.

Go back to the list of business process flows (available from My flows in Power Automate).

2.

Select the pencil icon next to the Customer Check In flow to enter the business process flow designer.

3.

Select the Collect Payment stage and then select the Click to add fields and forms hyperlink, as shown in the following figure.

www.dynamicscompanions.com Dynamics Companions

- 700 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

4.

Select the Forms tab.

5.

Select the name of the main form, which is a hyperlink to the form designer.

www.dynamicscompanions.com Dynamics Companions

- 701 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

6.

Select Switch to classic, as shown in the following figure. Now, you are back at the form designer, where you'll make a few more changes.

7.

Enhance the main form with some of the data that you collect within the stages. Clear the Only show unused fields option above the list of fields.

www.dynamicscompanions.com Dynamics Companions

- 702 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

8.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You should see all the fields that are available within the Customer Check In entity. Drag the following fields from the field panel into the General section of the form, as shown in the following screenshot. 

Entry Date

First Name

Last Name

Smog Cert Number

www.dynamicscompanions.com Dynamics Companions

- 703 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

9.

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Double-click the Entry Date field that you added and make it read-only, and then select the OK button.

www.dynamicscompanions.com Dynamics Companions

- 704 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

10. Do the same for the following fields to also make them read-only. 

First Name

Last Name

Smog Cert Number

11. Select the Save button in the ribbon and then select Publish.

www.dynamicscompanions.com Dynamics Companions

- 705 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

12. Close the Form Designer tab and return to the business process flow designer. Double-click the first stage and rename it to Customer Info. Double-click the second stage and rename to Automobile Info, as shown in the following figure. Select the Update button in the ribbon so all the changes are saved and ready to use.

13. Close the flow designer screen and refresh your browser. Run the Customer Check In flow to check that all the changes that you made are working properly. The business process flow should look like the following screenshot.

www.dynamicscompanions.com Dynamics Companions

- 706 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

You can create a new instance of the Customer Check In flow by selecting the + Add record button in the ribbon.

Congratulations, you've created a working business process flow.

www.dynamicscompanions.com Dynamics Companions

- 707 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Check your knowledge 1.

2.

3.

4.

Which Microsoft product can run business process flows? 

SharePoint

Excel

Power Automate

Microsoft PowerPoint

What is the main benefit that branching logic delivers to business process flows? 

Multilanguage support in the same business process flow

Allows "or" logic

A single business process can be used for many different conditions

Allows "not" logic

Which one of the following statements is true? 

Power Automate instant flows cannot be used with the same Common Data Service entity as a business process flow.

Dynamics 365 workflows cannot be used with the same Common Data Service entity as a business process flow.

Power Automate instant flows, Dynamics 365 workflows, and business process flows can all be used with the same Common Data Service entity(s).

Power Automate instant flows, Dynamics 365 workflows, and business process flows can only be used with the same Common Data Service entity(s).

Which of the following statements about business process flows is true? 

Business process flows can only be used within a model-driven app.

Business process flows are available in two formats - immersive and embedded.

Business process flows do not have a visual component.

Business process flows do not support conditional branching.

Summary You have now learned how to improve the immersive business process flow that you created in an earlier module by using the following advanced techniques: 

Creating logical branching within a business process flow

Using instant flows with an immersive business process flow

Creating additional fields and enhancing the main form to improve the usefulness of a business process flow

www.dynamicscompanions.com Dynamics Companions

- 708 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

If you want to learn more about this topic, select the following links: 

Read more about Business process flow logical branching .

Learn more about using Instant flows .

Additional information about Business process flows .

www.dynamicscompanions.com Dynamics Companions

- 709 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

Index Common Data Service ..... 3, 4, 6, 7, 8, 17, 18, 19, 22, 27, 28, 29, 30, 39, 44, 48, 52, 67, 69, 74, 75, 76, 77, 79, 80, 81, 82, 83, 85, 86, 90, 93, 96, 97, 99, 105, 106, 107, 109, 113, 117, 119, 178, 179, 180, 190, 195, 214, 216, 217, 224, 227, 239, 240, 241, 242, 243, 244, 248, 249, 250, 251, 253, 254, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 276, 279, 281, 282, 283, 284, 285, 286, 289, 290, 291, 292, 294, 295, 297, 303, 304, 305, 306, 311, 312, 314, 315, 316, 326, 337, 347, 361, 362, 367, 392, 401, 593, 594, 602, 604, 609, 610, 618, 620, 653, 654, 656, 657, 658, 659, 660, 661, 664, 672, 678, 680, 684, 685, 696, 697, 702, 713 Connections ......................................................................... 50, 205, 363 Data Sources.....................................................................................28, 52 Dynamics 365 ..... 5, 10, 22, 27, 30, 52, 66, 68, 75, 81, 82, 83, 96, 125, 126, 177, 178, 180, 195, 209, 255, 261, 264, 272, 274, 283, 284, 286, 289, 290, 295, 361, 367, 393, 400, 401, 402, 432, 654, 657, 659, 661, 684, 713 Excel . 8, 11, 19, 21, 22, 24, 28, 30, 49, 50, 52, 61, 62, 70, 74, 76, 81, 90, 91, 93, 95, 96, 123, 127, 142, 144, 177, 231, 233, 264, 312, 314, 315, 316, 319, 356, 386, 398, 447, 479, 480, 485, 488, 489, 496, 500, 501, 505, 507, 508, 509, 510, 514, 515, 517, 526, 577, 581, 588, 661, 713 Licensing ................................................ 7, 27, 44, 223, 272, 286, 290 Office 365 .... 10, 22, 49, 131, 132, 144, 145, 151, 219, 220, 362, 365, 373, 375, 378, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 396, 397, 398, 401, 409, 415, 416, 426, 430, 432, 448, 449, 460, 461, 462, 463, 464, 465, 471, 472, 473, 475, 476, 477, 478, 638, 657, 658 Power Apps Admin Center ................................................ 24, 52, 258

www.dynamicscompanions.com Dynamics Companions

- 710 -

Power Apps Mobile .................................................. 24, 26, 51, 66, 71 Power Apps Studio24, 25, 39, 50, 52, 57, 66, 67, 351, 352, 628, 629, 636, 639, 641, 646 Power Automate 4, 5, 6, 9, 10, 14, 18, 19, 28, 30, 31, 32, 36, 37, 48, 49, 52, 68, 74, 102, 118, 123, 124, 125, 126, 129, 130, 131, 132, 134, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 150, 151, 152, 153, 154, 155, 158, 159, 160, 161, 164, 165, 171, 172, 175, 177, 178, 180, 182, 183, 187, 188, 189, 190, 195, 197, 198, 199, 200, 201, 202, 203, 207, 209, 210, 211, 212, 215, 216, 217, 221, 222, 223, 224, 225, 226, 227, 233, 238, 240, 241, 261, 262, 266, 268, 271, 273, 274, 279, 281, 284, 331, 355, 356, 357, 359, 360, 362, 365, 366, 368, 370, 371, 372, 373, 378, 385, 388, 391, 393, 396, 397, 399, 401, 402, 403, 404, 418, 421, 422, 423, 425, 427, 430, 431, 432, 433, 434, 435, 436, 437, 439, 443, 447, 448, 449, 450, 452, 454, 461, 466, 476, 477, 593, 594, 596, 597, 598, 599, 600, 602, 603, 604, 605, 609, 610, 612, 613, 614, 615, 616, 618, 619, 620, 621, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 665, 674, 676, 680, 681, 682, 685, 686, 695, 700, 702, 704, 705, 713 SharePoint ... 5, 21, 22, 27, 28, 31, 39, 40, 43, 49, 52, 70, 79, 81, 96, 116, 123, 125, 126, 127, 134, 147, 148, 152, 154, 155, 156, 157, 158, 160, 161, 162, 163, 164, 177, 182, 183, 184, 186, 187, 189, 209, 224, 337, 351, 377, 381, 383, 384, 385, 386, 391, 392, 398, 401, 403, 404, 418, 419, 420, 434, 442, 462, 463, 509, 594, 610, 657, 658, 680, 713 Skills ............................................................................................................16 SQL Server ... 22, 49, 96, 125, 127, 184, 186, 189, 251, 269, 345, 358, 485, 680

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


DYNAMICS COMPANIONS

CERTIFICATION EXAM STUDY GUIDE CERTIFICATION EXAM STUDY GUIDE

EXAM PL‐100: POWER PLATFORM APP MAKER ASSOCIATE

EXAM PL-100: Power Platform App Maker Associate This study guide contains all the exam prep content, including walkthroughs, practice exercises and sample Questions following core courses that are recommended for the PL-100 Power Platform App Maker Associate certification. Course PL-100T01 - Create a canvas app in Power App Course PL-100T02 - Create a model-driven application in Power Apps Course PL-100T03 - Automate a business process using Power Automate Course PL-100T04 - Manage permissions and administration for Common Data Service Course PL-100T05 - Get started using Common Data Service Course PL-100T06 - Master advanced techniques for Power Apps canvas apps Course PL-100T07 - Use best practices to secure and govern Power Automate environments Course PL-100T08 - Create and use analytics reports with Power BI Course PL-100T09 - Bring AI to your business with AI Builder Course PL-100T10 - Use the UI and controls in a canvas app in Power Apps Course PL-100T11 - Create a business process flow in Power Automate

www.dynamicscompanions.com Dynamics Companions

Visit www.dynamicscompanions.com for more books, eBooks, resources and downloads

- 711 -

www.blindsquirrelpublishing.com © 2020 Blind Squirrel Publishing, LLC , All Rights Reserved


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.