Exago supports two main ways to hook into application functionality at points during runtime: Server Events and External Interface. It is possible to use either tool to manage scheduler execution, including Remote Execution. However, these fire at different points in the process, as shown in the diagram below.
Each server event is defined individually within the Admin Console. Server events are written in C# or VB and are suited to a C#/.NET application environment, but can be used in a Web Service environment to call out to external public methods. The OnScheduledReportExecuteSuccess event, if defined, is called after a scheduler executes a file, but before emailing it or saving it to disk. We could use the server event to override Exago's default email or archival operations. For example, the file names could be changed to better reflect their user and content, rather than a generic GUID.
The external interface is an application library which contains definitions for the desired methods. This can be a .NET assembly or a Web Service, and is suitable for either environment. The ScheduledReportExecutionComplete() method is called after a scheduler saves an executed report to disk.
ScheduledReportExecutionComplete()is only called when a report output is saved to a disk, and not when a report is e-mailed.
We could use this to perform some additional tasks after an execution, such as logging or sending notification emails.