Advania UK logo  Advania UK logo compact

How to build a Microsoft Power App: an introduction to Power Platform

Advania - build a MS Power App
Posted On
Written by
Duration of read
7  min
Share Article
Subscribe via email
As businesses look to optimise efficiency and cut costs, the potential that Microsoft Power Platform brings for innovation and creativity is providing benefits to workplaces across multiple industries. The ability for organisations to build a Microsoft Power App within their own workforce adds new and exciting opportunities for innovation which were previously out of reach. 
In this blog, the first in a four-part technical series, Solutions Architect Steve Worrell provides a Power Platform overview and recommendations when starting to build apps in Microsoft Power Platform, discusses the difference between model-driven and canvas Power Apps, and highlights useful integrations in Microsoft Power Pages. 

Power Platform overview 

The democratisation of app building by Microsoft, via its Power Platform suite, has proven extremely popular and increasingly beneficial to its customers.

This low code / no code approach (apps can be extended with the use of code) has opened the door to ‘citizen developers’ – users who are not traditionally thought of as developers within an organisation – to learn how to build Microsoft Power Apps. Familiarity with Power Apps and a basic Power Platform overview can improve efficiency, optimisation and automation of work tasks or specific business processes. 

Designers drawing website ux app development. User experience concept.

At Advania we have had great experience implementing successful Power Platform-related projects across a wide range of customer industries. This has resulted in the inauguration of our very own Power Platform-specific practice. 

To start building a Microsoft Power App in Power Platform, the relevant Microsoft licensing is required. If you cannot access the Power Apps environment with your work Microsoft user account, you can begin a free trial with a personal Microsoft account or request access within your organisation. 

Microsoft Power Apps overview: canvas apps 

A clear Microsoft Power Apps overview provides the knowledge of which app to use for what task. One such app gives you a completely blank canvas. 

Put simply, a canvas app is a custom app built using an intuitive drag-and-drop editor, allowing components to be added and rearranged on the blank canvas as desired.   

You have an extensive range of controls when creating a canvas app, varying from basics such as date pickers, buttons and combo boxes to more elaborate options including barcode scanners and picture capturing. 

Canvas apps can be designed specifically for mobile as well as conventional desktop browser use.  

The app creation process in the Power Apps maker portal is highly intuitive – and with Microsoft recently launching its ‘co-authoring’ feature, two or more app builders can work to create apps simultaneously. 

Once a canvas app is built and ready, it can be shared with others within your organisation and with external/guest users. Additionally, you can embed your app in SharePoint, Teams or model-driven apps, or use visuals from an app in Power BI. 

Canvas apps can be used to replace and modernise business processes, whether these are team-specific or organisation-wide. Common processes built with canvas apps include employee onboarding, holiday approvals, IT support service requests, purchase orders and invoicing, inspections and seat bookings. 

Microsoft Power Apps overview: model-driven apps  

Model-driven apps are built on top of data held in the Microsoft Dataverse – a cloud-based storage facility where businesses can safely and securely keep their business application data. All model-driven apps will be integrated with the Dataverse and having been built on Dynamics 365 technology will be familiar and intuitive to users.  

When building model-driven apps, a number of features can be drawn from the Dataverse, making them simple and quick to design and build. The information and pre-determined functionality stored in the Dataverse make model-driven apps more appropriate to solving complex business problems. 

The Dataverse provides an industry-standard set of tables, such as accounts and contacts, out of the box while retaining the ability  for developers to create their own. 

Once all required tables have been built, relationships can be created between them to finalise your data model. When building a model driven app, the app designer allows you to create an interface that displays and streamlines the interrogation of this data. On top of this business rules can be applied and steps can be defined for data processing with business process flows. 

The key differences between a model-driven app and a canvas app, aside from the data platform, is the security model and design experience. 

With the Dataverse’s security model it’s possible to create very specific and intricate access for users via security roles to all components that comprise an environment. 

With the design experience, model-driven apps have a strict structural layout, which allows for the addition of forms, views, charts and dashboards based on your data tables via the app designer interface. However, there is no ability to completely customise the layout.  

This structured layout provides a consistent user experience, accessibility and ability to create the app interface swiftly.  

Conversely, much like canvas apps, model-driven apps can be shared with all users within your organisation or guests within your Azure AD tenant, provided they have the right licensing.   

Power App integrations with Power Automate and Power BI 

Model-driven apps can be integrated with Power Automate, with flow triggers specific to actions taken on data within Dataverse.  

Power BI dashboards and canvas apps can dovetail perfectly, and in fact can also be embedded within model-driven apps. These integrations are a very powerful tool when you want to take your app to the next level. 

If that wasn’t enough, further extendibility is possible with almost the entirety of a model-driven app able to be developed with custom code.  

Though any process which is data-driven could be considered suitable for implementation as a model-driven app, some specific examples of typical use cases for model-driven apps are asset tracking, case management, customer relationship management and event management.  

Building a website? Power Pages use cases 

Power Pages, formerly Power Apps portals and Dynamics 365 portals, is a software as a service (SaaS) platform that provides all the tools necessary to create, host and manage public-facing websites.  

Typical Power Pages use cases include employee or customer self-service processes such as a knowledge base or service request portal. In scenarios where the latest information on projects, financials and company collateral is required, a Power Portal could be implemented to manage this utility.. 

The beauty of Power Pages is the ease with which it is possible to build web pages. The design studio lets you add styling and a range of rich components, as well as handling the display of data from the Dataverse in the shape of forms, lists and views. Every website designed in Power Pages is responsive across all devices. 

If you don’t wish to build your website from scratch, a site design template can be used to accelerate the build.  

Where business data is required to be submitted or retrieved and displayed on your Power Pages website, you can use the native integrations with the Dataverse and model-driven apps. Only the Dataverse can be used as your data source; to display that data you need to create a model-driven app – either a form, view or chart – which can then be seamlessly displayed on your Power Page website via the design studio. 

Because your data is stored in the Dataverse, it’s completely secure, meaning you can combine the security role model with Power Pages permissions. This allows you to provide individual access to pages and specific rows of data where required. 

Added to this, various authentication options are provided, with users able to sign into your website  through providers such as Azure Active Directory, Azure Active Directory B2C, Google and Facebook.  

Power Pages integrations with the Power Platform 

Invaluably, Power Automate, Power BI and Power Virtual Agents can be integrated with your Power Pages website. Power Automate can be used to process business data in the Dataverse once a user interacts with it on the site; Power BI can bring reporting into the website, providing immersive dashboards and insights; and Power Virtual Agent chatbots can be added to your websites, enabling user interactivity and Q&A functionality. 

No code is necessary to create a website in Power Pages, but the option is still available for those with development teams who may want to extend the functionality provided. There’s a further useful integration with Visual Studio code, which opens an in-browser code editor, so you can see each page schema if desired. It’s also possible to add your own custom stylesheets for those who want to create their own. 

Build a Microsoft Power App to integrate and add value  

Canvas apps, model-driven apps and Power Pages are all effective tools, which when integrated with one another and the other Power Platform and Microsoft 365 apps, provide immeasurable value to businesses.  

My next blog will be an in-depth look at the best practices to keep in mind when implementing canvas apps. 

If you’re interested in speaking to us about Power Platform or have any questions on how to build a Microsoft Power App, we can help you start your Microsoft Power Apps journey.

Sign up to receive insights from our experts

Get the latest news and developments from Advania delivered to your inbox

Other blog articles that might interest you

Driven by client success

We’re proud to work with the some of the most ambitious and innovative organisations.

Sign up to receive insights from our experts

Get the latest news and developments from Advania delivered to your inbox.