I would think of a scenario where workflow flow field update as an action and process builder post action should not be used on same object.
According to order of execution, if we update a field via workflow and if before/after trigger exists, then trigger will fire on that object.
Now, if on the same object process exists and updates a field then again it will fire before/after trigger again.
So, unnecessary triggers are firing twice (one for w/f & other for process) and bringing the complexity of execution.
I think we will not mix same operations in both workflow and process.
Like, in the same object, if I need to update field, send email, I can either use one of them.
For fresh development, I will look for process builder which gives me lot of flexibility.
For earlier developed code which is running on production where workflows exist, there either I will disable all the workflows and transform all the workflows in process or I will continue to use workflows.
Actions of Workflow and Process Builders
If I need to work on time-dependent action which not supported by process builder, I will go for workflow.
Likewise, for those actions which are not supported by workflow, I will go for process builder.
This is my understanding.
Best Answer
There is a distinction between standard validation rules (number fields must be numbers, etc) and custom validation rules (
discount > 20
)Triggers need to have valid sobjects passed to them, hence data scrubbing is done by SFDC prior to
before
trigger execution. Since before triggers can modify the sobject, the custom validation rules need to execute after thebefore
trigger has completed.