Schedule maintenance updates should occur for Dynamics 365 CRM environment | Power Platform Admin Center

In case you are seeing issues lately that you are not able to access your Dynamics 365 CRM or it’s running relatively slow, it might be perhaps because the platform is being updates from Microsoft’s end for importing solutions in your environment as platform updates.

System freeze could happen if any solutions are being imported into your environment. Now, you can control when the updates should be allowed so that you don’t get downtime during your business hours. Let’s look at this!


Maintenance Window Settings in Power Platform Admin Center

Given that you are already aware on how you can go to Power Platform Admin Center (https://admin.powerplatform.microsoft.com/) –

  1. Navigate to Environments, select the Environment which you want to check the Apps Updates schedule and click on Settings.

  2. Once in Settings of the Environment, you’ll see the Updates section which you can expand and you’ll see the Maintenance Window Settings – So remember, this is still in Preview as of yet and might not work as expected unless it’s in GA.

  3. And this will let you set the time frame based on when you want to Updates to be applied to the environment.
    It’ll show that it’s currently set to 02:00 to 11:00 UTC – which is not favorable for my based on my working hours since I’m in India.

  4. So, I’ll check on a service like https://www.worldtimebuddy.com/ and make sure I compare and see when is the best way to schedule my updates for –
    Currently, the above updates are scheduled for 07 am IST which won’t suit my needs.

  5. So, I’ll change it to some other time! So, something like 15:00 UTC works for my which skips my usual business hours so that my business hours are not interrupted with Updates on the platform.

    So, I select the new time and click Save. I can expect about 48 hours for this to come into effect even though updates are usually pushed over the weekends and not weekdays.
  6. You can read this Microsoft Docs on Maintenance Window Settings here – https://learn.microsoft.com/en-gb/power-platform/admin/manage-maintenance-window?WT.mc_id=DX-MVP-5003911

Check Solutions History

In order to check if your CRM environment is not working as expected, as an Administrator you can always to Power Apps (https://make.powerapps.com/) –

  1. Make sure the correct environment is selected, then

  2. Then, in Solutions, you can see History tab which will show the recent App Updates applied.


  3. And as you see above, the updates were taking place based on what my old settings were set. Hence, I needed to change the same to ensure my business hours are not affected.

Hope this was useful and this helped in clarifying the concept!

Here are some Power Automate posts you want to check out –

  1. See Trigger Outputs using Edit Columns in Flow Runs | Power Automate [Quick Tip]
  2. Adding Image field on the form in Dynamics 365 CRM | Power Platform Modern Form Designer [Quick Tip]
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Create Custom APIs in Dynamics 365 CRM | Power Platform

Custom APIs in Dataverse is a great way to build your own API messages to encompass complex business operations into a single API. And Power Platform Admin Center provides a great way to keep things simple and yet build your custom APIs just like writing Plugins in Dynamics 365 CRM itself.

Pre Requisites

In order to build your own APIs, you must know the following –

  1. Writing Plugins in Dynamics 365 CRM – In case you are new to plugin development itself, you can follow this blog series wherein I’ve demonstrated how you can start writing your own C# Plugins for Dynamics 365 CRM.
    Link: Plugins Development in Dynamics 365 CRM for Beginners | [Blog Series]
  2. You’ll also need to know how to connect Postman to your Dynamics 365 CRM environment in order to test your APIs before you can use it in your custom application. I have a blog for the same as well.
    Link: Setup Postman to connect to Dynamics 365 CRM using OAuth 2.0 | Azure App Registration

Scenario

Here’s a scenario where I’ll demonstrate how you can use Custom API to do an operation in Dynamics 365 CRM and send back result to the calling application.

  1. Custom API is exposed to the calling application. Postman in this case.
  2. Once API is called and parameters is passed, a simple update of a field to an Account will take place.
  3. Result will be returned to the calling application. Again, Postman in this case.

Create your Custom API & Parameters in Power Platform Admin Center

Let’s create a Custom API that’ll pass on parameters to a plugin and plugin in-turn will send back the result itself –

  1. Assuming you have created a Solution in the correct Dynamics 365 / Dataverse environment. Click on New, and look for Custom API.

  2. Give it a suitable Name and fill in the Attributes which are required. Here, the unique name of the API is cf_processaccountapi.
    I will cover the other properties in a different blog post.

  3. Now, I’ll create 2 attributes which I need to pass as parameters to the API call itself.
    Hence, I’ll now create 2 new API Request Parameters in the solution by following the below menu.

  4. First will be the Account Code. I’ll select the Process Account API from the Custom API lookup on the form and then give unique name.
    Here, my parameter is of type String.

  5. And once I save this, this is how my parameter 1 i.e. Account Code is supposed to look.

  6. Similarly, my second parameter is as follows which accepts a String value. This parameter is called Grade Code. Again, this is just an example. Your scenario could be anything.

  7. Finally, I’ll also create a Response Property for the Custom API in order to send back the response to the caller.

  8. And just like how I defined the Request Parameters, I’ll also create the Response property as below.
    The form is quite self-explanatory by now.


  9. Once all of this is done, here’s how my API structure looks like in the solution.

Sample Plugin for Custom API & Registering it using Plugin Registration Tool

Given that you know how to work with Plugins in Dynamics 365 CRM, here’s how you can register the plugin as usual –

  1. In my plugin, I’m capturing the values from the attributes just like I would identify the context of a Plugin which runs on Update of an Account.

  2. Then, I’m finding the Account using the Account Code that was passed and updating that Account with the Option Set value which will be the Grade Code.

  3. Then, once all the processes are done, I’m setting the Output Parameter accountProcessResult with the success message.


  4. Open the Plugin Registration Tool and log into your environment. Then, Register the Assembly itself.

  5. Once your plugin has been registered, you’ll need to open the Custom API record again and associate this registered plugin on the Custom API record.
    Open the Custom API record which we created above –

  6. When you associate the Plugin Type, make sure you Save and Publish the customization.
  7. Now, we will test using Postman. Before we test, notice the Account Grade column which is of type OptionSet – we will update this using the Custom API we built.


    The OptionSet fields looks like below –

Testing Using Postman

Now that the code for the Custom API is ready as well as the Plugin too has been registered, let’s test the same using Postman –

  1. Again, in case you haven’t set the Postman to authenticate and connect to your D365 CRM environment, you can follow this post and set up your Postman to be able to call Dynamics 365 CRM.
    Link: Setup Postman to connect to Dynamics 365 CRM using OAuth 2.0 | Azure App Registration
  2. Now, given that you were able to successfully connect Postman to Dynamics 365, you can do a simple metadata call and check if you connection was successful.

  3. Now, look at the unique name of the Custom API we created.
    Now, switch the method to Post, and append the name of the Custom API itself.
    Then, in raw – select JSON type data and construct the JSON to be sent.

  4. And the result will be returned based on what Output Parameters was set.

  5. And you’ll see the data on the OptionSet being updated through this example.

Hope this was useful and this helped in clarifying the concept!

Here are some Power Automate posts you want to check out –

  1. See Trigger Outputs using Edit Columns in Flow Runs | Power Automate [Quick Tip]
  2. Adding Image field on the form in Dynamics 365 CRM | Power Platform Modern Form Designer [Quick Tip]
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Fiscal Year Settings in Dynamics 365 CRM

You or your customers might be in different geographies which need their Sales cycle to follow their respective Fiscal Year (or Financial Year).
Here’s how you setup Fiscal Year settings in your Dynamics 365 Sales CRM and how you can see data accordingly –

Fiscal Year Settings

Promoting use of Power Platform Admin Center, here’s how you can set your Fiscal Year settings from PPAC –

  1. Go to the Settings of the environment.

  2. In Settings, expand Business section and then select Calendar.

  3. It’ll open the Fiscal year settings in a new Tab.

  4. If you are still using the Classic UI in CRM, you need to go to the Business Management area in Settings from the navigation menu.

  5. And there, you’ll find the Fiscal Year Settings

  6. And it’ll open the same Fiscal Year settings dialog.

  7. Now, you can set a prior date to where a new Fiscal Year starts, in the below example, Indian Fiscal Year starts from 1st Apr, so – I’ve set this to 1st Apr 2022. And the Fiscal periods are Quarterly.

  8. Once you click OK, the Fiscal Year will be considered from 1st April. All he subsequent quarters and fiscal year end will be set which will help you see data accordingly.

Viewing Sales Data

Based on the Settings for Fiscal Year set above –

  1. Now, here are all the Won Opportunities.

  2. If you look at Won Opportunities and filter for a particular Fiscal Period (Quarter)
    You’ll see the below Opportunities closed in the current quarter.
    I’ll add a Filter here to show the current Fiscal Period.


    You’ll see data only for current Quarter –

  3. If you select, Fiscal Year (Fiscal Year starting from 1st Apr to 31st Mar), it’ll show the below data.


    And for this Fiscal Year, you’ll see Opportunities closed post 1st Apr 2022.

  4. Similarly, Last Fiscal Year will show data from prior to 1st Apr.


    It’ll show you the Opportunities closed prior to 1st Apr 2022.

  5. Additionally, you also have options to filter for last X Fiscal Period/Year

Hope this helps in setting correct Fiscal Year settings to see correct Sales data.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. See Trigger Outputs using Edit Columns in Flow Runs | Power Automate [Quick Tip]
  2. Adding Image field on the form in Dynamics 365 CRM | Power Platform Modern Form Designer [Quick Tip]
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

See Trigger Outputs using Edit Columns in Flow Runs | Power Automate [Quick Tip]

If you are noticed a new addition to the Cloud Flows is where you see the Edit Columns in the Flow page.

Edit Columns in Flow

When you open a Flow, you see the below –

  1. These are your usual results of Flow Runs.

  2. And then you open each Flow Run to see what data is passed in the attributes of the steps.

  3. Now, here’s where Edit Columns are a useful new addition if you are using Flows around Sep 2022 time frame.

  4. And then you get to select the attributes from the Flow itself. In this instance, I’m select name and accountid fields from the Flow.
    Once your desired columns are selected, you can click Save.


  5. Those columns and their respective values will show up. This will save your effort to go into each Flow to look at what the values are.

  6. And from All Runs page, you can even export these to Excel if you need to.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Blocking Attachment Extensions in Dynamics 365 CRM
  2. Upgrade Dataverse for Teams Environment to Dataverse Environment
  3. Showing Sandbox or Non Production Apps in Power App mobile app
  4. Create a Power Apps Per User Plan Trial | Dataverse environment
  5. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  6. Co-presence in Power Automate | Multiple users working on a Flow
  7. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  8. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  9. Call a Flow from Canvas Power App and get back response | Power Platform\
  10. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  11. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  12. Asynchronous HTTP Response from a Flow | Power Automate
  13. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  14. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Adding Image field on the form in Dynamics 365 CRM | Power Platform Modern Form Designer [Quick Tip]

If you are predominantly working in Dynamics 365 CRM i.e. the classic Form Designer and have one of the below fields –

You won’t be able to find it to add it on the Form in the Classic Editor.

And you are wondering how you can get this field on the form, then this quick tip is for you!

Modern Form Designer

Given that you are aware of how to get to the modern form designer –

  1. Once you open the Form from Power Apps (https://make.powerapps.com/), you can go to the Solution your Form/Fields are put in.


  2. Then, open your Form from the Solution

  3. And in your Form, if you look for the fields / Columns section to put on the form, you can see the Thumbnail field we created is present.

  4. You can then double click it and add on the Form. And then, this field will also work when using Dynamics 365 CRM Apps like Field Service, Sales etc.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Blocking Attachment Extensions in Dynamics 365 CRM
  2. Upgrade Dataverse for Teams Environment to Dataverse Environment
  3. Showing Sandbox or Non Production Apps in Power App mobile app
  4. Create a Power Apps Per User Plan Trial | Dataverse environment
  5. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  6. Co-presence in Power Automate | Multiple users working on a Flow
  7. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  8. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  9. Call a Flow from Canvas Power App and get back response | Power Platform\
  10. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  11. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  12. Asynchronous HTTP Response from a Flow | Power Automate
  13. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  14. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Migrate data with original record GUIDs using Excel Import in Dynamics 365 CRM

Although, there are many tools/provisions which you can use to migrate data in one-go which also helps you retain or take over the original GUIDs from source instance to target instance.

Scenario

Let’s look at this scenario –

  1. You have a Source Environment (https://chcft166.crm.dynamics.com/) from which you want to move data over to the Target environment (https://cft166sales.crm.dynamics.com/).

    Source



    Target

  2. Now, you want to move Accounts from the Source to Target environment and also want to retain the GUIDs from the Source environment.


  3. Let’s note the Source GUID in a Notepad just to show an example –

  4. Now, when we export these records and import into the Target instance, the source GUID should be retained. Let’s look in below sections as to how we can achieve this.

Export to Dynamic Sheet

Here’s how you use Export to Dynamic Sheet in order to also get supporting fields to be imported into Production –

  1. In your desired view, expand on Export to Excel option and look for Dynamic Worksheet.

  2. Select the fields you need and click on Export.

  3. When you Export, you’ll get the Excel file in your system. Open it up!

  4. Just notice that there are 3 hidden fields in the Excel which have other data stored in them. The Excel columns start from “D” instead of “A”.

  5. And when you expand the columns, you’ll see the A, B & C as well. Now, A column has the GUID which you need to be set in the Target instance.

  6. Save this file as .CSV in case this is .XLS

Import into Target Instance

Once you have saved the File in .CSV, let’s import the CSV into the Target instance –

  1. In any view, expand on Import (Look in the Ellipses menu).

  2. You’ll find the Import from CSV button.

  3. Now, choose File by clicking on this button and selecting the File from your system.

  4. Once the File is selected, click on Next.

  5. Proceed further if you don’t wish to change any other preferences.

  6. In Mapping, you can see the fields from the Excel file i.e. (Do Not Modify) Account which is Not Mapped.

  7. Then, for this field look for the Primary Key field of the entity in question. Account’s Primary Key field in this example.

  8. Once this is mapped, you can Finish Import.

  9. Once you Finish Import and check back and open the Imported record.

  10. When you open the Imported record, look at the GUID of the record itself.

  11. If I click on the URL and see the end of the URL, I’ll have the same GUID as the Source record from the Source environment.


    And when you try to match the GUID, you’ll find the same GUID on the target instance.

And that’s how you can Excel Import / Export without other tools to move data with source GUIDs to the Target GUIDs.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Authenticate Dataverse connector using Service Principal in a Power Automate Flow

Many times, users/admins are not comfortable using their credentials being used as Connections. Some connectors do provide the ability to authenticate using Service Principal.

Let’s jump into this! 😊

Setting Up App Registration for Dynamics 365 CRM

Here’s how you setup an App Service to be used as a Service Principal for Dataverse connector in Power Automate –

  1. Go to the Azure Portal (https://portal.azure.com/) and the look for Azure Active Directory.

  2. In Azure Active Directory, look for App Registrations in the menu.

  3. Now, create a + New registration record.

  4. Now, give this App Registration a suitable name. And you can select your preferences on how the tenant type should be. I’ve left it to Single tenant or simplicity of the example.

  5. Now, once this is created, go to the API Permissions section.

  6. Now, look for a button to Add a permission.

  7. Then, select Dynamics CRM and select it.

  8. Once this is selected, you’ll get to select user_impersonation. Then, clicked Add permissions.
  9. Once added, you’ll see that the Status column is blank. Then, click on Grant admin consent for <TenantName>.

  10. Once you click on Grant admin consent button, you’ll be asked for confirmation. Confirm the same.

  11. Once you confirm, you’ll see the status as Granted as shown below.

  12. Then, go to Certificates and secrets. Once in that, click on + New client secret.

  13. You’ll be asked the the Description, do so and Save it.

  14. Now, you need to copy the value onto Notepad.

  15. Now, let’s move to adding this App Registration to the Power Platform Admin Center so that you can then give appropriate permissions so that it can be used for Authentication into Dataverse.

Add Application User in Power Platform Admin Center

Go to the Power Platform Admin Center (https://admin.powerplatform.microsoft.com/) and the to the Environments section and select the correct Dataverse environment –

  1. Select the environment which will have your Flow that will use the Dataverse connection in question.
    And click Settings.

  2. Now, expand Users + permissions section and look for Application Users.

  3. Now, in Application Users, you’ll need to add the App Registration as a User and give Roles. Now, click on + New app user.

  4. Now, click on + Add an app.

  5. Now, any App Registration that has not yet been created in the current environment as user will automatically appear. Select the one you created – “Dataverse Service Principal” in this case and click on Add.

  6. Now, select the BU.

  7. Next, click on Security Roles’ pencil to give roles.

  8. I’m just giving System Administrator for simplicity of example.

  9. Now, you should be good to create this user. Click on Create.

  10. Finally, your Application Record will look like this –

  11. Now that your Application User is set in Dynamics / Power Platform Admin Center, you are all set to add this to authenticate the Dataverse Connector in Power Automate. Let’s do that!

Authenticating using Service Principle in Dataverse action

Now, let’s say you are starting a Flow with the Dataverse connector –

  1. Select the Dataverse trigger you want to use. I’ll pick a common one.

  2. Now, click on the three dots and look to add a new Connection if it already authenticated using the logged in user which is the default behavior.

  3. Now, you’ll see the option to select –

  4. Now, you’ll see these fields to fill in.

  5. Now, first give the connection itself a suitable name.

  6. Now, for Client ID – Go to the App Registration in Azure and look for the Client ID in the information section. It’ll look like this –


    Paste it in the Client ID field and it’ll look like this –

  7. Now, look for Client Secret – open the Notepad where you saved the Secret we copied while creating the Client Secret record in Azure.

  8. Now, finally – Go to the App Registration record and you’ll find the Tenant ID here –


    And paste is where it says Tenant. Now, Create this connection!
  9. Ensure that the Connection is selected.

  10. I’ll just add an extra variable in order to save this simple Flow and then we’ll create an Account (simple example if you see the screenshot below) in order to Run this Flow.
    My Flow looks ready to be tested.

  11. Now, I’ll create an Account in my Dynamics 365 CRM.

  12. And the Flow would have Run already.

Validate

In order to ensure the connection is run by the Service Principal itself, you can do this –

  1. In advanced options, you can choose to “Run as” as “Flow owner


  2. And when you check the details in the Flow Run, you can check the attribute in the trigger “RunAsSystemUserId

  3. And if you check this GUID, it belongs to the Dataverse Service Principal user we set up.


    And that’s how you can setup to run the Dataverse action to use Service Principal instead of user credentials!

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Dynamic content behavior for Get a row by ID and List Rows action in Dataverse connector | Power Automate Flow

Here’s an observation in one of the actions in the Dataverse connectors in Power Automate, which is “Get a row by ID”.

Select Columns

If you have selected specific columns in the Select Columns parameter of the connector, only those will be shown in the Dynamic content in next steps of the Flow.

All Columns

When you have not mentioned/selected specific columns and kept it blank, you’ll see the complete list of fields in the next steps of the Flow.

List Rows action

The same is also true for other action like “List Records” which shows all the attributes when selected columns are not mentioned, but shows only the ones mentioned with other required attributes if you have specific column names entered as shown below.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform\
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Select the item based on a key value using Filter Array in Power Automate

In case you need to select an item from an array in Power Automate based on the value of a certain attribute, here’s how you can do it.

Scenario

In the below example, we want to select the item / array of objects where we want to select based on a value of an attribute. Here, the attribute is “key” and we want to select the condition to match the value “RelatedEntities

As you see, the array of objects have different structure – All of them have an attribute called “key” and that’s the one you want to select and then process further.

Let’s see how we do it.

Filter Array

Let’s see how you can select the item from the array based on the value of the “key” attribute instead of looping through all the items and matching.

  1. Now, let’s say the data is stored in the variable for demo purposes, that’s what I’m feeding into the Filter Array action in the Flow.
    Remember what goes into the Filter Array action has to be an array data.

  2. In Data Operations connector, you’ll find the Filter Array action which we’ll need to pick the item with “key” = “RelatedEntities”

  3. In Filter Array, you set the Input to the array data which is stored in the variable shown above.

  4. Once you select, you then need to provide the condition to filter the Array.
    In this example, we want to filter based on the “key” = “RelatedEntities” as seen in the Scenario section above.
    So, in the dynamic content section, go to Expression section and then use item() function and just like you access an element in a JS, you can mention what attribute you are trying to access.

  5. And in the value, you can mention what the value has to be.

  6. And in the answer, when you run the Flow with the sample data, you’ll get the below result.

  7. The other elements are filtered out. If you have two items of the same value, both will be returned.

  8. Below is how the actual code looks like when you edit in Advanced Mode –

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Blocking Attachment Extensions in Dynamics 365 CRM
  2. Upgrade Dataverse for Teams Environment to Dataverse Environment
  3. Showing Sandbox or Non Production Apps in Power App mobile app
  4. Create a Power Apps Per User Plan Trial | Dataverse environment
  5. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  6. Co-presence in Power Automate | Multiple users working on a Flow
  7. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  8. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  9. Call a Flow from Canvas Power App and get back response | Power Platform\
  10. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  11. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  12. Asynchronous HTTP Response from a Flow | Power Automate
  13. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  14. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!