Problem with Queue view in Model driven App

Recently we had a problem with Queue view in model driven app. One of my colleague created a model driven app where Queue entity is also part of the app but we identified the Queue view is loading differently compare to standard CRM application.

Queue View in Standard CRM

Queue view in Model Driven App

In Model Drive App, there is no chance to look at Queue items when ever you click on Queue menu item like standard CRM. You have to open the Queue to access Queue items and there are no filters available to filter Queue items.

After a bit of research, I found the view that is loading in Standard CRM is “Queue Items” and not the “Queue”. I opened the site map designer from XrmToolBox and verified the entity that is referring in Queue menu item. The below is the screenshot from Sitemap designer

After changing the entity from Queue to Queue Item in model driven app designer, everything loaded properly.

Hope it helps…..

How to run set of operations as a single transaction in MS Flow

Sometimes we need to perform set of operations as a transaction which means if one operation fails in a set of operations, we have to roll back all the operations in that transaction. For example, in your Flow you are creating a record followed by update record, it is necessary that both of these operations should complete successfully otherwise you should not run any of them. Now, you can do such things using Changeset control of MS Flow.

As of now, you can perform Create, Update and Delete operations only (CDS) in Changeset request.

Note: Common Data Service(Current Environment) is visible only when you create a Flow inside a solution.

Try this feature….

How to open a modal popup in Dynamics 365

In one of my previous post, I explained how to use navigateTo() function to navigate to entity view. But with this function, we can do lot more like navigate to dashboards and open modal popups (html web resources) which is most awaiting feature since long back. So, finally we can open a html web resource from a ribbon button click with OOB functions.

Please follow this link to know how to use this.

Thanks Gopinath for sharing this.

Scope with CDS triggers in MS Power Automate (MS Flow)

Now you can use Scope to restrict the execution of power automate (Flow). This functionality works exactly like the Scope filed on OOB Workflow. For ex: if you select “BusinessUnit” as a Scope for any of your power automate, it will trigger for all users of the same business unit of the context user.

Power Automate extending it’s functionality day by day, isn’t it?

Generate a Quote as PDF and send Email to customer

Now there is an OOB feature introduced to generate a quote as PDF and send it to customer with a single button click. I remember the days that I spent so much time to develop this functionality but now, it’s a OOB feature with a single click. You have to enable this feature under “Sales Hub” App settings.

After enabling this feature, you can see a new button “Email as PDF” on Quote form to perform this action.

As of now it is available in 2 templates. Once you click on any of the button, Email will open with pre filled data and quote (PDF) as an attachment.

Hope this feature will be enabled on other entities also in future.

How to refresh or navigate to Entity View

In some scenarios we all have to refresh or navigate to specific entity view after a particular action performed. We can use a method called navigateTo() for this requirement. This method is available under new Namespace Navigate.

Syntax:

Xrm.Navigation.navigateTo({ pageType, entityName, viewId, viewType }).then(successFunction, errorFunction);

  1. pageType: Specify “entitylist”.
  2. entityName: Provide the logical name of the entity.
  3. viewId (Optional): Provide the Guid of the view to load. If you don’t provide it, it will navigate to the default view of an entity.
  4. viewType (Optional): Provide the Type of the view to load. For ex: “savedquery” or “userquery”. It is required only if you want to navigate to a specific view.

Example:

  • Without View Id:

Xrm.Navigation.navigateTo({ pageType: “entitylist”, entityName: “account” }).then(
function (result) {
//Success code
},
function (error) {
//Error code
}
);

  • With View Id:

Xrm.Navigation.navigateTo({ pageType: “entitylist”, entityName: “account”, viewId: “4ec687fd-9858-4e8c-b267-63add9769d77”, viewType: “savedquery” }).then(
function (result) {
//Success code
},
function (error) {
//Error code
}
);

Note: At the moment, this method is supported only on the Unified Interface

Hope it is helpful…..

How to remove Unmanaged customizations on Managed component

This is a common issue everyone would have faced once in a while that the customizations were not getting applied on the target instance through solution deployment. This is due to the direct changes on the component which is part of managed solution.

A component which is managed, gets an unmanaged layer as soon as you edit it directly on the instance. This unmanaged (active) layer lays on top of all other layers, which are coming from the different solutions containing this component. The layer on top is always winning, hence you can’t see the new changes coming from new deployments.

To avoid this issue, Microsoft introduced a new feature called “Solution Layers” where you can see all solutions where this component is part of it. You can see one “Active” solution on top of all solutions if you would have changed something directly on the instance. So, to get rid of the unmanaged customizations on managed component, you have to follow the below steps.

  1. Select the component and Click on “Solution Layers” button (some times you can see this option under “More Actions” drop down menu).

2. On click of this button, it will show the list of all solutions which included selected component, as shown in the below screenshot.

3. Select the 3 dots (…) of “Active” solution row, select “Remove Active Custmoziations” option and confirm.

4. That’s all you have to do to remove all unmanaged customizations, after that the changes will be affected which are coming from new deployments.

I faced this situation so many times, the changes I have done for ex. in web resources in dev instance couldn’t transfer to UAT/Prod instance due to the “Active” solution layer. So with this new feature, you could remove this unwanted solution layer with a single button click.

Note: Microsoft not yet rolled out this feature for some components like Views and Fields. (Thanks Viswanath for highlighting this in your comment)

Hope it is helpful….