What Are BPMs?
The Business Process Management (BPM) tool within the Epicor application is a way of adding additional functionaility or automation to particular processes. They provide a way of carrying out extra tasks either before (Pre) a particular standard function, after (Post) a standard function, or you can even replace a standard (Base) function altogether. The need to create a ‘Base’ BPM is very rare indeed and by far the most used are ‘Pre’ and ‘Post’ BPMs. A wizard tool is provided in the application for you to pick a particular standard function (such as the sales order update method) and then carry out additional checks and ‘Actions’. ‘Pre’ BPMs carry out their tasks before the base method is triggered so in this way you can do some validation and prevent the base method running by returning an error message. ‘Post’ BPMs carry out their tasks after the base method is triggered so in this way you can automate a further task after you know that the base mathod has run through successfully without error.
Why Would I Need To Use a BPM?
You may require a particular field on a screen to be mandatory or you may want to offer the user a warning message if they create an order with a part that does not exist. You may want to add some automation to a process such as automatically creating a shipment when a sales order has been created, or perhaps you want output a CSV file after a shipment has been created so that you can pass this information to a third party courier system (such as UPS or FedEx software). Any type of validation or automation you require can be added with BPMs. A lot can be achieved with the standard BPM wizard tool in the main BPM creation screen (which are setup in a simple and easy to understand way – much like Outlook Email rules) and more complex processing can done by having the BPM pass control to a scripted routine where you can add the required code (using ABL code in Epicor9/Vantage8 and C# code in Epicor10).