How to design solutions

From Power Wiki
Revision as of 19:15, 12 January 2022 by CarinaMClaesson (talk | contribs)
Jump to navigation Jump to search

You might think that you need an app, but should you choose a model-driven app or a canvas app? You know that you need some business logic to be implemented, but how do you choose the way to implement the business logic when there are so many different possibilities and ways to design and build a solution? On this page, we've tried to gather information about choosing the right technology.

General

  • Look at the requirements, what are the actual needs?
  • Have licensing in mind. Can we use Dynamics? Can we use Datverse etc.?

Power Apps

So you think you need an app and now you need to figure out which app type to choose. Here follows some guidelines.

  • Model-driven apps have Dataverse as datasouce. Dataverse means a relational database which comes with built-in functionality for setting up security. But it also comes with a licensing cost.
  • If you want to be able to have several different data sources then it might be a canvas app you need.
  • If mobility is important, then it might be a canvas app that you need.
  • If flexible UI is important, then it might be a canvas app you need.
  • If the users of the app are not within your own organization, perhaps you want your customers to update information about themselves. Then you might need Power Apps Portals.

Data Modeling with Dataverse

Model-driven apps

This chapter contains guidance for designing model-driven apps.

UI extensions

Business Rules

Business Rules can be used e.g. in order to set a column as mandatory or hide/display a column depending on some certain logic. Used for more simpler form logic/manipulations.

Form Scripting

When you reach limitations in Business Rules (e.g. you need to hide/show a column based on the value of a related table's column) developers can use JavaScript to implement the form logic.

TypeScript

Business Logic for model-driven apps

Low-code

Develper

Other

User Notifications in model-driven apps

In-app notifications give the user notifications within the model-driven app and these notifications can be seen when using the app.