Custom State Model Transitions in Spring Release for Dynamics CRM 2013

By | June 12, 2014

There is a completely new and useful feature of Status Reason Transitions introduced in the Spring Release for Dynamics CRM 2013 Leo. This blog would walk you through the brief explanation of Custom State Model Transitions and how to implement them in CRM using real life example.

This feature is only applicable to Case (Incident) and Custom entities. As there is no capability to play around with the statecode i.e. Status, we can achieve the desired requirement through status code i.e. Status Reason instead.

We have illustrated this feature below by applying it to a custom entity called “Projects”:

Customize the project entity, navigate to fields and locate “Status Reason” field. Open Field properties where you will find a new button “Edit Status Reason Transitions” has been introduced. This same button can also be found in Case entity as well as other custom entities in their respective “Status Reason” field.


Here, the project entity being a custom entity will only have two Status i.e. Active and Inactive. We have added status reasons in both these status. Above screenshot shows the status reasons added for Active state. Refer to the below screenshot for status reasons added for Inactive state.


With this setup, if you click on Edit Status Reason Transitions, a new window will be open for defining the dependent transitions. On that window you can notice a checkbox “Enable Status Reason Transitions” and checking that would apply the status transition functionality for that particular entity.

Apart from that, you can see the list of Status Reason for different State and each Status Reason is associated with an image as explained below:

For custom entity:


For Case entity:


Now you can go ahead to provide new Status Reasons Transition for a particular Status Reason. Below we have setup the transition for project entity:


Now suppose, you create a new project then it will be in Active state – Analyze In-Progress status reason. And the status reason option will show only “Analyze In-Progress”, “Analyze Complete” and “Quote Sent” as the only options from the list of various options because we have defined such that when “Analyze In-Progress” is selected then only “Analyze Complete” and “Quote Sent” are the ones to be displayed for user to select further.


You will notice that in the transitions, for Analyze In-progress, we have also mentioned “Project Cancelled” with its symbol indicating that it is for Inactive state. Hence, being in Analyze In-progress, if you deactivate the record, then status reason will be “Project Cancelled”.

Then, being in “Project Cancelled” status reason, if this project needs to be activated again, then on Activation, it will ask for the status reason you want that to be on as we have mentioned many status reasons when project cancelled is selected.



Note that if you are in “Analyze In-progress” and then select “Analyze Complete” you will need to “SAVE” the record for the dependent transitions to take effect. Only after saving the record, the status reason will show “Quote Sent” as the other option.


This provides ability to the administrators to define the transitions so that sales persons, service people could select appropriate reason being in one state. This will ensure that the business process has been followed as expected.