Learning Microsoft Power Apps

Book description

In today's fast-paced world, more and more organizations require rapid application development with reduced development costs and increased productivity. This practical guide shows application developers how to use PowerApps, Microsoft's no-code/low-code application framework that helps developers speed up development, modernize business processes, and solve tough challenges.

Author Arpit Shrivastava provides a comprehensive overview of designing and building cost-effective applications with Microsoft Power Apps. You'll learn fundamental concepts behind low-code and no-code development, how to build applications using pre-built and blank templates, how to design an app using Copilot AI and drag and drop PowerPoint-like controls, use Excel-like expressions to write business logic for an app, and integrate apps with external data sources.

With this book, you'll:

  • Learn the importance of no-code/low-code application development
  • Design mobile/tablet (canvas apps) applications using pre-built and blank templates
  • Design web applications (model-driven apps) using low-code, no-code, and pro-code components
  • Integrate PowerApps with external applications
  • Learn basic coding concepts like JavaScript, Power Fx, and C#
  • Apply best practices to customize Dynamics 365 CE applications
  • Dive into Azure DevOps and ALM concepts to automate application deployment

Publisher resources

View/Submit Errata

Table of contents

  1. Preface
    1. Who This Book Is For
    2. Why I Wrote This Book
    3. What This Book Covers
    4. Power Apps Case Study
    5. Microsoft Power Apps Updates
    6. Conventions Used in This Book
    7. Using Code Examples
    8. O’Reilly Online Learning
    9. How to Contact Us
    10. Acknowledgments
  2. 1. Evolution of Microsoft Power Apps
    1. Microsoft Dynamics CRM
    2. xRM
    3. Dynamics 365
    4. The Start of Low-Code, No-Code Development
    5. Birth of Power Apps
      1. Parallel Development of Dynamics 365 Customer Engagement Apps and Power Apps
      2. Handshakes Between Dynamics 365 Customer Engagement Apps and Power Apps
    6. Summary
  3. 2. Introduction to Power Platform and Dataverse
    1. The Power Platform
      1. Power Platform Key Products
      2. Additional Power Platform Tools
      3. Why Power Platform Is Important for Power Apps
      4. Power Platform Real-World Example
      5. Power Platform for Developers
    2. Microsoft Dataverse
      1. Evolution of Microsoft Dataverse
      2. Microsoft Dataverse Connector
      3. Microsoft Dataverse Security
      4. Microsoft Dataverse Business Logic
      5. Microsoft Dataverse Data
    3. Summary
  4. 3. Getting Started with Power Apps
    1. Introduction to Power Apps
    2. System Requirements
    3. Why Power Apps?
    4. Types of Power Apps
      1. Model-Driven Apps
      2. Canvas Apps
    5. Power Apps Building Blocks
      1. Power Apps Home Page
      2. Power Platform Admin Center
    6. Power Apps Collaborative Development
      1. Power Apps Is for Business Users
      2. Power Apps Is for Citizen Developers
      3. Power Apps Is for Professional Developers
      4. Power Apps Is for IT Administrators
      5. Power Apps Is for Testers
      6. Power Apps Is for App Users
      7. Power Apps Is for Everyone
    7. Power Apps Licensing and Cost
      1. Limited Capabilities
      2. Full Capabilities
      3. How Do I Decide Which License Plan to Choose?
      4. Understanding Power Apps Licenses
    8. Power Apps Trial and Developer Plan
      1. Power Apps Plan Trial
      2. Power Apps Developer Plan
    9. Power Apps Mobile Apps
    10. Summary
  5. 4. Data Sources and Connectors
    1. Introduction to Data Sources and Connectors
    2. Data Sources for Model-Driven Apps
    3. Data Sources for Canvas Apps
      1. Tables
      2. AI Models
      3. Connectors
    4. The Architecture of Power Apps Connectors
    5. Types of Power Apps Connectors
      1. Standard Connectors
      2. Premium Connectors
      3. Custom Connectors
    6. Using Connectors Versus Calling an API
    7. Components of Power Apps Connectors
      1. Triggers and Actions in Canvas App Power Apps
      2. Triggers and Actions in Power Automate
    8. Summary
  6. 5. Determining Which Type of Power Apps to Make
    1. When to Use Model-Driven Apps
      1. Data Stored in Microsoft Dataverse
      2. Complex Business Logic
      3. Design Web-Based Apps for Internal Employees
      4. Limited App Layout, UI, Look and Feel Requirements
      5. Automatically Responsive Apps Design
      6. Complex Dataverse Security Requirements
      7. Use Customer Engagement Apps
    2. When to Use Canvas Apps
      1. Design an App from Scratch or Blank Canvas
      2. Data Storage Flexibility Other Than Dataverse
      3. Control Over the App UI
      4. Template-Based App Development
      5. Design Mobile Apps for Internal Employees
    3. When to Embed a Canvas App in a Model-Driven App
      1. Guidance on Embedding Canvas Apps
      2. Steps to Embed a Canvas App in a Model-Driven App Form
    4. Power Apps Decision Tree
    5. Switching App Types
    6. Power Apps Patterns
      1. Event Management
      2. Lifecycle or Workflow Management
      3. Scheduling
      4. Approvals
      5. Asset Management
      6. Calculation/Transformation
      7. Communication/Announcement
      8. Inspection/Audit
      9. Project Management
    7. Summary
  7. 6. Model-Driven App Components and Features
    1. Creating a Solution
    2. Data Components
    3. User Interface Components
      1. App Designer
      2. Site Map Designer
      3. Form Designer
      4. View Designer
      5. Command Bar (Toolbar) Designer
      6. Custom Page Designer
    4. Logic Components
      1. Business Process Flows
      2. Dataverse Classic Workflows
      3. Custom Actions
      4. Business Rules
      5. Power Automate
    5. Visualization Components
      1. Charts
      2. Dashboards
      3. Embedded Power BI
    6. Sharing a Model-Driven App
    7. Summary
  8. 7. Extending Model-Driven App Features
    1. Code Components
      1. Web Resources and JavaScript
      2. Web Services in Dataverse
      3. Plug-ins
      4. Custom Workflow Activities
      5. Custom API
      6. Custom Pages
      7. The Power Apps Component Framework (PCF Controls)
      8. Environment Variables
    2. Integration Components
    3. The Monitor Tool
    4. Development Tools
    5. Summary
  9. 8. Canvas App Controls and Features
    1. Power Apps Studio
    2. Controls and Properties
      1. Input Controls
      2. Display Controls
      3. Layout Controls
      4. Media Controls
      5. Icons and Shape Controls
      6. Chart Controls
      7. AI Builder Controls
      8. Mixed Reality Controls
      9. Modern Controls
    3. Components
      1. Creating Components
      2. Using Components on Canvas App Screens
      3. Canvas App Component Library
      4. Creating a New Component Library
    4. App Checker
    5. Monitor Tool
      1. How to Monitor a Canvas App
      2. Collaborative Troubleshooting Using the Monitor Tool
    6. Test Studio
      1. Using Test Studio
      2. Test Suite Events
      3. Important Points to Know About Test Studio
    7. Canvas App Versioning
    8. Canvas App Analytics
    9. Canvas App Sharing
      1. Sharing Canvas Apps with Internal Users
      2. Sharing Canvas Apps with External Users
    10. Canvas App Comments
    11. Canvas App Coauthoring
      1. Step 1: Create a GitHub Repository
      2. Step 2: Create a Personal Access Token
      3. Step 3: Enable Git Version Control
      4. Step 4: Create Branch and Directory in the Git Repository
      5. Step 5: Make Changes to the Canvas App
    12. Canvas App Accessibility
      1. Setting the AccessibleLabel Property
      2. Checking Accessibility Issues
    13. Summary
  10. 9. Power Fx: A Low-Code Language
    1. What Is Power Fx?
    2. Power Fx Is for Everyone
      1. No-Code
      2. Low-Code
      3. Pro-Code
    3. Power Fx Architecture
    4. Power Fx in Power Apps
      1. Power Fx in Canvas Apps
      2. Power Fx in Model-Driven Apps
    5. Power Fx in Power Automate
    6. Power Fx in Copilot Studio
    7. Power Fx in Power BI
    8. Power Fx in Power Pages
    9. Summary
  11. 10. Power Apps Deployment
    1. Power Apps Solutions
    2. Types of Solutions
      1. Common Data Service Default Solution
      2. Default Solution
      3. Unmanaged Solution
      4. Managed Solution
    3. Setting Your Preferred Solution
    4. Managed Properties in Managed Solutions
    5. Solution Export and Import
      1. Solution Export
      2. Solution Import
    6. Solution Segmentation
      1. Cloning a Patch
      2. Cloning a Solution
    7. Solution Versioning
    8. Solution Layering
    9. Solution Dependency
    10. Solution Deployment
      1. Manual Deployment
      2. Automatic Deployment
    11. Post Deployment
    12. Summary
  12. 11. Microsoft Copilot in Power Apps
    1. Evolution of Artificial Intelligence in Power Platform
    2. Introduction to Microsoft Copilot
    3. Architecture of Copilot
    4. Prerequisites for the AI Features in Power Apps
    5. Copilot in Model-Driven Apps
    6. Copilot in Canvas Apps
      1. Design a Canvas App Using Copilot
      2. Editing Your App with Copilot
      3. Add a Chatbot Control to a Canvas App
      4. Adding a Copilot Control to a Canvas App
    7. AI Builder (Hub) in Canvas Apps
      1. AI Builder Capabilities
      2. How AI Models Work
      3. Using AI Builder to Create an App
      4. AI Model Accuracy
    8. Turn Images and Sketches into a Canvas App
    9. Copilot Studio
    10. Copilot Licenses
    11. Summary
  13. 12. Power Apps with Microsoft Teams
    1. Dataverse for Teams Versus Dataverse
      1. Purpose
      2. Persona
      3. Licensing
      4. Storage
      5. Complexity
    2. Getting Started with Creating Apps in Teams
      1. Prerequisites
      2. Installing Power Apps in Microsoft Teams
      3. Setting Up Dataverse for Teams
      4. Creating and Customizing Power Apps in Teams
      5. Publishing Power Apps to Teams
      6. Sharing Your App with Others in Your Organization
    3. Installing Canvas App Template Apps to Teams
    4. Embedding a Model-Driven App in Teams
      1. Option 1: Embed a Model-Driven App as a Tab App in Teams
      2. Option 2: Embed a Model-Driven App as a Personal App in Teams
      3. Features Currently Unavailable
    5. Embedding a Canvas App in Teams
      1. Option 1: Add to Teams
      2. Option 2: Download App
    6. Summary
  14. 13. Model-Driven App Case Study
    1. Planning the Implementation
      1. Implementation Methodology
      2. Implementation Phases
    2. Implementing the App
    3. Step 1: Prerequisites
      1. Create an Azure Account and Work Account
      2. Set Up the Power Platform Environment
      3. Import the PowerAppsBookLiveProject Solution
    4. Step 2: Create Publisher and Solution
    5. Step 3: Design Data Model
    6. Step 4: Design Security Model
      1. Securing Power Platform Environment Resources
      2. Securing Dataverse Data
      3. Securing the Power Apps Model-Driven App
    7. Step 5: Design the Model-Driven App
    8. Step 6: Create Model-Driven App Components
      1. Site Map
      2. Forms
      3. Views
      4. Business Process Flow
      5. Business Rules
      6. Command Bar (Toolbar) Design
      7. Low-Code Plug-in
      8. Custom Pages
      9. Dashboard
      10. Web API
      11. Plug-in Assembly
    9. Step 7: Power Automate
      1. Power Automate Trigger and Actions
      2. Trigger the Power Automate Flow from Finance Approval Page
    10. Environment Variables
    11. Summary
  15. 14. Canvas App Case Study
    1. Step 1: Prerequisites
    2. Step 2: Create a Canvas App and Case Screen
    3. Step 3: Create Canvas App Components
      1. Contact Screen
      2. Map Screen
      3. Success Screen
      4. Case Approval Screen
      5. Login Screen
      6. Logout Control
      7. Copilot Control
    4. Step 4: Save and Publish the App
    5. Step 5: Share the App
    6. Step 6: Deploy the Solution
    7. Summary
  16. 15. Power Apps Best Practices
    1. Model-Driven Apps
      1. Solutions
      2. Design
      3. Client-Side Logic
      4. Server-Side Logic
      5. Integration
      6. Security
    2. Canvas Apps
      1. Reduce Data Flow Time
      2. Limit the Number of Controls
      3. Optimize the OnStart Property
      4. Optimize the Data Source Connection
      5. Cache Repetitive Data in a Temporary Database
      6. Avoid Control Dependency Between Screens
      7. Use Delegable Functions and Queries
      8. Republish Your App Regularly
      9. Avoid Repeating the Same Formulas in Multiple Places
      10. Enable the DelayOutput Property on all TextInput Controls
      11. Use DelayItemLoading and LoadingSpinner to Improve Gallery Performance
      12. Limit Data and Columns Retrieved
      13. Don’t Use Unsupported or Legacy Browsers
      14. Set an Appropriate Environment Geographic Location
      15. Establish Canvas App Coding Guidelines
    3. Summary
    4. Closing Thoughts
  17. Index
  18. About the Author

Product information

  • Title: Learning Microsoft Power Apps
  • Author(s): Arpit Shrivastava
  • Release date: July 2024
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9781098150426