EpicorFree calculatorPDF, Excel, Word exportEpicor Kinetic

Epicor BPM Directive Overhead Calculator

Every method directive adds work to a save, and users feel it as lag. This calculator converts per-directive timing into per-call latency, server time and the total minutes your team waits each day, so you can decide what to consolidate or move off the critical path.

Your numbers

calls

For example SalesOrder.Update or LaborDtl.Update calls per day.

4 directives
ms

Includes any queries or calls the directive makes.

80 %

Pre-processing and in-transaction directives block the user. Data directives and scheduled work do not.

ms
users

Your results

Added wait per call
384
Milliseconds a user waits because of directives.
Waiting per user per day
2 min
Share of total response time
49%
Server time per day
1 hrs
Total user waiting per day
51.2 min

Planning model with averages. Measure real directive times with the Epicor server logs or tracing before and after changes.

Save results:

Added wait per call vs directives

Sweeps Directives firing per call from 0 to 20, holding your other inputs fixed.

BPM and customisation audit

Optional: have us review your directives for latency, duplication and upgrade risk.

Optional. The tool and every export work without this. No spam.

How to use it

Pick the method that worries you, such as a sales order or labor update. Enter calls per day, how many directives fire on each call and their average time. Set the share that runs synchronously, because only blocking directives make a user wait. Enter the base method time to see the percentage the directives add, then read the daily waiting per user.

  • Count every directive that applies to the method, including disabled-but-deployed ones you forgot.
  • Pull timings from the server log or by running with directives temporarily off.
  • Compare scenarios by changing the sync share after moving logic to data directives.

The formulas

Added wait per call is directives multiplied by milliseconds each, scaled by the synchronous share. Overhead percent compares that to base time plus the added wait. Server hours per day count all directives, sync or not, since they all use the application server. Total user waiting is added wait multiplied by daily calls, and per-user waiting divides that across the people doing the work.

Interpreting results

A few hundred milliseconds across thousands of calls can add up to hours of collective waiting, even when no single save feels broken. If overhead exceeds a third of response time, review the directives for duplicate lookups, per-row database calls and logic that could run in a single combined directive. Moving work to a data directive or a scheduled process removes it from the user path.

Common mistakes

Multiple directives often re-read the same record. Heavy work such as emails or external web calls placed in pre-processing makes the user wait for a network. Directives on high-volume methods like labor entry deserve the most scrutiny. Always test with realistic data volumes, and keep directive groups documented so cleanup is possible.

Frequently Asked Questions

Do data directives slow users down?

Data directives work on field values within the transaction scope and are usually lightweight, but any directive that runs queries or calls external services can add time. Measure rather than assume.

How many directives per method is too many?

There is no fixed number. Judge by measured time, not count. A dozen light directives may cost less than one that queries a large table, so profile the slow ones first.

Why count asynchronous work in server hours?

It still consumes application server and database capacity even if the user does not wait. Heavy asynchronous load can slow other users at peak, so it belongs in capacity planning.

Can I move logic out of directives?

Often yes: scheduled functions, post-processing background work or integration tools can take non-urgent logic off the save path. Keep validations that must block a transaction in the synchronous path.

Netray can audit your BPM and customisation estate for performance and upgrade risk. The calculator needs nothing from us.