Where do Value Based Enable Rules get their data for the CRM 2013 ribbon?
A recent request tasked me with adding functionality to the form ribbon of an Order in CRM 2013. The goal was to capture information from two fields on the Order’s associated Account and based on that information enable or disable a button on the ribbon of the Order which for the purposes of this article we can call Has_Value. I was not able to pass the values to the Order when it was created as these values could change some time after it had been created. Additionally, if the associated Account were found to be a duplicate, it would have to be merged and updated on the Order that could also change the results of the information I was capturing. This left me with having to query for my information using Javascript when the Order form loaded. With this Javascript query, I then updated a hidden Boolean field on the Order if the criteria was met or left it blank if it was not. This might not seem important now but having to take these actions in order to meet the requirements affected how this customization had to be modified at later steps in the functionality.