Latest News
MSDialogs Deprecation - Know Where You Stand
If you're using dialogs within Microsoft Dynamics 365 online at the moment, you're probably aware that:
- Dialogs are not available in the Unified Interface, and
- You will be forced to move to the Unified Interface during 2020
The original messaging from Microsoft was that 1st October 2020 was the final deadline for migrating to Unified Interface, but that has changed recently to be a scheduled time up until that date - check what date you're scheduled to be migrated and what you can do on the Microsoft FAQ page.
So what if you're using dialogs and you're getting pushed to Unified Interface sooner than you thought? The first thing to do is get some real, actionable data. What dialogs are in use, how frequently and by whom?
This sort of data isn't shown within Dynamics, but each dialog session is logged so we can extract the data we need using an XrmToolBox tool such as FetchXML Builder or SQL 4 CDS.
In FetchXML Builder, use the following query to find out how many times each dialog has been run in the past month:
<fetch aggregate="true">
<entity name="processsession">
<link-entity name="workflow" to="processid" from="workflowid" alias="wf" link-type="inner">
<attribute name="name" alias="name" groupby="true" />
</link-entity>
<attribute name="processsessionid" alias="count" aggregate="count" />
<filter>
<condition attribute="startedon" operator="last-x-months" value="1" />
<condition attribute="category" entityname="wf" operator="eq" value="1" />
</filter>
<order alias="count" descending="true" />
</entity>
</fetch>
or in SQL 4 CDS:
SELECT wf.name,
count(*) AS count
FROM processsession AS ps
INNER JOIN
workflow AS wf
ON ps.processid = wf.workflowid
WHERE ps.startedon = lastxmonths(1)
AND wf.category = 1
GROUP BY wf.name
ORDER BY count DESC
This should get you started prioritising which dialogs to migrate to a solution such as TKDialogs.
You can also see which users will be most impacted to help target any retraining efforts or to get input on any new solutions you put in place:
<fetch aggregate="true">
<entity name="processsession">
<link-entity name="systemuser" to="startedby" from="systemuserid" alias="u" link-type="inner">
<attribute name="fullname" alias="fullname" groupby="true" />
</link-entity>
<link-entity name="workflow" to="processid" from="workflowid" alias="wf" link-type="inner" />
<attribute name="processsessionid" alias="count" aggregate="count" />
<filter>
<condition attribute="startedon" operator="last-x-months" value="1" />
<condition attribute="category" entityname="wf" operator="eq" value="1" />
</filter>
<order alias="count" descending="true" />
</entity>
</fetch>
or as SQL:
SELECT u.fullname,
count(*) AS count
FROM processsession AS ps
INNER JOIN
systemuser AS u
ON ps.startedby = u.systemuserid
INNER JOIN
workflow AS wf
ON ps.processid = wf.workflowid
WHERE ps.startedon = lastxmonths(1)
AND wf.category = 1
GROUP BY u.fullname
ORDER BY count DESC
As with any business change, making it successful is at least as much about the people as the technology, so get the users highlighted by this query involved early!
If the results of these queries make you think you've got a real challenge on your hands to move away from dialogs in time and keep your users happy, request a demo and we will be in touch.