Skip to main content
Question

How can I indicate which user completed most activities in each case?

  • May 8, 2024
  • 2 replies
  • 12 views

lize.erasm11
Level 5
Forum|alt.badge.img+6

So I basically need the maximum of:

 

PU_COUNT ( DOMAIN_TABLE ( "CEL_ACTIVITIES_SF"."CASE_ID","CEL_ACTIVITIES_SF"."USER_ID"), FILTER_TO_NULL ( "CEL_ACTIVITIES_SF"."USER_ID" ))

 

per case

 

2 replies

neil.whita
Level 4
  • Level 4
  • May 9, 2024

A little bit of a hack but this seems to work utilising a combination of PU_FIRST and 2 x INDEX_ORDER (1 to count the incidence of case id and user name allowing you to then sort by this value and the second to order the count of the user activities.

 

PU_FIRST(

 "CASES"

 , "CEL_ACTIVITIES_SF"."USER_ID"

 ,ORDER BY INDEX_ORDER(

  "CEL_ACTIVITIES_SF"."USER_ID"

 ,ORDER BY (INDEX_ORDER(

  "CEL_ACTIVITIES_SF"."USER_ID"

 ,PARTITION BY ( "CEL_ACTIVITIES_SF"."CASE_ID", "CEL_ACTIVITIES_SF"."USER_ID")) DESC)

,PARTITION BY ( "CEL_ACTIVITIES_SF"."CASE_ID", "CEL_ACTIVITIES_SF"."USER_ID")

) DESC)


lize.erasm11
Level 5
Forum|alt.badge.img+6
  • Author
  • Level 5
  • May 9, 2024

Thanks, yes this also seems to work.

 

PU_FIRST ( "CEL_CASETABLE_SF",

"CEL_ACTIVITIES_SF"."USER_ID",

ORDER BY INDEX_ORDER (  "CEL_ACTIVITIES_SF"."USER_ID"

, ORDER BY(PU_COUNT ( DOMAIN_TABLE ( "CEL_ACTIVITIES_SF"."CASE_ID","CEL_ACTIVITIES_SF"."USER_ID"), FILTER_TO_NULL ( "CEL_ACTIVITIES_SF"."USER_ID" ))DESC)

, PARTITION BY("CEL_ACTIVITIES_SF"."CASE_ID")

 )

)