Posted: 10 Feb 2021 16:32 EST Last activity: 11 Mar 2021 0:25 EST
Report Definition Warning on Parameters to use Null if empty
I see that there is a sever warning (Performance) getting added on report definition rules in Pega 8 when there is a filter which uses a dynamic value, either paramter or data page reference, and asking to select "Use null if empty" option.
Some of your filters are using a Page Reference with the "Use null if empty" option NOT selected. Please ensure that you do pass the Page Reference. Otherwise, the filter will be dropped entirely and execution of the report will result in very poor performance. If you do not want this behavior, select the "Use null if empty" option.
In many places we used the same report definition rule with different parameters to work differently to make the report definition more reusable.
For ex: if I have to show the user list of cases matching the criteria in a screen with the filters as Case ID and CustomerID. User will either enter customer id or case id or both and searches for cases.
For this we used to have a single data page with two parameters and the same will be passed to a single report definition rule.
But with this new warning introduced in Pega, we are forced to create multiple versions of the same rule with different parameters and configure multiple conditions in data page to refer these RDs to make sure the guardrail score is not impacted.
For me it looks like a limitation on reusability perspective but not sure why Pega added this warning.
Dropping the filter criteria when the dynamic value is there from long time. not sure what is changed around this in engine code with Pega 8.
Can anyone please share some details on how this is impacting the performance.
***Edited by Moderator: Pooja Gadige to add platform capability tag***
@ShivakumarS The guardrail warning appears to have been introduced to indicate that because you could potentially have an empty value reference because of which the filter could be removed/ignored, you could potentially have more results than you expected when compared to a 'null' value filter in the DB query. Though the functionality was pre-existing the guard rail warnings were added to indicate end-users that there could be a potential problem.
I understand that there could be potential work behind the scene to remove the filter when the RHS value is empty. which Pega has to do in back end and is being the same from the introduction of the RD rules. But this warning I am seeing it first time in Pega 8. and the severe warning is forcing us to maintain different versions of the same rule which defeats the purpose of reuse.
Here we are either has to compromise on guardrail or reuse. both are not encouraged.
I am trying to understand if there is any additional changes done in Pega around this functionality and to know the best practice to follow to avoid the warning.