PowerApps and Flow: Level 2 - Building Business Solutions with PowerApps and Flow
Students should already be familiar with Microsoft Excel, Office 365 and SharePoint Online. Due to the accelerated nature of this training class, it is also recommended that students attend ONLC's Designing Modern Forms and Workflows with Microsoft PowerApps and Microsoft Flow training before taking this class or have the equivalent hands-on experience with PowerApps and Flow.
Module 01: Getting Started with the Power Platform
This module introduces students to the Microsoft Power platform and explains the role of canvas apps, connectors and flows in building business solutions. The module introduces the Common Data Service for Apps (CDSA) and explains how it provides support for creating custom entities and building model-driven apps. Students will create canvas apps with PowerApps Studio and learn to write advanced expressions for screen and control properties. The module examines connectors and data binding and demonstrates using the Start with Data template. Along the way students will learn to build a canvas app for mobile devices that reads and writes customer data to a table inside an Excel workbook in OneDrive for Business.
• Overview of the Power Platform
• Writing Expressions for Screen and Control Properties
• Understanding Connectors and Data Binding
• Building Canvas Apps Targeting Mobile Devices
Module 02: Building Data-driven Canvas Apps
This module teaches students the best practices for building data-driven canvas apps using connections, galleries, item templates, forms and data cards. Students will learn best practices for tracking application state using global variables, context variables and collections. The module introduces students to the principles of delegation and explains how to filter, sort and search through a large Azure SQL database tables and a large SharePoint lists without compromising performance. Students will learn how to build a user experience to add and update data using edit forms and data cards. The module concludes with an examination of the PowerApps integration feature with SharePoint Online which makes it possible to customize the SharePoint list forms to provide business users with an enhanced user experience for editing content in a SharePoint Online.
• Displaying Data using Galleries and Item Templates
• Using Table Functions to Filter and Sort Data
• Understanding How Delegation Works
• Updating Data using Edit Forms and Data Cards
• Customizing SharePoint List Forms
Module 03: Building a Canvas App with a Shopping Cart
This module examines building a canvas app which allows users to browse a set of products and to add products into a shopping cart tracked using a local collection. Students will learn how to implement the required data access behavior for writing the shopping cart data out to an Azure SQL database or to a SharePoint list. The module examines techniques required to update data across two tables at once for scenarios where adding an Order record also requires adding multiple OrderDetail records with the primary key of the parent Order record. The module concludes with an examination of using PowerApps Studio to create Reusable Components which can be exported and shared across multiple canvas apps.
• Caching Application State using Variables and Collections
• Using a Collection to Track Shopping Cart Data
• Designing the Shopping Cart User Browsing Experience
• Writing Shopping Cart Data to Back to SharePoint
• Designing Reusable Components
Module 04: Getting Started with Microsoft Flow
This module introduces the fundamental concepts of Microsoft Flow and gets students started building and testing flows in the Microsoft Flow design editor. Students will learn how to use flow triggers to build flows that can be scheduled, executed in response to external events or run on demand using a button on a mobile device. The module explains how data within a flow is propagated from step to step and discusses how to use control-of-flow actions to author advanced business logic. Students will learn the syntax for writing advanced expressions in Workflow Definition Language (WDL) to retrieve dynamic content, to perform type conversion and to design flows using loops, variables, arrays and custom objects.
• Building Flows using Triggers and Actions
• Using Control-of-Flow Actions
• Writing Advanced Flow Expressions
• Executing a Flow from a Canvas App
• Handling Flow Execution Errors
Module 05: Building Flows to Manage Content and Approvals
This modules focuses on using Microsoft Flow to update, manage and transform content in SharePoint Online and OneDrive for Business. The module demonstrates how to build a scheduled flow to enumerate the items in a SharePoint list to clean up and validate the data entered by business users. Students will learn build flows that upload documents and images to SharePoint Online and OneDrive for Business and to convert document content between common file formats such as JSON, XML, HTML and CSV. The module demonstrates building flows to automate the generation of Word documents and PDF files using the using the Word Online connector. This module examines the support in Microsoft Flow for automating an approval process using the Start an Approval action. Students will learn how to build flows to automate an approval process including document approval in SharePoint Online.
• Reading and Writing SharePoint List Content
• Uploading Documents, Images and Photos
• Using Flow to Generate Word and PDF Files
• Using Flow to Automate Approval Processes
• Managing Approvals using Approvals Center
Module 06: Integrating PowerApps and Flow with Power BI
This module examines the points of integration between Power BI, PowerApps and Flow. Students will learn how to embed Power BI dashboard content in PowerApps using the Power BI tile control. The module also explains how to embed a canvas app in Power BI reports using the PowerApps custom visual. Students will learn how to pass data from a Power BI report to an embedded canvas app using a design that allows the canvas app to respond to filtering changes in the report. The module examines how to build real-time dashboards in Power BI by designing flows that push rows of data into Power BI automatically triggering updates to dashboard tiles. Students will practice what they learned in the lecture by building a real-time dashboard to monitor Twitter and to display tweets containing specific keywords.
• Overview of Power BI Integration Features
• Embedding Power BI Dashboard Tiles in PowerApps
• Extending Power BI Reports using Canvas Apps
• Designing Flows to Update Real-time Dashboards
• Triggering Flows using Power BI Dashboard Alerts
Module 07: Getting Started with the Common Data Service
This module introduces the Common Data Service for Apps (CDSA) and explains how it provides a standardized database schema for business data used by PowerApps, Flow and Dynamics 365. Student will learn how to import external data into the CDSA and how to build canvas apps to read and write records for standard entities such as accounts, contacts and activities. The module teaches students how to customize standard entities as well as how to create custom entities to accommodate specific business scenarios.
• Common Data Service for Apps Overview
• Importing Data into the CDSA
• Working with Standard Entities
• Accessing CDSA from a Canvas App
• Customizing Standard Entities
• Creating a Custom Entity
Module 08: Building Model-driven Apps
This module builds on the CDSA fundamentals covered in the previous module to explain the purpose and the techniques used build model-driven apps. Students will learn how to configure a sitemap for a model-driven app to provide read/write access to CDSA entity data such as accounts and contacts. The module demonstrates how to customize the user interface for a model-driven app by customizing the views and forms associated with CDSA entities. The module also explains how to extend a CDSA entity using business rules and business process flows to provide a structured process which enables users to manage content as it moves through the stages of its lifetime.
• Introduction to Model-driven Apps
• Building Site Maps for User Navigation
• Customizing Entity Views and Forms
• Creating Business Rules
• Creating Business Process Flows
• Customizing the Views for an Entity
Module 09: Integrating PowerApps with External Systems
This module examines how to integrate data from external systems and on-premises data sources. Student will learn to build flows with the HTTP action to call external web services and to parse JSON from an HTTP response. The module also explains how to build flows with HTTP triggers which can be used to process forms and surveys created using Microsoft Forms. The module explains the purpose of custom connectors and examines real-world scenarios in which they are required. The module introduces students to swagger file definitions and demonstrates using the PowerApps portal to create a custom connector to communicate with a custom web service. The module demonstrates creating custom connectors which can handle OAuth2-style authentication with web services protected by Azure AD such as the Microsoft Graph API and the Power BI Service API. The module concludes with a discussion of how to install and configure an On-premises Data Gateway which makes it possible for canvas apps and flows to read and write data from on-premises data sources such as SQL Server and local SharePoint farms.
• Calling External Services using HTTP Actions
• Executing Child Flows from a Parent Flow
• Processing Microsoft Forms using HTTP Trigger
• Creating and Testing Custom Connector
• Connecting to Data using the On-premises Gateway
Module 10: PowerApps ALM using Managed Solutions
The final module examines the challenges and best practices for application lifecycle management (ALM) with PowerApps and the Power platform. Students will first learn the simplest style of ALM which includes publishing, sharing and versioning apps within a single environment. Next, the module demonstrates how to individually export and import canvas apps and flows to move business solutions between environments. The modules concludes with an examination of the core PowerApps concepts of publishers and managed solutions and explains the best practices for packaging, distributing and versioning business solutions built on the PowerApps platform.
• Understanding Environments and DLP Policies
• Single-environment ALM Strategies
• Exporting and Importing Canvas Apps and Flows
• Understanding Publishers and Solutions
• Exporting and Importing Solutions
• ALM using Managed Solutions