When your company decides to embrace Business Rule Framework as the tool for rapid application development and modular design thinking, then you can quickly begin to increase data quality in business processes.
There are only a handful of vital documents in the system that can avoid problems in end-to-end business processes, such as sales orders, production orders and purchase orders. When these documents are always accurate and complete upon saving the data, then potential issues when processing subsequent documents are prevented (e.g. transportation, costing and billing). For example, if incorrect purchase order data leads to errors in the financial posting of a goods receipt, then issue an error when you try to save the purchase order document. That forces the user to correct the data or else the purchase order is saved as incomplete and no subsequent process steps are started.
If you want BRF+ to make an immediate positive impact, then implementing functions to sanity check these essential documents is advised.
Just create the function that returns messages. Depending on the type of message (e.g. abort, warning, error) the system will inform the user and suggest what needs to be done to resolve the issue.
You can start with a limited number of validation rules and extend them the next weeks and months. Developers do not need to be involved when the input for validation remains unchanged.
Sanity checks can be performed at various stages:
- Adding, changing or deleting an item.
- Saving the document.
In some cases you wish to also perform a sanity check at other stages to verify whether relationships between items could impact data quality. For example, there might be business rules related to shipping point determination where the value could be influenced by data available maintained for a previous item.
Obviously you can perform that task upon saving the data, but the user would not be able to see the changes made before pressing the save button. Then it would be useful to trigger this sanity check at any time during the document processing by adding an additional icon on the overview screen to trigger the sanity check using all the data currently available in the document.
The beauty of BRF+ is the ability to re-use functions at various locations in the code. The trigger for sanity checking might be in different user exits and enhancement points, but the result will always be the same. This gives you control that there is always one version of the truth.
The other benefit of BRF+ is the flexibility to arrange the sequence in which to perform sanity checks. Adding new rules is easy to maintain as well. Gone are the days that a minor functional update triggers a complex set of coding changes.
When the input for sanity checking does not change, then adding or changing or removing functionality will not require the involvement of the development team. This will dramatically decrease the lead time to deploy new rules defined by the business users.