Menu Close

10 tips I wish to know before I’ve started with PowerApps

When you’re doing something for the first time there is always the same feeling of chaos. So many new things, uncountable number of topics to learn, mechanisms and concepts that are similar to nothing. How to know it all? Where to start? Of course, from one side, when it comes to IT, every software has its documentation (and in case of PowerApps it’s truly well written). However from the others side…show me at least ONE person who have read the whole documentation before started with something (programming, using tools, develop new app in PowerApps) :). Of course there is none – otherwise people like me, consultants & trainers, won’t have much to do. That’s why I’ve created below a list of 10 tips I wish to know before I’ve started with PowerApps.

Image result for heroes of might and magic 3 war fog
When you do something for the first time you feel like a hero in my favorite game from the childhood – HoM&M3. You see gems & crystal, mines and powerful artifacts (that was the promise) but you don’t know how to get them. The fog of war covers the paths. You have to find it by discovering unknown areas. Most of the time you just travel, searching and trying. From time to time you fight an imp or zombie and finally (but rarely in comparison to other activities) you pick your dreamed artifact.

Learning PowerApps

If you read the image description above you probably see a lot of similarities to learning anything. Let’s take PowerApps for example. You want to build an app, create a solution to support your process or build that powerful customized SharePoint list form. For the most of the time you try different approaches, different controls and just discover new functionalities of the platform. From time to time you need to solve an error or warning (eg. my favorite one: delegation) and rarely (in comparison to other activities) you’re completing your dreamed app. And that’s ok – you’re learning. You need to get an experience. Is there a way to increase the effectiveness of your learning path? Yes there is. Follow me 馃檪

Minimal effort to maximum effect

To shorten your launch with powerapps I’ve noted down 10 things I wish to know earlier – on the beginning of my PowerApps adventure. Treat them as my footprints you can follow to get your “artifact” quicker.

1. Templates

In PowerApps portal when you go to “Create” page you’ll see bunch of tiles. First three are for creating your app but all the others (28 tiles) are ready-made applications. They presents final solution to a specific requirement (Help Desk, Budget Tracker, Leave Request etc). By clicking on them you’ll add them to your environment and be able to use them. But that’s not all! You can edit them and see how they’re were built! It’s an awesome opportunity to investigate the app structure, logic, used controls and functions to learn the PowerApps. Moreover you can copy app parts and paste into your solution – why not!

Play, test & analyse at least 1 of them.

Tip #1: If you’re beginning with PowerApps focus on templates with the “Canvas app” label

Tip #2: There are two app templates you can’t miss: PowerApps Training and PowerApps Training for Office. A must for everyone who wants to know PowerApps better.

2 . Controls & Properties

There are many controls you can use in your app. Text input, Slider or Timer are just few examples. Use them to interact with a user on multiple ways: display information, gather some data or even record video or take a picture. All controls are under the “Insert” ribbon tab and grouped in categories (Text, Controls, Media etc). Take 10 minutes to discover all the controls in PowerApps. In most cases reading control label is enough to get the general context of it. However take in mind some controls are more complex (eg. gallery or forms).

Another great things about controls are their properties that are for customization. Want this label text to be red? No problem! You don’t like those rounded corners of a button? Sure thing, I don’t like it neither. Properties extends capabilities of the controls. Thank to them you can use a control in multiple ways and in different contexts.

Tip #3: Hardly abused controls are: label, text input, icons, button, gallery, forms. Starts with them. Almost any application needs them.

Tip #4: Check the Advanced tab from the properties pane (the above image). It contains much more properties than Properties tab.

3. Functions

Interaction with a user is one thing but what will happen if a user click this button? And how to show error message once user forget about providing required data? You won’t do much without a logic in your app. And that’s what PowerApps functions are for. Controls, properties and functions are PowerApps bread and butter. Without knowing them you’ll be like a kid in the dark.

There are 155 functions and they are fully described here. In documentation each function description contains a note what it does, when to use it, required arguments and some usage examples. And to be honest probably never use all of them. But below list is really worth of those 30 minutes to check them in documentation.

Tip #5: Some functions are unknown even to those who builds PowerApps professionally. They waste a ton of time to make workarounds for I’m solving in a minute. Some of those functions: User, Param, Language, HashTags,ColorFade, PlainText. Make sure you know them 馃檪

4. Connectors

True power of PowerApps (and PowerPlatform generally speaking) lays not in the platform itself but in the integration with other platforms. Thanks to that your app can use the capabilities of another service. I like to think about integration as “borrow the power of other service” in a way. PowerApps contains over 230 connectors to different (! not only Microsoft) services.

You can find list of all connectors here.

From that list few connectors deserve for special attention because of their flexibility and how they greatly improve PowerPlatform extendibility:

  • Office 365 Users
  • Power BI
  • HTTP with Azure AD
  • HTTP / HTTP Request (available as an action/trigger via Flow)

Tip #6: You want to integrate your own service? Check out Custom Connectors

5. Store data in the right place

Ok, before I’ll say anything more I have to announce one really important thing.

Generally speaking. Ok to store simple tabels. Perfect to store documents. But for storing tabels with relationships model? Absolutely not!

Side note: why some people pick Blob Storage over SharePoint? Versioning, Permissions model, Sharing capabilities, Integration with Teams and Onedrive – SharePoint has it all!

Uf, I’m good now.

So when it comes to storing data there are few places you can do it: OneDrive (Excel), SharePoint and common database (CDS, SQL). First two are a common pick for PowerApps adepts and after some time they always search for help. Because neither excel nor SharePoint are not relational database. But CDS and SQL are! And from my perspective, after last updates, CDS is the first pick when it comes to PowerApps solutions. I won’t dive into my approach details in this post but I’ll definitely cover that in the nearest future. CDS made huge progress and is safe and trustworthy relational database.

Tip #7: Files? SharePoint. Relational database? CDS.

6. Delegation

When it comes to data source connection there will be a moment in time when you’ll see below warning.

But don’t worry! It’s the delegation thing. The delegation mechanism is well described in the documentation. However sometimes delegation is not a solution. If you’ll get to such point read my post: . I’ve described 4 workarounds for the 500 limitation (whereas delegation is only 1 of them) + 2 extra my own methods which you won’t find in the Microsoft official resources 馃槈

7. Turn on Advanced Settings

If you want to build your apps more efficiently and faster there are few options hidden from you by default(!). But as a app maker you can easily turn them on.

Go to File -> App Settings -> Advanced settings

There are awesome functionalities that will boost your productivity. 2 examples:


It’s a group of controls that you can reuse across screen and apps! It’s like you build your own control! Example:

If you want to read more about how to build components and my best practices, patterns and tricks check this blog post.

Formula bar result view

Normally there is no way to see what your filter function will actually return in result unless you display the data using some control (eg. gallery). However turning on “Enable formula bar result view” allows you to see first few results right in your formula bar. Like this:

8. Extra content

The old saying says: “Don’t reinvent the wheel”. When you start with something it’s impossible to always avoid this mistake of reinventing the wheel. Because finding out what has been already made is actually a part of the learning process, right? Sometimes you’ll read about it in documentation, sometimes you’ll see it in one of the PowerApps templates and sometimes you read about in a blog post. That’s why I’ve put this part here 馃檪

  1. 10 Reusable Components: tab control, calendar, dialog box, map control and more
  2. Experimental tools from Microsoft: PowerApps Review Tool, Theme Editor, App Merger, Phone to Tablet Layout Converter
  3. Templates from PowerApps portal are not enough? Then go to PowerUsers Community Gallery for more.

9. Community

Remember those times when a 3 hours task already taken 6 hours and you’re not even in the middle of it? That’s the moment when your time management (plan control, reality observations, taking action based on measurements) is crucial but what’s even more important is…your self-control. Quit the berserker mode. Stop the “ohhh…I’ve already spent so much time on this task that now I HAVE TO finish it”.

Follow below:

  1. Your app/task is estimated to be done in X hours
  2. Make a checkpoint every 1/4 * X
  3. Define what you want to have on the particular checkpoint.
  4. If there is “expectations vs reality mismatch” -> ask for help. PowerApps Community & #PowerAddicts are here for you.

Protip #8: don’t be obsessive, know when to quit. Ask for help earlier

10. Practice practice practice

This is universal but very true sentence: “To make apps you have to make apps”. In other means no knowledge gives you as much expertise as practice. If you want to make great apps there is no other way than just make 100 of them.

Every 100 starts with 1.

Task for today: make a simple app.

Eg. with a button that sends you an email on click. But make it so good you could use it in the future. Eg. email can be send to your family member with a random message:

  • “Will be late – traffic today is horrible”
  • “Sorry for late, had some bugs in one of my projects but I’m close to fix them. Need ~30 minutes more. Love you!”
  • “My client asked me to help him in emergency case: they have some problems on production environment! Will be in 2 hours :(”
  • Can’t find the keys – did you see them?

Was it helpful? Or maybe you think I’ve missed anything?


Related Posts


  1. Makis Tsakmakis

    I’m new to this piece of crap named PowerApps. I’ve read your article, and I can praise your good intentions. Nevertheless, there’s a lot more somebody need to know before starting with it. And before anything else, is the very poor delivery on the promise “low code platform”. I was not expecting to do everything with it, or substitute true developer platforms. But I did expect to do quickly at least trivial things!!! (eg. Deleting a record with user confirmation, I could not believe it is a project!! Master-detal record, trivial requirement for most real-world apps is a BIG Project!)
    And I did expect to find out there a couple of real-world templates (or at least close to real-world).
    Pure disappointment: Once again MS proves they know nothing about true business apps.
    I think it’s a pure waste of time. And I think MS, eventually, will quietly kill it.

    • Micha艂 Guzowski

      Hey Makis, I’m really sorry to hear that you had so wrong experience with PowerApps. I see your frustration when you tried to achieve simple tasks. From what you described they seem to me simple as well. And to be honest – I’ve never had such problems. I don’t know how you tried to implement those tasks but maybe you missed something that could save you a lot of hours (and stress). I’m not saying the platform is perfect, it’s not, but simple tasks as your examples, shouldn’t be a big hustle. Could you give me more details on what specifically made you a problem? Cheers

      • Makis Tsakmakis

        Hi, I follow the “official” Microsoft Power Apps community forum to get guidance and how-tos. I am amazed to find out that it is required to do tips and tricks for such straightforward tasks, such as a descent record edit screen, a navigation menu etc. Too much effort in a very stiff, stubborn and weird philosophy. “Low code business app” platform, sets completely different expectations! I cannot imagine I need to CREATE a delete record button! At the same time, overall the web environment is extremely inflexible, slow and overall counter-productive (even copy-paste remains a big hustle, esp. when you want to copy a complete screen). Not to mention other essential developer addons that are totally missing – Where is a data explorer? I mean MS owns the visual studio!!!! Is it possibly the best they could? Overall my test-run was a pure disappointment and waste of my time.

        • Micha艂 Guzowski

          Hm…have you checked how much PC RAM your browser consumes? Because normally the web browser app editor shouldn’t be slow. And when it comes to creating delete record button – have you tried using forms instead of creating from scratch? I’m more and more convinced that you just don’t want to give the platform a chance. Sure, it’s not perfect but pretty good balance between NoCode and Custom Code. What do you use for your everyday development?

    • Nathan

      Makis, sorry to hear of the issues you are having with this citizen development platform. My 8 year old son has grasped all the concepts this excellent article details and he thrives on teaching lower skilled students how to achieve their desired outcomes with simple tech! I鈥檓 sure he would love to help you out so feel free to drop me a line if you continue to be overwhelmed, don鈥檛 give up, you can do this! 馃憤

  2. Makis Tsakmakis

    Hi, I just found out that Power Craps cannot connect to my Sharepoint Task List (yes, the Microsoft Official one!!!!) It’s not supported! LOL

    • Micha艂 Guzowski

      I think it’s because SharePoint Online Tasks list are going to be obsolete anyway. Have you tried creating SharePoint Online lists and connecting to them using Power Apps?

    • Chris Huntingford

      Wow Seems as if you are having a tough time and you are angry? “Power Craps”… Sounds like you are rally struggling. Have you looked at the wider platform… As in the Power Platform? Remember 1 tool for multiple jobs is not always the answer. Perhaps you would like to get on a shared call where you will get the opportunity to share your technical expertise with the rest of the community? maybe rant a little and show us how many other things you have tried? That way you may be able to vent a bit and also receive help from those who will listen (Providing you treat people correctly)? These are the types of use cases that we would like to solve as a community.

      Also thank you Michal for your hard work in sharing your content. You are brilliant and you help so many people. I know you do this in your spare time and you volunteer help without reward. I hope others understand this.

      • Micha艂 Guzowski

        +1 to what Chris has written. I’m working with other LowCode vendors as well and I must say – no tool is perfect, nor the solution you build. The key is to be above the limitations and find the balance between capabilities and limitations. There is a lot of training content around Power Platform on Microsoft sites The community is also doing very hard work to explain the same thing but differently. So everyone can find something for themselves. And also – Chris, thank you for your kind words.

Leave a Reply

Your email address will not be published. Required fields are marked *