*** NOTE: ALL INFORMATION IS ACCURATE AT DATE OF PUBLISHING ***

I started on my Power Platform journey over a decade ago, and like many people just learning as I go, bumbling around and often figuring things out with luck or a lucky Google. I know there are many people who have started their journey in similar ways, or have come from Canvas Apps or other places and are just dipping their toe in the model-driven app world. This post will provide some tips and tricks that hopefully will have at least one item that is new to you. There are still different ways to configure (classic and within the maker portal) but this post assumes using the experience found in https://make.powerapps.com. If you have any tips of your own, please share in the comments below!

1. Disable Recent Items

If you’ve added Lookup field to one of your forms, you’ve likely noticed that when you go to populate it, any records of the same type that you’ve recently viewed will be displayed.

Click to view in detail

In some circumstances, and for some users, this can be confusing, leading them to pick the wrong record rather than making sure they search for, and select the correct one each time. Using the maker experience, select the field from your form, then review the display options to the right hand side. From the list of options, select ‘Disable most recently used items’. Save and then publish your form.

Click to view in detail

Now when using the Lookup field, none of the recently viewed records are displayed so a user will need to search for the record they need each time.

Click to view in detail

If you have a series of Lookup fields, you can filter them based on their relationship to one another. For example, on an Opportunity, selecting an Account, then picking a Contact from a filtered list based on the one selected.

Click to view in detail

By default, the list would show you all Contact records. To change this, open the form, then click Switch to classic.

Click to view in detail

Find the field you want to filter, then click Change Properties. Tick the box for Only show records where, then pick the relationship. So here we want to only see Contacts that are linked to the Account selected on the Opportunity. Save and publish.

Click to view in detail

Now our Contact is filtered based on those that are linked to the Account selected first.

Click to view in detail

Forms are typically created using a series of tabs and sections. A form will also include a related ‘tab’ at the end showing all other records based on relationships in Dataverse. This can be confusing and often better hidden from users.

Click to view in detail

Open the form, then click Switch to classic.

Click to view in detail

Click on the Form Properties from the top of the form, then click on Display. Untick the box in the Page Navigation section that states ‘Show navigation items’. Save and publish the form.

Click to view in detail

The Related option is no longer visible from the top of the form.

Click to view in detail

4. Set Field Label Position

Labels are shown to the left side of the field by default. While this might work most of the time, sometimes shifting them to the top can provide a better experience visually. Long labels can wrap around, while date/time fields can end up looking strange.

Click to view in detail

On the form, select the section with the fields you wish to change, then go to the Formatting area in the Display options under Properties on the right. On the Component label position option, select Top. Then save and publish the form.

Click to view in detail

All labels within that section will now be displayed at the top of the field rather than the left.

Click to view in detail

5. Expand Field Length Across A Section

Sections can be formatted to have a number of columns. For example, we can have two columns and set up fields across them like below. What if some fields need a bit more space than others though?

Click to view in detail

Select the field, then go to the properties on the right. Click on Form field width under the formatting area at the bottom and select 2 columns. Save and publish the form.

Click to view in detail

Now we have some fields sitting next to each other in one column, and others stretching across using two columns,

Click to view in detail

6. Using Toggle Switch For Yes/No Fields

A Yes/No field can be used to show one of two options. It doesn’t have to be those values and could show True/False, Stop/Go or any other combinations as required. By default the field shows as a dropdown when added to a form.

Click to view in detail

Once the field has been added, the way it’s displayed on the form can be altered, providing a more aesthetically pleasing look with a switch. Select the field on your form in the maker portal, then click on Component. Select the Toggle component, then click Done. Save and publish the form.

Click to view in detail

Now the field uses a nice little toggle switch instead of the drop down list. It’s quickly clear and obvious which option has been selected and gives a clear indicator with a pop of colour.

Click to view in detail

7. Using Stars For Whole Number Fields

A whole number field can be used to capture details on a record. The minimum and maximum values allowed can be set to make sure users do not go above or below the purpose of the field. Adding it to a form, and the field just shows the number entered.

Click to view in detail

However, if the number you are capturing is for a rating of some kind, you can add a component to provide a clear star visual to see exactly what kind of rating has been added. Select the field on your form in the maker portal, then click on Component. Select the Star Rating component.

Click to view in detail

Then select the max number for the rating and click Done. Save and publish the form.

Click to view in detail

Instead of the user typing in a whole number, they can simply click on the stars to set it to the value needed for the rating field. Simple, easy to use, and a really nice visual.

Click to view in detail

8. Use Option Set Control For Choice

**WARNING**
Point suggested to me by George Doubinski from CRM Tip of the Day fame, this one does have accesibility issues that could be unpredictable for any users that might be colour blind or have other visual challenges. Use with caution!
**END WARNING**

Choice fields were originally known as Option Sets. This provides the user with the ability to select one of the values from a list. In this example, there are three options for Support Type.

Click to view in detail

When adding the field to a form, it shows as a drop down list to be selected from. However, if the Choice field has two or three values, a different control can be used to display the values as blocks, making it much easier to see the one selected.

Click to view in detail

From the form, click Switch to classic. Select the field on the form and click on Change Properties. On the Controls tab, scroll to the Option Set control. Select Web, Phone and Tablet, then save the changes on the field. Save and publish the form.

Click to view in detail

When viewing the field, it now shows all of your options along in one line of blocks. Reminder, this will only work if your Choice field has two or three options in it.

Click to view in detail

9. Conditionally Make Fields Required

Having required fields can be necessary, some of the time. Consider adding Contacts to your system. You won’t need an Account for each one, but sometimes it’s been made required. How can we change that?

Click to view in detail

Creating a business rule means you can set the Account field as required only if another field has a specific value. Adding a Client Contact Yes/No field allows us to do that. If that field is Yes, make the Account field required, if not it’s no longer required.

Click to view in detail

This makes sure data is required at the right times and in the right situations.

Click to view in detail

Makes it less frustrating for the users and means only necessary records are added.

Click to view in detail

10. Set New Error Message

If you have a field that’s required and a user saves the record without it being filled out, an error message will display. While it can often be obvious why it’s required, sometimes users might need a little more info.

Click to view in detail

Create a business rule and add an action for ‘Show Error Message’. Select the field that should show a message if it hasn’t been populated. A more detailed descriptive message than then be added for this specific field.

Click to view in detail

After saving and activating the business rule, it will take immediate effect. The user now knows specifically why the Account record is required and understands how to resolve it.

Click to view in detail

11. Make Sure First Tab Opens On Form

This one can be frustrating. If someone is editing a Form in the classic editor, and expands some of the tabs and minimises others, what you can end up is a situation where the second or third tab opens automatically by default, rather than the record opens with the first tab showing which is the most logical.

Click to view in detail

To solve this, open the form and click on each tab. Make sure this is either selected for all tabs, or deselected for all tabs. If some are selected and some are not, this will mean the first tab that is set as selected will open as the default tab. Also, if someone else then edits in the classic editor and leaves some tabs open and some closed, this will edit what you have done here. So make sure all System Administrators or Customisers are doing things the same way. THIS has to be my biggest pet peeve. 😉

Click to view in detail

Share Your Tips

What other tips do you have? These are things that can seem so simple when you have been doing this a long time but could really help out someone new to Model-driven Apps! Share them in the comments below!

Bonus Tip 1

Thanks to Alex McLachlan for the suggestion in the comments! Here is a bonus tip I had forgotten about. When adding a column (field), make sure you add a description that will help users understand it’s purpose. Without a description, when hovering over the name of the field we just see that appear which isn’t helpful at all.

Click to view in detail

Go to the column in make.powerapps.com and add something useful that will give the users enough information to understand the purpose.

Click to view in detail

Once saved, you should now see the new description when hovering your mouse over the field name. Much better. Thanks Alex!

Click to view in detail

Bonus Tip 2

This one is thanks to James Glover and his post I saw on LinkedIn. This is actually a new preview feature but WELL WORTH a mention here! If you have a view where you have included an option set (choice) field, it looks kind of boring initially right? It’s just a plain list of values.

Click to view in detail

However, if you go in to make.powerapps.com you can easily add a colour for each item you have in your Choices column. The ability to set colours has been there for some time, and it was used in certain areas (Customer Service mainly and useful in Power BI reports) but not really of much use to most people. Make sure you set the colours as fairly light as the text needs to still show up in the grid.

Click to view in detail

Now go in to the Classic editor and to your table/entity at the top level (not the View itself) and add the Preview Power Apps grid control. It doesn’t have the option at the View level just yet. Make sure you set it to be used on at least the Web. Then you can play around with the controls, save and Publish the entity changes.

Click to view in detail

Then we get this little beauty! Nice find James, loving this one. I also like the ability to add in the column icons, so we see what type of field it is in the column header too.

Click to view in detail

Bonus Tip 3

Thanks to Stefan Strube for the reminder of this one. It’s something I do on pretty much every implementation to make things easier for users, and ideally reduce errors on re-keying information, and that’s mapping from one entity to another. So let’s say we want to add a new even speaker record directly from a Contact. When we click to add the related record only the lookup back to the Contact is filled out. What about getting all the other items like the title and email? Passing it through automatically would be so much easier and faster.

Click to view in detail

Although we can start from the make.powerapps.com area, we can’t actually do the mapping from here. So make sure you add the relationship from the initial table (Contact in this instance) to the related table (Speaker) to your solution first.

Click to view in detail

Then from the Tables area we can switch to classic to get what we need.

Click to view in detail

From the entity. go in to the relationships area and then open up the relationship you need to edit. Then from the Mappings area we can click New.

Click to view in detail

You’ll be given a screen with two sides, the source and then the target entity. Find the two values that you want to map, select them both and click OK. Keep in mind that the two fields need to be of the same type and also the same size. So if your source text field holds 200 characters but your target text field only holds 100, you won’t be able to map it. Continue mapping all your fields then save and publish once finished.

Click to view in detail

Now when you create a new target record from the source, all of your values will be mapped in to it automatically. Awesome!

Click to view in detail


Check out the latest post:
Using An Unmapped Form Field To Capture The Referral URL In D365 Marketing


This is just 1 of 363 articles. You can browse through all of them by going to the main blog page, or navigate through different categories to find more content you are interested in. You can also subscribe and get new blog posts emailed to you directly.


6 thoughts on “11 Tips & Tricks In Model-driven Power Apps

  1. Thanks for these, and in particular the Option Set tip, that one had passed me by.

    My tip (and biggest peeve when it isn’t done) is to add descriptions to the columns so that users can understand what the column is for when hovering over the label. For example, for the column ‘Large Print’ adding the description “whether the Contact wants the Large Print version of the magazine”.

    1. Yes! Good one. I agree. Think I might need to add this to the end of the blog. Thanks Alex!

  2. I really like the way every suggestion is laid out in the article, with before and after screenshots. Very informative. Thank you!

  3. Is there any way to change the vertical size of an image in a form? I have a form that is only used by users to navigate through to related records, and I’ve added a map to the form. I know users can click on the image to see it full size, but it looks kinda naf having a small image on the app view with all this empty space around it, but I can’t see any way to make it display bigger …

    1. Hi Graeme, I’m not sure. I haven’t played around with that much to know. Likely if it’s not obvious and there is no setting for it, then I would imagine not out of the box. Have you checked out the PCF Gallery to see if someone has created a control that will do what you want? https://pcf.gallery/

Leave a Reply

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