In the new Business Process Flow functionality in CRM 2013, what if you want to have a bit field that must equal yes before the user can advance to the next process stage? When you add a new bit (two option) field with the default values and make it required, when the record is viewed, the value of the field on the process flow will be set to no, but the user will still be able to move past the stage, because it will appear to CRM to contain a value (even though that value is no).
The answer is to change the options in the bit field to “Complete” and “Mark Complete (instead of “Yes” and “No”). If those values are present and the field is required, the business process flow will require the value to be “Complete” before proceeding.
The answer is that you need to click the “required” box on the process flow step, rather than set the requirement on the field definition in customization. If the field is required in customization, it will need to contain data, but it will treat “No” as a value, and allow the user to proceed to the next step. If the “required” checkbox is checked on the business process flow step, the process flow will not let users proceed to the next step without setting the value to 1 (yes).
Thanks to Adam Vero for helping make this tip correct. Check out his blog at http://blog.crmguru.co.uk/ for some great tips.
Sorry, but this voodoo just isn’t right (and would not localize well if it were true).
No matter what field requirement level you set for a two options (bit) field, and regardless of the labels of the options, the field always contains a value.
So on the form, and in the process bar, the field shows a red asterisk but the user can save the record and/or proceed to the next stage of the process, because the field already has a value (whether a 0 or a 1, depending on the selected default).
In the process, if you make a step required, then the user must fill in a value for the step/field before moving to the next stage. But a bit field always contains a value, so how does this help? Well, the business process is clever enough for this – for a bit field a required step must not just have a value, but must have a value of 1 to meet the requirement for the step.
Labels are irrelevant, field requirement level is irrelevant, which value is the default is irrelevant. A bit field which is a required step in a process must have a value of 1 to allow the process to proceed. Simple.
Adam, thanks for letting me know that my tip was wrong. I have updated the post to correct it and credited you for the right answer. Thanks for reading! If you would be interested in contributing some tips, we are looking for useful tips.
Thanks for updating. I can see where you got it because so many out-of-the-box fields use that labelling convention. I have a bunch of ideas that might make more sense on a “tip of the day” site than on my blog where I tend to post much longer articles.
Drop me an email and we can discuss some ideas for how to work this.
[…] we get it right, sometimes we get it wrong, but are certainly having a […]