Posts

Showing posts from June, 2021

Power Automate Desktop Example - Downloading Image From Email To Network Drive

Image
After watching the RPA (Robotic Process Automation) demo from Steve Winward Real-Life Use case using AI Builder Form Processing with Power Automate Desktop I have been looking for ways to utilize Power Automate Desktop Flows in order to make my life a little easier. Yesterday like every day I started clicking through the emails that I receive from my kids schools. I open each email, download the image, then move the image to a network drive on my computer. This takes me a few minutes every day but my kids are worth it :) This scenario was a perfect one for me to automate using Desktop Flows since they can access the network drive on my desktop. The basic flow of the solution will be as follows: A Power Automate Cloud Flow will be triggered to run whenever a new email comes into my Gmail account with a specific tag. The Cloud Flow will gather up all the information needed to run the Desktop Flow The Cloud Flow call the Desktop Flow by connecting through an On-Premise Data Gate

Model App Access Checker for Dataverse

Image
Want to know which model applications your users have access to in Dataverse? Check out the app access checker that is available within the Power Platform admin center . Enter a users Id or email address and see the list of published apps in your environment and all the access, license and security information specific to that user. This can be a very useful tool in troubleshooting why a user cannot see a specific app in your environment. Below are the different ways you can access the app access checker. Direct Url You can access the app access checker directly using a url. Here is the format. https://<Your Org>.crm.dynamics.com/WebResources/msdyn_AppAccessChecker.html Power Platform Admin Center Open the Power Platform admin center https://admin.powerplatform.microsoft.com/ On the Environments list click the link for the environment you would like to check. Click on See all under the User heading the Action area. Click the app access checker link located above

Enable the Export to PDF Ribbon Button

Image
Dataverse allows you to easily generate your Word Templates as PDF files . Last year they expanded the functionality beyone just the out of the box sales entities to all custom entities. In order to enable the functionality though you need to do some configuration. Below are the different methods in which you can turn the PDF generation on or off for entities. Note : Aftert updating these settings in whatever manor make sure you clear your browser data . The ribbon stores the values for which entities are enabled and disabled within the browser session. If you don’t do this you may not see the PDF generation buttons show up after you enable them. Method 1 (Sales Hub Installed): For those orgs that have the Sales Hub app this is fairly straightforward. Navigate to the Apps page for your organization https://<Your Org>.crm.dynamics.com/apps Open the Sales Hub app Navigate to the App settings Area in the sitemap and click on Overview under the General group. Microsoft

Open Model Apps Url Using Unique Name

Image
When generating links for records, lists or reports in a Dataverse environment it is important that they open the specific application they relate to so users have the best experience. To see more details about generating links for Dataverse click here. This image shows the message bar displayed within Dataverse when you open a link not directed to a specific application. Previously in order to open a specific application using a link you had to create the it with the app suffix url or append the appid parameters to the url. In order to get either of those dynamically you need to query the Model-driven Apps (appmodule) entity and return the url attribute for the suffix or the appmoduleid attribute for the app id. Using App Suffix https://<Your Org>.crm.dynamics.com/apps/<Your App Suffix>/main.aspx?pagetype=entitylist&etn=contact or Using App Id https://<Your Org>.crm.dynamics.com/main.aspx?appid=82853804-d2b3-4536-ba75-f49ccca681ea&pagetype=entityli

Return Error in Power Automate When Using Try/Catch Scopes

Image
When utilizing scopes within Power Automate to create a try/catch/finally statement it can be useful to provide additional details about any errors that occurred within the try block. The example below shows how to get the results of a try block after it has failed and return that information. To replicate this do the following: Add a Control - Scope action called ‘Try’ Add another Control - Scope action below Try called ‘Catch’ Click the (…) on the Catch action and select the Configure after run settings . Then click the ‘has failed’ checkbox. Follow the screen shot below which will get the results array of the Try block then filter it down to the Failed result. You can then utilize the filtered result to return errors. The iamge belows shows the output after a completed run. We can now see the Action name which failed as well as the error message. In this scenario I am using that information to populate a JSON object which will be used later for returning information b

Custom Process Action vs Custom API in Dataverse

Image
I recently had the opportunity to utilize the new Custom API functionality within Dataverse. I had previously used Custom Process Actions and was a little confused as to the difference and why i would want to use the Custom API functionality. After digging through the documentation I finally discovered the major difference is this… The use case I was working on only returned data to the user so the Custom API allowed me to create a Function rather than an Action. This made it much easier to test my API because i can just put the Url into the web browsers and see the results instance since it’s only a GET operation. There are some additional benefits to utilizing the Custom API as well such as being able to specify a specific security privilege. To see all the differences between Custom Process Actions and Custom API check out this article from Microsoft Headache Alert! Make Sure To Create Custom API Record Before Deploying Code On a side note, most of the articles I found a

Calling Dataverse Web API in PowerShell using Client Credentials

Image
Connecting to Dataverse using PowerShell can be very helpful for data migrations and use within Azure DevOps. Connecting to an instance in a non-interactive way can be tricky though. This article will provide you the links you need for creation and App registration and adding the app user to your environment. You can then utilize the script provided to call Web API requests including ones you define using the new Custom API functionality now available. The script was written so that it is not dependent on any outside libraries such as the Microsoft.Xrm.Tooling connector. This is helpful in situation where involving an outside library will slow down your deployment time by having to be approved in a change control board. If utilizing an outside code library is not a concern you can create a connection to Dataverse utilizing the Microsoft.Xrm.Tooling connector Get-CrmConnection cmdlet. Create App Registration The first thing to do is create an App Registration within Azure AD for