How to exclude activities from throughput time calculation?

Hi all,
I’ve already checked the topics related to “excluding activities”. Unfortunately I wasn’t able to find any solution suitable for my case.
I want to calculate the processing time for specific activities - see example:
Case count: 50
Activities: total average throughput time 13 days
Create claim: 1 day
Send claim to A: 2 days
correction: 3 days
send claim to S: 1 day
assessment: 1 day
review: 2 days
credit claim: 1 day
reject claim: 2 days
In this case I need to know the processing time for all 50 cases from process start to assessment, if the calculation for “correction” is excluded - expected result: 10 days.
The activity “correction” could occur multiple times and it’s also not possible to specify the sequence of its occurrence. (for example It could occurs before ‘send claim to A’ or after ‘send claim to S’)

I created the Dimension: (in Distribution Chart)
CASE WHEN PU_COUNT(“Claims”,“Claims”.“ID”,“Table2”.“Status” = ‘MD’) > 0
THEN DAYS_BETWEEN(“Claims”.“Entry_date”, PU_FIRST(“Claims”, “Claimactivities”.“Eventtime”,
“Claimactivities”.“Description” IN (<%= activity_final_decision %>)))
ELSE NULL END
please consider: <%= activity_final_decision %> – includes “assessment A” and “assessment S”

Then I used a component filter:
with variable: – <%= manual_decision_not %> includes “correction A” and “correction S”
FILTER ISNULL(REMAP_VALUES(“Claimactivities”.“Description”, [<%= manual_decision_not %>, NULL])) = 0

without variable:
FILTER ISNULL(REMAP_VALUES(“Claimactivities”.“Description”, [‘correction A’, NULL])) = 0

As result I’m still getting the total throughput time - in this case 13 days.
I also tried to calculate the time from Process Start to assessment and then to subtract the time in correction, but it didn’t work.
KPI: Days in correction:
DAYS_BETWEEN(
PU_FIRST(“Claims”,“ClaimActivities”.“Eventtime”,
“ClaimActivities”.“Description” = <%= manual_decision_not %>)
,
PU_LAST(“Claims”,“ClaimActivities”.“Eventtime”,
“ClaimActivities”.“Description” != <%= manual_decision_not %> AND
PROCESS_ORDER(“ClaimActivities”.“Eventtime”) =
PU_FIRST(“Claims”, PROCESS_ORDER(“ClaimActivities”.“Eventtime”),
“ClaimActivities”.“Description” = <%= manual_decision_not %>)+1)

Do you have any idea how to solve this issue?

Thanks and best regards
Monika

Hi Monika,

I would suggest to use your second idea, so calculating the time from process start to assessment and then subtracting the time in correction.
To do so, please try the following code as KPI:

AVG(
CALC_THROUGHPUT(CASE_START TO LAST_OCCURRENCE[<%=activity_final_decision%>], REMAP_TIMESTAMPS("ClaimActivities"."Eventtime", DAYS))
-
(CASE 
WHEN SOURCE("ClaimActivities"."Description") = <%=manual_decision_not%>
THEN
DAYS_BETWEEN(SOURCE("ClaimActivities"."Eventtime"), TARGET("ClaimActivities"."Eventtime"))
ELSE NULL 
END)
)

In this KPI, the first part CALC_THROUGHPUT(…) calculates the time to assessment.
The subtracted part (CASE WHEN … END) calculates in case of a correction the time in correction, so the time between the correction activity and its consecutive activity.

Best regards,
Data Science Service Desk

Hi, sorry for the late response, we put the topic on hold for a while.
But we still need a solution for that. I tried your approach, but it didn’t work as expected.
In this case:
CALC_THROUGHPUT(CASE_START TO LAST_OCCURRENCE[<%=activity_final_decision%>], REMAP_TIMESTAMPS(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”, DAYS))
-
*(CASE *
WHEN SOURCE(“Claimactivities”.“TART_BEZ”) IN (<%=manual_decision_not%>)
THEN
DAYS_BETWEEN(SOURCE(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”), TARGET(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”))
*ELSE NULL *
END)

I got the message:
Target spec has to have exactly one activity name.
So it doesn’t make sense to work with variables here.
I replaced them with the activity name but I’m still getting confusing results.
CALC_THROUGHPUT(CASE_START TO LAST_OCCURRENCE[‘credit claim - AG, claim was manually assessed’], REMAP_TIMESTAMPS(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”, DAYS))
-
*(CASE *
WHEN SOURCE(“Claimactivities”.“TART_BEZ”) = ‘send claim to dealer correction’
THEN
DAYS_BETWEEN(SOURCE(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”), TARGET(“Claimactivities”.“TRANSAKTIONS_ZEITPUNKT”))
*ELSE NULL *
END)

I verified the results for specific case ID and with this calculation I’m getting the result 42 days, the total throughput time is also 42 days. So the duration of the activity “send claim to dealer correction” couldn’t be excluded from the TPT calculation.

I think with the current Celonis version is not possible to solve this issue. (on premise 4.6) Do you have any general approach how to determine the duration of single activities ? Then it would be possible to exclude or include the duration of different activities in order to calculate the exactly throughput time.

Thanks
Best regards
Monika