Power BI Exchange

Please login or click SIGN UP FOR FREE to create your PowerBIUG account to join this user group.

Building Canvas Apps with Standard Guidelines and Best Practices

By Ted Pattison posted Mar 12, 2019 08:02 AM


Many organizations are adopting the Power Platform because PowerApps and Flow make it so quick and easy to build business solutions without any need for the traditional software development life cycle. However, the ease of use of PowerApps is a double-edged sword. While it's relatively easy to get up and running with PowerApps, you’ll also find plenty of ways to get yourself in trouble and to create the canvas-app-from-hell that's impossible to maintain and evolve.

While the Internet contains an infinite supply of blogs and youtube videos focused on PowerApps, there's not much content that answers the essential question. How do I ensure that I'm building my canvas app correctly? It's up to you to learn how to organize and structure your canvas app so it is more maintainable and easier to extend over time.

Two weeks from now I will be in Amsterdam at Power Platform Summit presenting a preconference workshop titled Building Business Solutions with PowerApps and Flow. I have designed this workshop for technical specialists and citizen developers that need to learn how to build canvas apps and flows using standard guidelines and best practices. This workshop includes several hours of hands-on lab exercises in which attendees learn the following.

  • Using standard naming conventions for screens, controls, variables and collections
  • Nesting controls within groups for better organization and maintainability
  • Delegating filtering and sorting work to the backend data source
  • Tracking application state using variables and collections
  • Implementing a canvas app with a shopping cart

Why should you learn to use standard naming conventions for the screens and controls you add in your canvas apps? The screen names you pick are important because they are read out loud by screen readers for people that are visually impaired. Therefore, you should create screen names that are readable such as Browse Customers Screen and Add Customer Screen. It's also important to use a standard naming convention for the controls you add to your screens. This makes your canvas apps much easier to understand and to maintain over time.

Naming screens and controls using a standard naming convention

There's a very helpful whitepaper titled PowerApps canvas app coding standards and guidelines written by fellow MVP Todd Baginski and Pat Dunn from Microsoft. I really like this whitepaper because it spells out how to name controls using prefixes for greater readability. For example, a button should be named with a prefix of btn resulting in button controls names such as btnAddNewCustomer and btnNavigateToBrowseCustomers.

I highly recommend reading this whitepaper to anyone that's building canvas apps because it defines standard naming conventions for all control types as well as naming conventions for global variables, context variables and collections. The whitepaper also examines best practices such as grouping controls, tracking application state with collections and global variables and using delegation to optimize backend data access.

If you attending Power Platform Summit at the end of March, I encourage you to take part in my workshop so you can learn more about building real-world canvas apps and flow for production environments. There's nothing like hands-on experience to teach you the right way to success.

Workshop Information
Tuesday, 26 March from 9:00-5:00
Building Business Solutions with PowerApps and Flow