Posted: 19 Dec 2016 10:54 EST Last activity: 14 Mar 2017 3:13 EDT
Params not being passed from main to sub-report
For a certain user story the client wants to report on validation errors that occurred, in a tree-like structure based on other discerning characteristics of the transaction (work item) the error occurred in. In this report the business also wants to have a total of all transaction (work items) of that type. To accomplish this the params delimiting the date range should be passed from main to sub-report. However, that does not seem to work. I am working with Pega 7.2.1. (cloud solution).
As in production there will be 200.000 work items per week, and we don't want the reporting needs to cripple the system, we made a separate index table where we log the errors plus data points the user requested wiht the errors. The main report is based on this data class. One of the sub reports added is the one that generates the total count of transactions (work items) over the same date range. The tricky thing is, we can't match line for line because there is not a single data point that should "be equal" among the two reports. The common factor is the date range selection, which is set as params - based on user input.
The theory is this:
- Before running main report "ValidationErrorsGroupService2" user is prompted to complete the filters A: .TransactionDateTime =< ..x.. and B: .TransactionDateTime => ..x..
- Pega recognizes the user input as params, because in the query tab of the main report these filters are specified as A: .TransactionDateTime =< param.Van and B: .TransactionDateTime => param.Tm. These params have been declared in the param tab.
- Pega passes these params to the sub report "CountTCTransactions2", which has the same filters set up and the same params declared. See screenshots below.
Pass parameters has been enabled. This is the configuration of the sub-report join:
Both reports have been configured to prompt filter changes beforehand.
However, the date range is not taken into account for the total count (output from sub-report). The date range is reflected in all other data points in the main report. When run as a stand alone report the date range is also reflected in the output of the sub-report "CountTCTransactions2" . When joining the two, however, the output from the sub-report becomes static somehow. See the following screenshots.
Sub-report stand alone date range 01-01-2014 through 01-01-2017.
01-01-2014 through 01-01-2018
main report 01-01-2014 through 01-01-2017.
main report 01-01-2014 through 01-01-2018.
As you can see above the total count (highlighted value) which is generated as output does not change although all other data ppints clearly do, and the sub-report when run by itself is responsive to the date range filter.
What is going on here? Is this a bug? Have I configured something incorrectly?
Adding to @SantanuBhattacherje reply, you should check the query and prepared values either through tracer (DB Query enabled) or by looking at the page pyReportContentPage in the clipboard viewer along with the pyPreparedValues.
I have not yet openend an SR. Today I have been working on this report all day, refining it. Based on my experiences today it seems like the filter settings in the sub-reports are being completely ignored, even though I have set up the joins NOT to ignore them (box unchecked).
Is this a known issue? Is there a hotfix available?