Introduction
In real world, we always have a status or stage for each instance, same well as if we implement in CRM record, each record can have multiple stages and you might need to control it.
Imagine, we have this stage sequence:
How about Business Process Flow?
Now, in CRM 2013 we also have the Business Process Flow.
This feature apparently is used to guide you manage a record by process one by one.
But, this does not stop you to go back and forth (yeah, only required Fields that can stop), we know that in CRM 2015 it has new special events, but, well, you still need to control it programmatically using client script event or server side behind code.
And also if you notice in the final Stage, Closing, if you want to deactivate the record you need to manipulate it using workflow or programmatically.
Status Reason Transition?
Now, let’s go to the topic itself, in CRM 2013 SP1, we have been given a feature so-called Status Reason Transition, this feature is considered cool feature and to be honest now not many people using this, since they are commonly confusing about its real usage and always thinking to link process to BPF.
So, in this post, my point is to accentuate status reason can be useful to control stages.
I try to translate the Requirement to Status Reason now.
I have these status now, which I divided into two state:
*Active
And
*Inactive
Status Reason WITHOUT Transition in the Form
Now, put it to the Form and then see the result:
Hm..Where is the control?
Well, by default, users can select and change the status immediately without control as they like.
Now, we need to control!
How?
Status Reason Transition Rules
Go back to the customization and go to the Entity –> Fields –> Status Reason, which you will see this button!
Then, let’s setup our transition eligibility rules
Save and Publish, then see the result
Status Reason WITH Transition in the Form
*When you are in the ‘Tender Briefing’ State
You can see here, you can only choose to keep remain in the ‘Tender Briefing’ or change to the ‘Requirement Gathering’
*When you are in the ‘Requirement Gathering’ stage:
You can only move to ‘Presentation’ and you can’t back to the first state.
And so on until you reach the final step. Here you can validate that the users so that they cannot go back to the initial stage or move forward without pass the stages, they cannot manipulate the stages and also it is good for them to control then they won’t be confused using CRM for replacing them reporting their progress.
Let’s say you have another scenario, for example from Tender Briefing you already know the Requirement and then the prospect already knew your Company Profile because your company is famous! So, to enhance and accelerate sales process you allow salesperson to skip the stages and straight forward go to Proposal or Demo.
Here we translate:
While we still focus to the sequence that still enable, such as from Presentation to Proposal and so on.
Now, we start again comparing this with new CRM 2015 Feature for BPF that is branching for process.
Well, we can do this branching also with Status Reason.
Back to your Status Reason Transition Setting and then do this setup:
Now, when you are in the Tender Briefing State, you will be facing 4 stages that you can choose.
State and Status Transition
One more not to know is this Status Reason Transition also allow you to validate across the State, for those who have known CRM, we knew that each CRM Record has two state, that is State (that is always Action or Inactive) and then Status Reason (that for most entities you can add or modify the available option set).
So, using this feature you can also control the deactivate button.
However, if you want to allow them ‘Close as Lost’ you can also just add in the transition so that they can straight forward close this as Lost without processing to many stages, save time for impossible Winning Tender.
Result:
And again..All is codeless!
Hope this helps!
Thanks.