In the realm of digital solutions, the ability to tailor user experiences is paramount. Our team specializes in crafting solutions that not only announce or notify users but also empower them with control over these notifications.

The Challenge: Lack of Default User Settings

A common hurdle we encounter is the absence of default user settings within the Power Platform to accommodate new preferences. Users need the flexibility to opt-out of notifications, but the question arises: where should these preferences be stored?

Our Solution: Leveraging Dataverse

To address this, we turned to the out-of-the-box (OOB) capabilities of the Power Platform. Our breakthrough came with the realization that Dataverse could be utilized effectively. By setting user permissions for a dedicated table, we ensured that each individual has autonomy over their settings. This approach guarantees that users can manage their preferences while maintaining the ability to read these settings within Power Apps or Power Automate.

User Empowerment: A Custom Page in Model Driven App

To enhance user empowerment further, we developed a custom page within the Model Driven App. This dedicated interface allows users to maintain and adjust their settings with ease, ensuring a seamless experience across our digital offerings.

I’m doing assignment to Finnish Innovation Fund Sitra and in CRM project I developed this solution.

  1. First you need to create Dataverse table and set permissions to security role
  2. Then you need to build a logic into Power Automate how to read the settings
  3. Finally there is need for creating user interface where settings can be managed

Create Dataverse table and set permissions to security role

Create table user settings, add there columns for each functionality that you want user to be able to setup. In my case there are two settings meaning two different functionalities that user needs to be able to select on or off. Use Yes/No column.

Then remember to attach into the same solution to basic user security role the permissions for users to create, read, write and delete rows in the table in user level. This way every user can see and control only their own settings, not others.