Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Running

...

Reports

...

All

...

reports

...

run

...

through

...

the

...

reporting

...

module

...

support

...

the

...

following

...

inputs:

...

Parameter values

Values for each of the parameters that the Report Definition requires. These values may be either fixed, or may be specified as compatible runtime expressions. Runtime expressions are currently limited to the following:

Name

Description

${now}

The exact date/time that the report actually runs

${start_of_today}

...

The

...

same

...

as

...

${now},

...

except

...

with

...

the

...

time

...

set

...

to

...

midnight

...

at

...

the

...

start

...

of

...

the

...

day

...

$

...

{end_of_today}

...

The

...

same

...

as

...

${now},

...

except

...

with

...

the

...

time

...

set

...

to

...

the

...

last

...

millisecond

...

of

...

the

...

day

...

$

...

{start_of_last_month}

...

Relative

...

to

...

${now},

...

this

...

is

...

midnight

...

on

...

the

...

first

...

day

...

of

...

the

...

preceeding

...

month

...

$

...

{end_of_last_month}

...

Relative

...

to

...

${now},

...

this

...

is

...

the

...

last

...

millisecond

...

of

...

the

...

last

...

day

...

of

...

the

...

preceeding

...

month

...

$

...

{generatedBy}

...

The

...

user

...

who

...

requested

...

that

...

the

...

report

...

be

...

run

...

$

...

{generationDate}

...

The

...

date

...

that

...

the

...

report

...

was

...

generated,

...

usually

...

the

...

same

...

as

...

${now}

...

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.

Image Added

Image Added

Scheduling 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 setting "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.

Image Added

Image Added