How can i prevent certain users from deleting customers. Is it possible to password protect ‘delete customer’ ?
You need to setup Service Security Maintenance - select the Service (e.g. bo.Customer), then add a New Method (DeleteByID in bo.Customer) and apply the required Allow/Disallow access by users/groups as required
Thanks, do you know if I need to restart the application pool for this to take effect ? I have added DeletebyID to dbo.Customer and allowed a couple of people and disallowed myself. Restarted Epicor, added a new customer and then it let me delete it.
Note: We are on prem, not cloud if that makes any difference ?
DeleteByID is not the only way you can delete.
I just ran a test in the customer screen, it deletes by setting the RowMod to “D” on Update.
You’re gonna need a BPM, unless you want to restrict all updates.
Exactly what I did was allow only a select security group to delete and log when they do it as well.
You can consider creating a BPM that restrict customer deletion as mentioned above.
Thanks, I am not very familiar with BPM’s yet, but something I would like to start learning. I have done a couple (very basic) off some other already existing BPM’s, basically copying data to other tables. Where would you start with this, how would you prevent the actual deletion ?
- Create Security Group for this
- Assign User to the appropriate group
- Create Pre-Processing BPM on Customer > Delete > Update
The bottom bit is all is needed for your scenario and then just throw an exception. I have mine logging who was doing it you can see the flag being set then saving the info to UD02 and then either allowing or raising an exception last control block.


