BPM times

,

Is there a way to time how long a certain operation takes due to BPM’s being fired off? We have a few BPMs linked to our order table and after a number of lines being entered, it exponentially gets slower as more lines are entered in.

I’d like to see which BPM is causing the longest waiting period between each line being saved.

There’s a time in a trace. That should do what you need, right?

Take a look at the Performance and Diagnostic Tool (PDT). It has a logging function so you can see how long each one takes. It can also measure how long they take from different client systems, like when you have someone working at different locations or over different connection type. Very useful info!

Jeff
CIO onDemand

2 Likes

One additional challenge is that when running the trace, you might see that your BPM fires multiple times… I have personally witnessed situations where the BPM only fired 1 time for the first line… 2 times for the second… 4 times for the 3rd line, 8 times for the 4th, etc… this is because one of your BPM triggers other bpms multiple times (bad logic).

So it may not be the one BPM that is firing multiple times causing the problem, but another BPM that triggers it incorrectly.
Look for:

  1. a BPM that is triggered off a OrderHed or OrderDtl change that updates the OrderRel table
  2. a BPM that is triggered off an OrderRel change that updates the OrderHed or OrderDtl.
    These can cause a cascade of events, ESPECIALLY if you have gone around the system and written C# code to update the database directly :wink:
1 Like