Strange Filter Behaviour on Expression Defined Process Report Columns

Certified Lead Developer

Hi,

I am seeing some strange behaviour when using filters on process reports columns defined by a simples custom expression.

The screenshot below shows what happened when I applied a simple "=2" filter on the column. The column is defined by a simple 'if' expression, "if(is_process_overdue(), 3, if(rule!TEST_isAtRisk(pp!starttime, process_deadline()), 2, 1 ) )" . As clearly shown the filter fails.

But after moving the same expression completely to an expression rule, and only using it, the filter now works properly :

 

From what I observed, I gather that when the 'if' is directly in the column definition it is broken down in some form, and the filter is not applied to the result of the expression but to parts of it. But when it is in a single expression rule, the filter is only applied to the result. I would like to know for sure what is happening and exactly in which circumstance it happens. Without knowing the root cause, I have no guarantee that I may encounter this problem again or that this (passing all 'ifs' to expression rule) is a workaround/solution.




Thank you,

Carlos

  Discussion posts and replies are publicly visible