...
Any of the above expressions that return Dates can also contain date "arithmetic". For example, let's say you have a report that takes in 2 parameters named "startDate" and "endDate". If you want to run a Report that covers the previous week, you could specify: startDate = ${start_of_today-7d} and endDate = ${end_of_today-1d}. The arithmetic supports expressions in the format of either "+" or "-", followed by a number, followed by the units (either d (days), w (weeks), m (months), y (years), h (hours). You can also have multiple expressions together. So, you could have ${now-5d+2w-5m+6h} and this would evaluate to a particular date.
Rendering mode
Here you would choose the way that you want to render the Report.
Base Cohort
Here you can choose the base set of patients that you wish to run the report on
When the report should be run
Here, you can either leave the default, which will request the report to be run immediately, or you can set the schedule to run this report at some future point in time, or on a recurring basis.
Running the report
All reports in the reporting framework UI are run asynchronously. Each request to run a report, following the above steps, results in a Report Request being saved to the database. A scheduled process will then pick up this report request and evaluate the report, when appropriate. Under normal operations, this should happen close to immediately. However, there may be times when it a report is Queued for several minutes, particularly if many reports are requested at the same time. The global property "reporting.maxReportsToRun", which has a default value of 1, is one way to influence this behavior. Setting this to a higher value may shorten the amount of time a report is queued before it is processed. However, increasing this number too high should be done with caution, as several large reports running simultaneously could hurt server performance.