Currently, when you generate a report, the renderer classes determine the output filename in a hardcoded way.
Our Mirebalais users want generated reports to have filenames with a particular format, which depends on the report, and includes parameter values in a stardard way, something like:
We should allow reports to have a design property that lets you give a filename template (and lets you substitute in things like parameter values, the current date+/-time, etc.
Our specific use case is to support this for the CSV and XLS report renderers. It should be implemented in a utility or base class so it can be reused elsewhere too.
(The PIH ticket for this is http://tickets.pih-emr.org/browse/UHM-1161 .)
As a result of this ticket, the first arguments of ReportRenderer.getFilename() and ReportRenderer.getRenderedContentType() were changed from ReportDefinition to ReportRequest, and we removed the second argument (since this is accessible through the ReportRequest). The signatures are now:
If you have any modules with custom report renderers, and you want them to run on the latest versions of Reporting, you need to change your method signature, as well as the required version of the reporting module.
If you have a custom report running page, you will need to change the calls you make to getFilename() and getRenderedContentType().