Skip to main content

Part 1 - Automatic CE User creation, removing/assigning Dynamics License Process from Power Virtual Agent embedded in PowerApps Portal using Power Automate and Microsoft Graph API

# Part 1- Azure App and AD Group Configuration/Setup

Recently, I was involved in a project which gave me the opportunity to do some work for On-boarding and Off-boarding Field Services bookable resource as and when required by the Vendors/Partners of the organization. This is not implemented as of now but after the implementation of this process, it will help in removing a lot of manual process and steps that the client have to go through user creation.

In this blog, I am going to share my experience, my learning and the capabilities of Power Automate, PowerApps Portals, Microsoft Graph API, Power Virtual Agent, and Azure that I came across. The scenario that I will be covering here will basically be creating B2B users invites from PowerApps Portal and adding them as a Bookable Resource with type in Dynamics CRM D365.

The main ideas that will be covered will include:

  1. Creating CRM Contact and User from PowerApps Portal using embedded Power Virtual Agent and automating the creating of Work Order and Bookable Resource of type User.
  2. Automating the process of assigning and removing Licences using PowerApps Portal and Power Automate. 


The first thing that we need to start with automating the process is registering an App in Azure for the purpose of using and authentication of Microsoft Graph API in Power Automate to perform our operation.

Steps to Set up Enterprise Application in Azure

  1. Navigate to Azure and sign in with your username and password, make sure you are Global Admin.
  2. Register a new App, as shown below
  3. Create a secret key, as shown below and save it somewhere.



  4. Set Permissions to this App, as shown below:

  5. For this blog, I have given the following permissions, Grant Admin Consent to the permissions, as shown below











Azure Set up with AD Group and Licenses

  1. Create a group in Azure with the configurations shown in the image below
  2. Assign the appropriate license to this group, as shown below. The license assigned to this group will be assigned to each member of the group once they are added.
    Note: In this blog, for the demonstration purpose I am using Dynamics 365 Customer Engagement Plan for the License.

Licensing requirements

You must have one of the following licenses to use group-based licensing:
  • Paid or trial subscription for Azure AD Premium P1 and above
  • Paid or trial edition of Office 365 Enterprise E3 or Office 365 A3 or Office 365 GCC G3 or Office 365 E3 GCCH or Office 365 E3 for DOD and above.
Reference

Comments

Popular posts from this blog

Select Multiple Records from Entity List

Select Multiple Records from Entity List and Perform CRUD on records or related records Here I am going to demonstrate the process that can be used to select multiple records in an entity list to perform CRUD on records or related records. In this, we have one entity list which displays all the courses that are open for enrolment. CRM Contacts can log in to the portal and enrol for the desired coursed. The entity list is rendered on the portals as follows: The submit button is custom submit button which is designed to call Web API in order to perform the CRUD operation. Checkbox against each entity list item is designed using JQuery Registration Status is the Response from Web API Open means that the Registration is Currently Open for the logged-in portal contact to enrol and they can select multiple checkboxes and then click on Submit button to create their registration, In this, I am going to select : 1.  Diploma in Web Development 2.Bachelor of Applied Inf

Editable Entity List or Editable Subgrid PowerApps Portals

Editable Grid PowerApps Portal In this blog, I am going to explain how we can use PowerAutomate and old school JQuery on PowerApps portal to convert Entity List into editable entity list or subgrid. I am only using the string attributes of the Lead entity for Quick Update in this blog. The benefit of making entity list editable with this approach is that we do not loose the OOTB functionality of Search, Sorting, Grid Configuration to enable edit/view-details/delete and Filtering. How I manipulate the data attributes in entity list using JQuery is shown in the below screenshot The screenshot below shows how the code manipulates the entity list html elements using the above code. The PowerAutomate for updating the data in CRM. A success message is displayed on the portal to let user know that the update has been accomplished and the record is Updated in CRM The value retrieval on Click of custom Quick Update bu

PowerApps Portal Generic Error Feedback from Portal User

As we all know that whenever there is a server error on the PowerApps Portals we only see a generic error message. Which looks like There is a method of logging errors from the portal using Azure blob Storage, but this is something that I won’t be discussing today. I will be going ahead and asking for more information for the error on the portal from the Portal User actually experiencing it. Let’s see how we can achieve this thing. We can create Portal Generic Error in Content snippet to add custom text or information for the error message, but it is hard to get entity forms added using Content Snippet or any other HTML to be created using any bootstrap or custom css on this page. The only CSS that you get on this page is from the index page which highlights the h1 tag with bold and red color and everything that you add goes into the div with class dialog. I have made use of JavaScript to change HTML content and have added an entity form asking Portal User to submi