Report scheduling

Is there a built in control to allow users to schedule a report or would I have to create the schedule and manage it myself ?

You would have to manage this yourself. You can use a memory tag to hold the timestamp for when you want the report to execute. Then you can call the report.executeAndDistribute or executeReport function.


Thanks for that. I had thoughts down that line but when I started thinking about parameters for reports and doing all the things a report scheduler does for you, it became a very big task.

shouldn’t be to difficult to do. You actually need two tags. One to hold the date you want the report to be generated on, and another to trigger the report. You could even hold the parameters you want to pass to the function in memory tags as well, if you really want this to be customizable. You can use this expression

timeBetween(dateFormat(now(), "yyyy-MM-dd HH:mm:ss"), dateFormat({[~]Report Generate Time}, "yyyy-MM-dd HH:mm:ss"), dateArithmetic(toDate(dateFormat({[~]Report Generate Time}, "yyyy-MM-dd HH:mm:ss")), 1, "minute"))

{[~]Report Generate Time} is the memory tag the user would put the date on. You could then execute the report from a value changed tag event script.