If you find yourself supporting, fixing bugs or enhancing a PowerApp that someone else built (or one that you didn’t build), this post is for you. Here are tips that will help you get acquainted with a PowerApp that you didn’t create. We also have a few tips on how you can build an app that is easy for other people to step into.
In this article, we cover:
Quickly getting to know an app that you didn’t create
Build an app that is easy for other people to step into
Sustaining and administration of apps
To start with, go to the Makers Portal of PowerApps.
In this article, we will start with a Live Atlas PowerApp that we have created to demonstrate the concepts and ideas we have in this article.
Rather watch a video?
You can watch a video that runs through the content covered in this post too!
Getting to Know an App that is New to You
The first step to knowing an app that you didn’t create is to Start with running the app - just like any other user would.
Audit the Screens
First and foremost, get to know the screens and flow of the app. This will help you understand how a user will interact with the app.
Try out the app as an end user
Edit the app and view all the screens in the designer
You should have an understanding of the screens and how the user interacts with them.
Getting to know an app by exploration isn't always the best way, especially when you are working with data, but it does give a fair idea about what the app does.
Another important part of getting to a know an app is to understand the connectors it is using. You can see the Data Sources to which your app is connected.
Click on Data source icon on the left-hand pane to see all the connectors.
In the example we used, we see that our app is connected to a number of Bing services and SharePoint. We also have a Custom Connector
In Data Sources, we can see all the data sources that are used in the app we are working with.
Conduct a Code Audit
Conducting a code audit may be a fancy way of saying, find the important expressions that have been added to your app to make it work! Here are few important steps not to miss in the process of reviewing the expressions in your app.
Check the App’s OnStart Event
Go back to the Tree View of the app by clicking on its icon on the left-hand pane.
Click on the App node at the top of the tree viewt
Go to the app OnStart by clicking on the Property selector drop down on top of the left panel and choosing the OnStart option from the drop-down.
This will reveal if any scripts have been applied for the App’s OnStart event.
Your app might have a ConfirmExit function or some other types of script running at the app level as well.
Check the App’s Controls and Screens
You can click on each screen or control in the app and use the Property selector to see each expression that has been added to the app.
Some of the Properties in the drop-down are bolded. This shows where things have been changed from the default setup for this control.
We have seen the Data Sources of the app in the above steps. If Media has been added to the app, you will be able to see Media by clicking on View > Media in the top menu bar of the designer.
View the App’s Variables
To see the variables of the app, click on View. Click on Variables.
This brings us into the view of variables. We can see what the variables have been named.
In this example, for notation, we have prefixed the names of the variables with ‘var’.
You can Click on a variable to see the details of the variable.
If a purple grid appears, this variable contains a table or collection of values. Click on the top grid to see the table of actual values in the variable. This shows what the variables are being used to store.
We can click on Uses to see where the variable is being used throughout the app. You will see the controls that reference to the variable.
View the App’s Collections
You can also click on View > Collections to see a listing of the collections and their contents.
Create a Dev Version of the App
As you get started with the app, another thing to do is to create a Dev version of the app by clicking on File > Save As. From here, you can Save a Copy of the App as a Dev version.
Tip: Creating a Dev version of the app is great If you want to try something in the app without changing the build that is currently live.
Build PowerApps that are Easy for Others to Work On
Its important to keep in mind that others may also be adding features, supporting or sustaining the PowerApps that you develop. This section covers some tips on building PowerApps that are easy for others to support.
Expressions written in PowerApps should be nice and readable and easy to follow! In the example below, we have an expression in the OnSelect event of an app’s control.
When you select an expression, you may find yourself looking at complex expression or a set of expressions in your app. Writing comments in your expressions to be referenced by others is a great way of creating easy to use expressions.
Tip: To add comments, put forward slashes with your comment:
This is a great way to separate logic in your expression.
In the above case, we’re connecting a number of connectors. We have MSNWeather, BingImageSearch, BingMaps, etc. By commenting on them, it gets easier for someone working on the app to easily undestand what’s happening in the app and expression.
Another important concept that makes an app sustainable and supportable by other people is how you name the controls, collections, variables and screens within it. Using naming conventions makes identifying controls much easier and helps provide context where controls are referenced in expressions.
In the example below, we have used a naming convention for screens. We have prefixed the controls with the word ‘Screen’.
There are different casing options, too. Here's a link to a white paper that’s useful to build sustainable apps and best practices around that.
In the OnSelect expression shown below, we have some variables that are prefixed with ‘var’.
PowerApps Sustainment and Management Tips
Here, we will cover a few points about the sustainment administration of apps.
We recommend that organizations create Test and Production Environments, in addition to the Default environment.
As apps become enterprise-grade apps, you will likely have strong processes in place for managing them.
Tips: Use environments so that you can employ proper application lifecycle / release management methods.
Leverage Solutions for Enterprise Solutions
You can Import and Export apps one by one or use a Solution Package to group PowerApps, Flows, Custom Connectors, Entities and more that may be part of the same solution.
A solution package can be versioned, and moved between environments for consistent deployments.
Tip: If you are building a Power Platform solution that uses more than one element, look closely at using a Solution Package. Solution packages may improve the processes of developing, managing, sustaining and deploying.
It is very easy to share your apps with others.
If you have a solution or an app that you want to share with someone, all you have to do is to click on the ellipsis next to an app in the App list in the PowerApps Portal. Then, click on Share.
Automatic PowerApp Versioning
Versions of your app are stored automatically after you do the initial
Tip: It is extremely important to get into the habit of immediately saving the work you start / apps you create in PowerApps.
From within the designer, after the initial Save action, PowerApps will keep track of all the versions of the app for you - automatically storing versions as you move forward.
In the PowerApps portal, if you click on Apps in the left navigation, click on the ellipses next to an app, and choose Details. In the screen that appears, click on Versions in the top navigation.
Tip: From here, you can also Restore the previous version of an app.
Releasing Changes to a PowerApp: Save vs. Publish
You can stage changes you are working on within an app and choose when they should be released. This is done by choosing to Publish an app after saving it. This is really important as you fix bugs or add new features into an app that people are already using.
Tip: When an end user runs an app, they see the last Published version of the app. You can edit and Save changes to a PowerApp, then Publish the changes only after they have been tested / or when you are ready.
Hopefully, these tips will help you easily get to know a new app, build sustainable apps, sustain and administering apps.
Thank you for reading through this post and good luck with your building!