Passing parameters from one report to another
I'm having trouble linking from one report to another as described on the wiki page "Links and Drill-in Support in RTC Reports." The Hyperlink from one report to another section says that I should be able to apply a hyperlink to a piece of data in my report and pass a parameter in that link to another report. I can make the hyperlink work, so when I click I go to the target report, but the target report does not seem to receive the parameter. Any guesses as to what I might be missing?
In report A I have a table of work items. The work item ID field is linked to another report as described on the wiki page. The links on the work items in report A look like this:
(The wiki page says to use com.ibm.team.reports.viewReport and reportUUID, but this seems to be out of date, because the URLs for my reports in RTC 2.0 use viewQuery and queryUUID.)
Report B has an integer parameter named PassedWorkItem with no default value. Report B also has a data set of work items. In that data set, I use the PassedWorkItem parameter as a parameter for the data set. When I run report B directly, I see a long list of work items because the PassedWorkItem parameter has no default value. That is as expected.
What I intend is to go to report A, click a link on a work item, and on report B see information only on that work item. However, when I click the link in report A as in the example above, I go to report B but still see information on all work items. Thus it seems that report B is not using the parameter that I pass from report A. Is this a bug, or is there something else I need to do to the reports to pass parameters?
In report A I have a table of work items. The work item ID field is linked to another report as described on the wiki page. The links on the work items in report A look like this:
#action=com.ibm.team.reports.viewQuery&queryUUID=_IsSHoL28Ed6KO-pHbe3NDw&parameterName=PassedWorkItem&parameterValue=1234
(The wiki page says to use com.ibm.team.reports.viewReport and reportUUID, but this seems to be out of date, because the URLs for my reports in RTC 2.0 use viewQuery and queryUUID.)
Report B has an integer parameter named PassedWorkItem with no default value. Report B also has a data set of work items. In that data set, I use the PassedWorkItem parameter as a parameter for the data set. When I run report B directly, I see a long list of work items because the PassedWorkItem parameter has no default value. That is as expected.
What I intend is to go to report A, click a link on a work item, and on report B see information only on that work item. However, when I click the link in report A as in the example above, I go to report B but still see information on all work items. Thus it seems that report B is not using the parameter that I pass from report A. Is this a bug, or is there something else I need to do to the reports to pass parameters?
One answer
Figured it out on my own -- it seems I was too quick to "correct" the code example on the wiki page.
I was using the UUID of the report, when I should have been using the report identifier. You can find the report identifier by finding the report template in the Team Artifacts view, right-clicking it, and clicking Properties.
If the report identifier is "reports.myreport", the link to that report (with a parameter) would look like this:
I was using the UUID of the report, when I should have been using the report identifier. You can find the report identifier by finding the report template in the Team Artifacts view, right-clicking it, and clicking Properties.
If the report identifier is "reports.myreport", the link to that report (with a parameter) would look like this:
#action=com.ibm.team.reports.viewReport&reportUUID=report.myreport&parameterName=PassedItem&parameterValue=1234