Skip to main content

Report Target

The report targets run a report whenever an automation fires. There are two built-in report targets: one runs the report, the other runs it for a range you give.

IdNameTemplateIcon
odsl.reportRun a reportrun [report]file-text text-onenote
odsl.report_rangeRun a report with a rangerun [report] for [range]file-text text-onenote

Both targets work with any service and any action. They support property-change filtering but not @transformer: the output is controlled by the report itself.

How it works​

  • The report named in report is run
  • When the triggering data has an ondate, for example a dataset ondate or a curve date, the report is run for that date
  • With odsl.report_range, the range property is also passed to the report

odsl.report: Run a report​

Inputs​

InputDescription
reportThe name of the report to run

Example: run a report when a dataset is complete​

a = AutomationBuilder("dataset", "private", "MY.PROVIDER.FEED").build()

c = SimpleObject()
c.source = "private"
c.service = "dataset"
c.id = "MY.PROVIDER.FEED"
c.action = "complete"
conds = []
conds.add(c)
a.conditions = conds

a.target = "odsl.report"
a.template = "When 'MY.PROVIDER.FEED' is complete, run [report]"
a.icon = "file-text text-onenote"
a.properties.report = "MY_DAILY_SUMMARY_REPORT"
a.enabled = true
save ${automation:a}

odsl.report_range: Run a report with a range​

Inputs​

InputDescription
reportThe name of the report to run
rangeThe range to run the report for

Example: run a report for a range when a curve is updated​

a = AutomationBuilder("data", "private", "MY_OBJECT:CURVE").build()

c = SimpleObject()
c.source = "private"
c.service = "data"
c.id = "MY_OBJECT:CURVE"
c.action = "update"
conds = []
conds.add(c)
a.conditions = conds

a.target = "odsl.report_range"
a.template = "When 'MY_OBJECT:CURVE' is updated, run [report] for [range]"
a.icon = "file-text text-onenote"
a.properties.report = "MY_CURVE_REPORT"
a.properties.range = "between(T-1M,T)"
a.enabled = true
save ${automation:a}

Choosing between the two targets​

odsl.reportodsl.report_range
RangeNot setSet per automation
Best forReports run for the date of the triggering dataReports that need a specific window
Transformer supportNoNo