PowerApps in the real world – Ways to improve, manage and utilise PowerApps in conjunction with O365 with a two part blog series.
PowerApps is growing, more people are using PowerApps and businesses are starting to understand when to use PowerApps. Because of this greater awareness from business more and more apps are being created. And this creates a problem – how’d do you manage all these apps and build them in such a way that they are efficient, easy to maintain and easy to use. Well this article hopes to provide some tips and tricks I’ve implemented (by learning the hard way) over the past year.
How frustrating is it when you create an app and then change the colours of the app controls because the colour schemes, fonts and general aesthetic look doesn’t match the corporate branding for the organisation you’re working in?
Well, because of this I now create an empty ‘App’ that contains a few of the ‘most used’ controls all formatted to the corporate colours, fonts and even have any media available to use like the company logos or preferred icons.
When utilising the app, you can then reference these controls that have already been configured based on the styles required.
Once the theme has been created it can then be utilised in an easy way and in such a way that the Theme screen is the only screen that needs updating going forward.
This can be achieved by referencing the settings of the existing controls. To put this in to practice let’s say create another screen with a button, by default this button would be the OTB theme colour.
This button can easily be updated based on the theme by changing the properties to reference the themes settings.
Say we want to change the background colour to the orange in the theme. This can be done by selecting the colour property and updating the property to match the theme buttons colour.
A few benefits I’ve seen with since starting to use this approach:
- Users are more familiar with PowerApps that are created as they all use similar style, colours and layout and this increases adoption, reduces user error and improves on satisfaction.
- Utilising the settings of the theme screen will reduce time in updating colours later as only the theme colour will need changing
- This can help teams become more consistent if developing several business applications as part of a team
When a PowerApp is created the owner is the user that creates that App. This creates a slight problem when a user moves on from the organisation or moves areas that no longer require them to maintain it.
Share App with Edit
The easiest way to provide edit access to another user is to share the app and give edit access.
This does not give the new user ownership but will allow them to edit.
Tip: make sure you change the read to edit
Share App with Security Group
What happens if you are part of a team that manages a number of business applications and you’ve started using PowerApps? Well creating a security group is one way of being able to manage multiple applications edit permissions without the need to edit the permissions for individual apps at once.
This way you can get the tenant admins to administer the Security Group and add / remove members to this when required to do so. This would remove there access from that group.
Tip: Note that only security groups can be used as a shared access. O365, Distribution Lists and Mail enabled security can’t be used to share this content to.
Create App with a ‘Service Account’
In O365 you can’t create a traditional service account. However, you can create a normal O365 user and use this as a service ownership account. The service ownership account can be used to create Flows and PowerApps so that the ownership isn’t tied to an individual.
This will occur a licence cost as this account will need access to the majority of O365 services. However, creating an account similar to this will also increase the professionalism of MS Flows and management of them.
Variables are very useful! They can be used for a wide array of situations from navigation logic to data calculation. When creating variables pre-fixing them with ‘var_[[Variable Name]]’ helps dramatically.
This helps because when trying to find a variable you create on a different screen you can get the intellisense to filter the results to just the variables. This limits the number of results you return.