Monitor report execution and delivery.
Reference → Modules →Reports → UI → Forms Editor | Forms | Monitor | WebData | WebData Editor
Reports Monitor (Reference) provides real-time visibility into server-side report generation operations for ReportForms and WebData objects during runtime. The Reports Monitor displays:
<ac:structured-macro ac:name="info"> ac:rich-text-body Only server-side operations are monitored. Client-side report methods are not
The Reports Monitor allows you to manage and control report entries, providing an overview of the status and results of each report.
included in the Designer monitoring tool.
On this page:</ac:rich-text-body> </ac:structured-macro>
Access via Reports → Reports Monitor when connected to runtime.
Table of Contents maxLevel
2 minLevel 2 indent 10px exclude Steps style none
Access the Monitor page at Reports → Reports Monitor.
Property | Description | Runtime Access |
---|---|---|
Name | Report identifier | @Report.Form.<Name> |
Disable | Object disabled state | @Report.Form.<Name>.Disable |
SavedFileName | Output file path | @Report.Form.<Name>.SavedFileName |
LastStatus | Operation result (Success/Running/Error) | @Report.Form.<Name>.LastStatus |
LastStatusMessage | Detailed error description | @Report.Form.<Name>.LastStatusMessage |
Access monitor properties in displays or scripts:
csharp
// Get report status
string status = @Report.Form.ProductionReport.LastStatus;
string fileName = @Report.Form.ProductionReport.SavedFileName;
string error = @Report.Form.ProductionReport.LastStatusMessage;
// Check for errors
if (@Report.Form.ProductionReport.LastStatus == "Error")
{
LogError(@Report.Form.ProductionReport.LastStatusMessage);
}
csharp
// Monitor WebData operations
string apiStatus = @Report.WebData.APIReport.LastStatus;
bool isDisabled = @Report.WebData.APIReport.Disable;
// Validate execution
if (@Report.WebData.APIReport.LastStatus == "Success")
{
ProcessReport();
}
Status | Description | Action |
---|---|---|
Success | Report generated successfully | Process/distribute report |
Running | Generation in progress | Wait for completion |
Error | Generation failed | Check LastStatusMessage |
Disabled | Object disabled | Enable or skip |
csharp
// Check all reports health
public void CheckReportHealth()
{
if (@Report.Form.DailyReport.LastStatus == "Error")
{
SendAlert("Daily Report Failed: " +
@Report.Form.DailyReport.LastStatusMessage);
}
}
csharp
// Monitor multiple reports
string[] reports = {"Daily", "Weekly", "Monthly"};
foreach(string report in reports)
{
string status = @Report.Form[report].LastStatus;
if (status != "Success")
{
// Handle failure
}
}
csharp
// Log all report errors
public void LogReportErrors()
{
if (@Report.Form.MyReport.LastStatus == "Error")
{
string error = string.Format(
"{0}: Report {1} Error: {2}",
DateTime.Now,
"MyReport",
@Report.Form.MyReport.LastStatusMessage
);
WriteToLog(error);
}
}
Report shows "Error":
Status stuck on "Running":
No monitor data:
File not created:
Page Tree | ||
---|---|---|
|
The monitoring table will show the status of the Server (not clients) operations performed by ReportForm and ReportWebData objects.
In addition to the monitor table, report information can be accessed via Display CodeBehind or Scripts, using the following syntax.
|
Report Monitor Table | |
---|---|
Field | Description |
Name | Unique name to identify the report entry. |
Disable | Flag to indicate the object is disabled. |
SavedFileName | Specifies the file name for storing the report's output data. |
LastStatus | Checks the most recent status of the report entry, which could be "Success," "Running," or "Error." |
LastStatusMessage | Access a detailed message that elaborates on the latest status of the report entry, providing further insights. |
In this section: