Advanced condition builder in Power Automate (Microsoft Flow)

Was just exploring the advanced condition builder added to the Power Automate (Flow) beginning of the last year.

The new conditional builder makes it very easy to write complex conditional logic compared to using expressions.

We can easily add row (conditions) and group them

The row (condition) can be grouped by either And or Or.

To simplify the view, the group can be collapsed.

The group can be deleted, moved up or down along with ungrouping.


For complex expression, we use the regular Dynamic Content expression builder to enter in the left side of the row as shown below.

Example of its usage – https://nishantrana.me/2020/01/02/using-power-virtual-agent-and-power-automate-flow-to-create-a-simple-bot-for-cases-in-dynamics-365-for-customer-service/

Total 10 conditions can be added after which the option of adding more option gets disabled.

We can add a group as the 10th row and again add conditions in that row.

Similarly, 10 group as row can be added

Similarly, we can have 5 nested groups

The below post by Benitez Here explains it best, and includes comparison with the workflow designer.

http://benitezhere.blogspot.com/2019/02/flow-condition-builder-how-tos.html

Hope it helps..

Publishing the bot– Power Virtual agent

In the last post, we saw how to create a simple bot, now let us see how we can publish it.

Navigate to the Publish tab in the side navigation pane and click on Publish.

After a successful publish click on the demo website to test the bot

Navigate to Manage à Channels to configure it for various channels.

Below are all the channels that the bot can be configured for.

Demo Website à

We can specify the Welcome Message as well as the Conversation starters

Custom Website à

It can be added as Iframe to the existing web sites.

Within Power Apps Portal, we can add the bot to the Iframe Component as shown below

Power Virtual Agent also comes with analytics to show key performance indicators for different topics.

Get all the details here

https://docs.microsoft.com/en-in/power-virtual-agents/analytics-summary

Helpful posts –

https://readyxrm.blog/2019/11/06/adding-a-power-virtual-agent-to-a-power-apps-portal/

https://joegill.com/powerapps-portal-virtual-agent-bot/

Hope it helps..

Using Power Virtual Agent and Power Automate (Flow) to create a simple bot for Cases in Dynamics 365 for Customer Service

Here we will take a very simple example to see how Power Virtual Agent be used along with Power Automate to interact with Dynamics 365 model-driven App

Basically, the user enters the case number (ticketnumber) in the chatbot to get the current status of the Case.

To begin with,

  • Sign in / Sign up to create an account for Power Virtual Agents

https://powervirtualagents.microsoft.com/en-us/

  • Sign in with your work email address.
  • Name your bot and click on create.

Create a new Topic with Name as Case Topic and Trigger phrases as shown below and save it.

Click on Go
to authoring canvas

Add node Show a message



Next, add new “Ask a question” node, the bot will ask the user to enter the case number

Next, add a node “Call an action” to call the PowerAutomate (Flow)

Let us pause here and first author the Flow which we would be calling from this particular node.

To create the Flow, login to PowerApps portal https://web.powerapps.com/, select the Virtual Agent environment, here we have created a new Solution and created a new Flow inside that solution.

First add the trigger “When an HTTP Request is received” with the below request body, to take case number input from the user.

Then add Initialize Variable step, which will hold the output for the response.

Next, add the List records step to get the case’s status based on the case number.

Next add the condition step, for handling the scenario when the user enters the wrong case number.

The expression used for the Condition step.

coalesce(body(‘List_records’)?[‘value’]?[0]?[‘ItemInternalId’],’NULL’)

The helpful posts

Next set the variable

For If Yes à

Expression
à

body(‘List_records’)[‘value’]?[0]?[‘_statuscode_label’]

For If no, we are simple setting the value as “No case record found”

Lastly add the Response step, which returns the output through the variable.

The flow à

Save the Flow, and go back to authoring canvas of the Topic in the Power Virtual Agent.

Select the flow created in the Call an action node

Specify CaseNumber as the input

Select Show a message as the next node

Specify caseResult output as the value to be used inside the Message

Save the dialog and now let us test it.

This is how the entire conversation logic looks like for our case topic.

We can also add End the conversation node to it.

Next, we will see how to publish and deploy this bot.

 

Hope it helps..

Dynamics 365 2019 release wave 2 blog posts

  • Customize Opportunity Close Dialog box

https://nishantrana.me/2019/11/22/customize-opportunity-close-dialog-box-dynamics-365-for-sales/

  • Lead related enhancements

https://nishantrana.me/2019/11/22/lead-enhancements-in-dynamics-365-for-sales-2019-release-wave-2/

  • Contextual Email Communication

https://nishantrana.me/2019/11/23/contextual-email-communication-in-dynamics-365-for-sales-2019-release-wave-2-unified-client/

  • Save and New button in Quick Create Form

https://nishantrana.me/2019/11/25/save-and-new-button-in-quick-create-form-2019-release-wave-2-unified-interface/

  • High Density Headers

https://nishantrana.me/2019/11/26/high-density-headers-in-dynamics-365-2019-release-wave-2-unified-interface/

  • Using Xrm.Navigation.navigateTo to open Web resources Modal or Inline.

https://nishantrana.me/2019/11/28/open-webresources-modal-or-inline-using-xrm-naviagtion-naviagteto-in-dynamics-365-unified-interface/

  • Business Card Scanner

https://nishantrana.me/2019/12/23/scan-business-cards-in-dynamics-365-for-sales-2019-release-wave-2-unified-interface/

  • Timeline and Grid control Enhancements

https://nishantrana.me/2019/12/24/timeline-and-grid-control-enhancement-in-dynamics-365-customer-service-2019-release-wave-2-unified-interface/

  • Lookup Filter, Error Notifications and Territory entity enhancements

https://nishantrana.me/2019/12/25/lookup-filter-error-notifications-territory-entity-enhancements-in-dynamics-365-for-sales-customer-service-2019-release-wave-2-unified-interface/

  • Knowledge management enhancements

https://nishantrana.me/2019/12/27/knowledge-management-enhancements-in-dynamics-365-for-customer-service-2019-release-wave-2/

  • Product related enhancements

https://nishantrana.me/2019/12/28/opportunity-quote-order-invoice-product-related-enhancements-in-dynamics-365-for-sales/

  • The helpful resources: –

https://www.youtube.com/playlist?list=PLcakwueIHoT8-FSLxr5-3pprKWFHFMv3N

https://docs.microsoft.com/en-us/dynamics365-release-plan/2019wave2/

 

Reference Panel section for Forms in Dynamics 365

With the reference panel section, users can move across the different grid and quick view control that are part of it at a single place instead of scrolling.

  • Reference Panel is a new type of section that can be added on form.

  • Only one reference panel can be added per form.

  • It is a single column section.

  • Multiple Sub-grid and Quick View control can be added to it.

Make sure to apply the appropriate icon.

  • The default tab will be the first control added.

  • The other tab will follow the same order in which they are added.

More on sections

https://bit.ly/2MCPL3E

https://www.youtube.com/watch?v=ubEIAgKFzLo

Hope it helps..

Opportunity/Quote/Order/Invoice Product-related enhancements in Dynamics 365 for Sales

Below are some of the features added in the Opportunity/Quote/Order/Invoice products for the users to improve their experience.

If we try adding a new product line item without specifying the price list we will get the pop-up message box that asks us to specify the price list.

To override this behavior,

Go to Product Catalog Settings and set Price list optional and click on Apply as below.

This time it opens the opportunity line form on click of Add Product Line Item.

For legacy web client, the same setting can be defined at Sales tab of System Settings dialog box à

We can also “Save and Create New” option on the Quick Create form of the product line item to quickly add the multiple product line items.

Make sure to enable “Allow Quick Create”.

Save & Create New à

Users can now quickly view and edit properties for a product as shown below.

Edit Properties à

Get all the details here

http://tiny.cc/j0n3hz

http://tiny.cc/z0n3hz

Hope it helps..

PackageDeployerWrapper: Import operation time out exception while trying to create a new organization in Dynamics 365 Customer Engagement (On-Premise)

Recently for one our projects,

where had Dynamics CRM On-Premise already installed by the IT team quite sometime back, when we tried create a new organization through Deployment Manager, we got the below error

“Create new Organization (Name=46d256f4-1009-ea11-a2df-00505680070e, Id=FABUAECIBSIT) failed with Exception: System.Exception: Error.ActionFailed Microsoft.Crm.Tools.Admin.InstallPlatformSolutionsAction —> Microsoft.Crm.PackageDeployment.PackageDeployerException: Package BaseCustomControlsCore failed to install on attempt 1. System.AggregateException: One or more errors occurred. —> Microsoft.Crm.MultiTenantPackageDeployment.PackageDeployerException: PackageDeployerWrapper: Import operation timed out. at Microsoft.Crm.MultiTenantPackageDeployment.PdExecutor.Process(PackageDeploymentInputArgs input, JobOutput`1 output, CancellationToken ct) at System.Threading.Tasks.Task.Execute()

— End of inner exception stack trace —

—> (Inner Exception #0) Microsoft.Crm.MultiTenantPackageDeployment.PackageDeployerException: PackageDeployerWrapper: Import operation timed out. at Microsoft.Crm.MultiTenantPackageDeployment.PdExecutor.Process(PackageDeploymentInputArgs input, JobOutput`1 output, CancellationToken ct) at System.Threading.Tasks.Task.Execute()<-”

After trying out all the different permutations and combinations (network things, cleaning and setting up the infra etc.), the way it got resolved was by installing the latest cumulative update.

https://support.microsoft.com/en-ae/help/3142345/microsoft-dynamics-365-onpremise-cumulative-updates

https://support.microsoft.com/en-us/help/4521749/service-update-0-10-for-microsoft-dynamics-365-9-0

The reason we applied and went for the cumulative updates options as the last one, because, we had our production in the older version and because of multiple constraints we were not planning to upgrade our production server.

Fortunately, the solution from version 9.0.10.10 got imported successfully in production Dynamics CRM organization that were in version 9.0.2.x.

Hope it helps..

Lookup Filter, Error Notifications, Territory entity enhancements in Dynamics 365 for Sales / Customer Service – 2019 Release Wave 2 (Unified Interface)

Let us look at some other enhancements added as part of 2019 Release Wave 2 in the product.

Lookup filter enhancement

The lookup filter on searching for a specific term will show the different types of record (entity) that are there in the results for filtering. T

This allows the user to easily find the record.


Here on selecting Contact, it will display only the contact records matching the search criteria.


Similarly, Regarding field lookup in Activity à

Will allow filtering based on the type of records found matching the criteria.

Navigate to error in the form from the navigation bar

The navigation bar shows the errors in the form

Click on the error and it will take us to that particular field without us to figure out the field in the form.

  • Hierarchical relationship support on the Territory Entity

Territory entity now supports Hierarchy.

Hope it helps..

Timeline and Grid control enhancement in Dynamics 365 Customer Service – 2019 Release wave 2 (Unified Interface)

Below are few enhancements made to timeline and grid control as part of 2019 Release wave 2.

The new timer control shows more customer interactions/records/activities compared to the older version of the control, thus enabling users to have access to much more information without the need for scrolling.

The user can hover over the activity to find the menu options

The filter option next to the + button allows users to easily filter and find the appropriate records.

Similarly, grids are more compact allowing more data to be seen.

Also, the main grid now remember it’s state

Here we have searched with the keyword “Geo”

Open one of the records in the result

Click on the back button in the browser, the result is still saved

Grid now has improved filtering as well, as shown below à

Hope it helps..

Scan business cards in Dynamics 365 for Sales – 2019 Release Wave 2 (Unified Interface)

The scan business card feature added as part of release wave 2, allows salespeople to quickly scan business cards using the Quick Create Form. The scanner reads the information from the card and populates the corresponding mapped fields in the record.

Out of the box, it is available in quick create form of lead and contact entity.

To specify the mapping for the business card control fields, navigate to Settings – Customizations and open the Quick Create form and select the Business Card Control and go to the Controls tab for its properties.

Click on the edit icon for the field and specify the mapping.

To enable for entities other than lead and contact, open the quick create form of that entity for customization and select either single or multiple lines of text field as a placeholder and add the business card control to it.

Followed by appropriate mapping of properties to the fields of that entity.

To see it in action let us create a new lead record using it’s quick create form. On click on the Scan Business Card button and selecting an image we get the values populated on the form.

Make sure to enable the free trial of AI Builder.

We can see the business card attached/saved with the record.

This behaviour can be configured.

Navigate to Sales Tab of System Settings

Few points to consider here

  • This feature is only available in North America and the EMEA region for now.
  • The mapping of address fields is not supported currently.
  • The users need to have a Common Data Service User role to use the control.

Hope it helps..