Custom report filter not applying on process analytics dashboard

I’m working on a custom process analytics dashboard where I’ve overridden the default section rule to add custom filter parameters. The issue is that when users select values from the dropdown filters, the report definition doesn’t seem to receive these parameters correctly.

Here’s my section rule configuration:

<filter name="departmentFilter" type="dropdown">
  <dataPage>D_DepartmentList</dataPage>
  <parameter>.Department</parameter>
</filter>

The filter appears on the dashboard and users can select values, but the underlying report still shows unfiltered data. I’ve verified the data page works correctly when called independently. The report definition parameter mapping seems correct, but the filter values aren’t propagating through to the actual query. Has anyone encountered similar issues with custom section overrides affecting report parameter binding in Pega 8.5?

This is a common issue with section rule overrides in process analytics. The problem is that your filter control isn’t connected to the report refresh mechanism properly. When you override the section, you need to ensure three things work together: the section rule parameter mapping, the report definition parameter configuration, and the data page filter propagation.

For your specific case, the XML structure you showed is incomplete. You need to add the refresh action binding. Here’s the corrected approach:

<filter name="departmentFilter" type="dropdown">
  <dataPage>D_DepartmentList</dataPage>
  <parameter>.Department</parameter>
  <refreshOnChange>true</refreshOnChange>
</filter>

But more importantly, in your section rule, ensure the dropdown control has these properties:

  1. Value: .pyReportParams.Department (this captures the selection)
  2. Action Set: Should include RefreshReport with parameter mapping

In your Report Definition, go to Parameters tab and add:

  • Parameter Name: Department
  • Parameter Type: String
  • Prompt: Yes
  • Default Value: (leave blank or set default)

Then in the report’s List View configuration, add a filter condition:

  • Property: .pxCreateOperator.pyDepartment (or your actual department property)
  • Condition: Equal to
  • Value: @param.Department

The key issue is the data page filter propagation. Your data page D_DepartmentList should only provide the dropdown options, not filter the report. The actual filtering happens in the report definition’s WHERE clause using the parameter value.

Finally, verify your section rule has the correct refresh behavior. In the section’s Actions, you should have a Refresh action that includes the report gadget and passes parameters. If you’re using a custom action, ensure it includes:


RefreshSection
  Target: ReportGadget
  Parameters: .pyReportParams

After making these changes, clear your rules cache and test again. The filter should now properly propagate from section rule selection through to the report query execution.

I added debug logging and found that the parameter value is actually null when reaching the report definition. The filter selection isn’t being captured. I suspect the issue is in how I’m referencing the data page in my custom section. Should I be using a different approach for binding the filter value?

For List reports in process analytics, you need to ensure the filter parameter is mapped to the correct property in the report’s data source. Go to the Report Definition > Parameters tab and verify the parameter type is set to ‘Prompt’ with the correct property reference. Also check if your section rule is actually passing the selected value - add a temporary message to debug the parameter value being sent.

Thanks for the quick response. I double-checked the parameter names and they match exactly. However, I’m not seeing any option for ‘filter propagation’ in the report definition’s advanced settings. Is this a specific configuration property I need to enable? The report type is a standard List report based on process work items.

One thing that caught me before - when you override a section rule for analytics dashboards, you need to make sure the filter control’s pyValue property is properly bound to the report’s input parameter. The default OOTB sections handle this automatically, but custom overrides sometimes lose this binding. Check your section’s control properties and ensure the value is being captured in a page property that gets passed to the report refresh action.