Tips for Taking Ownership of a New PowerApp

Introduction

Tips for taking ownership of a PowerApp that is new to you

Tips for taking ownership of a PowerApp that is new to you

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.

Connectors

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.

In the left navigation click on the database icon to reveal the connections in your PowerApp.

In the left navigation click on the database icon to reveal the connections in your PowerApp.

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 select a control or screen, then use the property selector to the left of the expression editor to find bolded properties - these properties may have custom expressions within them.

You can select a control or screen, then use the property selector to the left of the expression editor to find bolded properties - these properties may have custom expressions within them.

  • 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.

The View tab allows us to check on the media resources that have been added to our app.

The View tab allows us to check on the media resources that have been added to our app.

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’.

Click View > Variables to see which variables are being used be the app and the values they contain.

Click View > Variables to see which variables are being used be the app and the values they contain.

  • 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. 

Here’s a look at the contents of a variable we are storing table data within.

Here’s a look at the contents of a variable we are storing table data within.

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.

Screen Shot 2019-09-29 at 6.51.39 PM.png

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.

Comment Code

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:

//Comment

Screen Shot 2019-09-29 at 2.59.09 PM.png

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. 

Naming

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.

Controls

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.

Browsing a tree view of all the screens and controls in a PowerApp is much easier when things are named under a standard convention.

Browsing a tree view of all the screens and controls in a PowerApp is much easier when things are named under a standard convention.


In the OnSelect expression shown below, we have some variables that are prefixed with ‘var’.

Screen Shot 2019-09-29 at 6.52.20 PM.png

PowerApps Sustainment and Management Tips

Here, we will cover a few points about the sustainment administration of apps.

Use Environments!

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.

Sharing

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.

Screen Shot 2019-09-29 at 11.55.20 PM.png

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.

Screen Shot 2019-09-29 at 6.52.49 PM.png

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.

Conclusion

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!