Deep Dive into Power Apps and Flow is an intensive 2-day course for technical specialists, web developers and IT professionals working with SharePoint Online, Power BI, Office 365, and Dynamics 365. This course teaches the essential concepts and visual designer skills required to build advanced business solutions using PowerApps and Microsoft Flow. Students will learn advanced techniques such as writing complex expressions for PowerApps and Flows and accessing REST-based data sources using custom connectors.
The course goes beyond the fundamentals of PowerApps and Flow teaching students how to design and build custom solutions for real-world scenarios in SharePoint Online, Power BI, the Common Data Service for Apps and Dynamics 356. The course examines issues with application lifecycle management (ALM) and explains best practices for building and testing custom solutions built with PowerApps and Flow in an isolated development environment and for packaging custom solutions for deployment to a production environment after quality assurance testing has been completed.
The course covers the following topics
Module 01: Getting Started with PowerApps Studio
This module introduces students to the PowerApps Service and the fundamentals of creating and testing web and mobile applications using PowerApps Studio. Students will learn to create and configure an isolated development environment for building custom solutions with PowerApps and Microsoft Flow. The module teaches students how to create a modern user interface experience in PowerApps Studio by working with screens and controls and by writing dynamic PowerApps formulas for control properties. The module introduces student to connectors and explains how connectors are used in PowerApps to connect an app to an external data source. The module teaches students how data binding works in PowerApps and demonstrates how to use data binding with gallery controls, form controls and data cards.
Module 02: Designing PowerApps using Advanced Techniques
This module covers a series of advanced design techniques for building PowerApps. Students will learn when to use global variables, context variables and collections to track application state. The module also explains the support in PowerApps Formula language for using compound datatypes such as records and tables and demonstrates how data inside a table can be manipulated using a built-in set of table functions. Students will learn how to write imperial logic to implement event handlers for important events such as the application OnStart event. The module introduces students to delegates and explains how they are used to filter, sort and aggregate data when connecting to a datasource with a large number of items. The module concludes by teaching students how to extend PowerApps by a creating custom connector to access data accessible through a custom REST API.
Module 03: Building PowerApps for SharePoint Online
This module explores the integration between PowerApps and SharePoint Online. Students will learn how to build mobile-friendly PowerApps to add and update items and attachments in a SharePoint list and to upload documents to a document library. The module also demonstrates how PowerApps can be used to customize the view form and the edit form for a SharePoint list.
Module 04: Introduction to Microsoft Flow
This module teaches the essential concepts and visual designer skills required to design and implement flows using triggers, actions and conditions. Students will learn how to configure 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 various design techniques for managing state within the lifetime of a flow. Students will also learn how to write complex Flow expressions to retrieve dynamic content, to perform type conversion between strings, numbers and dates and to design flows using loops, variables, arrays and custom objects. The module also introduces students to advanced Flow design techniques including error handling, flow termination and executing steps in parallel.
Module 05: Designing Flows to Automate an Approval Process
This module teaches students how to build flows that automate an approval process in a variety of business scenarios. Students will learn how to design flows using the Start an Approval action to automate an approval process and to take action once a flow has been approved or rejected. The module explains how to design the UI experience for approvers using both email and the Flow Approval Center. Along the way, students will learn how to design flows to automate document approval in SharePoint Online and to integrate multiple approvers into flows that run either sequentially or in parallel.
Module 06: Building PowerApps and Flows for 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 PowerApps in Power BI reports using the PowerApps custom visual. Students will learn how to pass data from a Power BI report to an embedded PowerApps app using a design that allows the 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 this lecture by building a real-time dashboard to monitor twitter and display and geographically map tweets that contain specific keywords.
Module 07: Working with the Common Data Service for Apps
This module introduces the Common Data Service for Apps and explains how it provides a native storage format and a standardized database schema for business data used by PowerApps, Flow and Dynamics 365. Student will learn the fundamentals of the Common Data Model (CDM) and its built-in entity types which can be used to track common types of business data such as accounts, contacts, invoices and expenses. The module demonstrates how to import external data into the CDS database and how to access CDS data from Microsoft Excel using the PowerApps Office Add-in. Students will learn how to customize built-in entities as well as how to create custom entities to accommodate specific business scenarios. The module also introduces students to building model-driven apps in PowerApps Studio.
Module 08: Managing Application Lifecycle with PowerApps and Flow
The final module examines the challenges and best practices for managing PowerApps and Flow within a large organization. The module explains how licensing works with PowerApps and Flow. Students will learn how to integrate business data by installing an On-premises Data Gateway and by creating data integration projects. Students will learn how to publish PowerApps and flows and share them with other user as well as how to version a solution that’s already in use. The module explains the role of environments and discusses how an environment can be configured with data loss prevention policies. Students will learn the why and the how of creating a dedicated development environment to isolate the building and testing of custom solutions involving PowerApps, Flow and a CDS database. The module concludes with a discussion of how to package solutions built in a development environment and how to deploy the solution package in a production environment.
Students should already be familiar with Microsoft Excel, Office 365 and SharePoint Online. Some hands-on experience with PowerApps and Flow would be beneficial.