Seeing How Your Report Ran
How did your report run?
Execution occurs in a "Report Batch Job" with the batch containing one or more "Report Jobs". The run time for a batch depends on report complexity and system load. Some Batches finish in seconds, but complex reports may take hours. If a scheduled report fails, see which macro(s) are responsible by viewing the report's Progress Page. This gives error and duration information about a report that has run:
- Click Schedules.
- Select a Schedule and then click:
- Latest Progress button to view the Progress page for the last run
- Batch Jobs to see previous runs and information about the success and timing of the run, and then for a required Batch Job, click View Progress to see the Progress page for that run.
- As you would with a still-running report, you can click each macro to view further information.
See Also: About the Batch Jobs page
When Macros Fail
Macros are coloured as follows:
- Warnings are shown in yellow
- Macro errors are shown in red
- System errors are shown in dark red
- Deferred macros - such as
[EndEmail:]and[EmailReport:]macros, which are processed at the end of the report, are shown in grey until they are finally processed - Still-running macros are shown in blue
If you see a failed macro:
1. Click the macro and see the problem in the Macro Details pane as below.
2. Click Copy to copy the macro to Report Studio to work on and replicate the problem.
Macro Details, Macro Variables and All Variables
The panel on the right of the Progress page has three tabs. Click a macro to select it, then use the tabs to see what it did.
| Tab | What it shows |
|---|---|
| Macro Details | The selected macro: its mode, result, duration, start time and message, followed by three texts:
|
| Macro Variables | Only the variables created by the selected macro, with the values it gave them at that point in the report. Inside a loop, each pass appears as its own macro, so you can see the value from each pass. This tab stays selected as you click from macro to macro. |
| All Variables | Every variable in the report, with its latest value. You can search the variables, and download them all as an Excel spreadsheet. |
Searching
- Search Macros looks in the Original Macro, Substituted Macro and Output of every macro. It does not look in variables.
- The search box on the All Variables tab looks in each variable's name, and in the first 1,000 characters of its latest value.
Tip: to find where a value was used, search the macros for it. Every macro that used the value shows it in its Substituted Macro.
How much is displayed
Reports can produce very large values, so the page shortens what it displays. The rest is still there.
| What | Displayed | To see more |
|---|---|---|
| Message, Original Macro, Substituted Macro and Output | The first 5,000 characters. A DISPLAY TRUNCATED badge appears when there is more. | Click the copy button next to the heading, which copies the full text |
| A variable's value in the list | The first 100 characters | Click the arrow next to the value to expand it |
| An expanded variable, and the variable pop-up | The first 1,000 characters. A TRUNCATED badge shows the full size when there is more. | Open the pop-up and click Full Variable |
| Full Variable | The whole value, up to 10,000,000 characters | A larger value cannot be shown in the browser, and extremely large values may be cut short |
| Variables downloaded to Excel | Up to 32,767 characters of each value, which is the most an Excel cell can hold | Use Full Variable |
Note: Full Variable always shows the variable's latest value in the report. If a later macro changed the variable, that is the value you will see, even when you opened the pop-up from the Macro Variables tab.
When Output is not the macro's result
| Output shows | Why |
|---|---|
NOT STORED - SET ON SCHEDULE |
The Schedule is set not to store output text |
REDACTED |
The macro uses redact=true, or the Schedule is set not to store substituted macros. The Substituted Macro shows the same. |
STORED IN VARIABLE(S): ... (coming in version 4.6) |
The macro stored its result in a hidden variable, as described next |
Macros that store their result in a hidden variable (coming in version 4.6)
A macro can store its result in a variable instead of writing it into the report, using =>, storeAsHidden or hidden=true. Such a macro writes nothing into the report.
Up to version 4.5, the Output of such a macro shows a copy of the whole value. From version 4.6 the whole value is kept in the variable only, and Output shows where it went, followed by the first 1,000 characters of it:
STORED IN VARIABLE(S): EmailAddress
someone@example.com
When the value is longer than 1,000 characters, its first 1,000 characters are followed by a line giving the full length, for example:
... (first 1,000 of 8,892 characters shown)
What this means for you:
- The whole value is on the Macro Variables tab, exactly as before.
- Search Macros finds such a macro by anything in the first 1,000 characters of its value, but not by text that appears only further in. Search for the variable name instead, or use the search on the All Variables tab.
- Reports that gather large amounts of data into variables use much less memory and storage, and searching their macros no longer fails.
- Macros that write their result into the report are unaffected.
Viewing Emailed Output
If you are an Administrator, you can check the Notifications page to see what has been emailed out from ReportMagic including success or failure status, recipients, whether there was an attachment and its size, the subject and text of the email, duration taken for the email to be sent and more. You can also download the attachments from the Notification page by clicking on the View button to view the email and details.
To choose which columns are displayed, click the Columns button and select the required columns.
To view the actual email content, click to select a row then click the View button or double-click a row.
Re-Running One or More Reports
You can choose to re-run any Report Job that has already completed - useful when you need to produce the same report with a different setting, or when an individual report failed and you have corrected the issue. You can re-run even if the parent Batch Job is still running as long as the individual Report Job itself has completed.
To re-run a report:
- On the relevant Progress Page, select the report jobs you want to re-run either selecting individual reports, or choosing from the drop-down list:
- If you prefer, you can select specific reports:
- Click the Result filter and choose to display only failed jobs
- Click the check box next to an individual report, or in the Re-run column header, click the check box to select all the jobs on a page
- Click the arrow buttons to select some or all reports on other pages if relevant
- Click the Re-run Options button to review and change your options or use the defaults
Note that you can also re-run reports from the Report Jobs page in ReportMagic.
| Option | Description |
|---|---|
| 🔗 Chained Schedule | Only shown when this Schedule is chained to another Schedule. By default, a re-run does not run the chained Schedule, so recipients are not sent an unexpected extra report. Turn this on if you want the chained Schedule to run as part of the re-run. Normal scheduled runs, and the Run button, always run the chained Schedule as usual. |
| 📅 Reporting Period | Choose a different reporting period for the re-run, or use the default which is the reporting period of the original report |
| 📄 Output Document Formats | Choose different output formats for the re-run, or use the original output formats for each report |
| 📁 Folder Paths | If you are an Admin, you can choose any existing folder except the root folder as the input folder or use the default which is the one currently set on the Schedule. You cannot change a Library input folder, nor can you change any output folder |
| 🔧 Additional Variables | If you are an Admin, you can inject additional variables that will be available to macros during the re-run. Note that if you re-run a Report Job that was itself a re-run, additional variables from the first re-run are not retained - specify them again if required. The original variables from the initial run are always preserved. Variables must be entered as valid JSON, e.g.:{ "MyVar1": "Value", "MyVar2": 123, "MyVar3": true }These variables are added at the start of processing for every Report Job in the re-run. Variables from the original Report Jobs (from batch variables or forms) are preserved. The reserved variables BatchIndex, BatchSize, and BatchVariable cannot be overridden as they are calculated dynamically |
- Click Review, and when happy, click Submit to start the re-run
- Click View Progress to monitor the new Batch Job (or use CTRL + click to open the progress page in a new browser tab)
- Finally, you can find re-run Batch Jobs and Report Jobs easily as:
- The Batch Jobs and Report Jobs tables both have an "Is Re-run" column showing True
- The original Report Job's message is updated to reference the new re-run Report Job ID
Cancelling a Report or a Batch
You can stop work that is still in progress from the Progress Page:
- Click the Cancel button in the buttons bar at the top of the page to cancel the whole Batch Job, which means every report in it.
- Click the Cancel button on an individual report to stop just that one report and leave the rest of the batch running.
Cancelling is a request rather than an instruction. The Worker running the report checks for that request every few seconds, so a report that is running stops shortly after you ask, once it has finished the macro it is part way through. Reports that have already finished are unaffected, as there is nothing left to stop.
Reports in the batch that have not started yet are not run at all, so even a large batch is cancelled within seconds (coming in version 4.6). Up to version 4.5, each of them is started and then stopped after a few seconds, so cancelling a large batch takes longer, and a very short report may still finish and produce its output.
Note: a slow macro, for example one waiting for a large query to come back, has to finish before its report can stop, so cancelling during one takes as long as that macro has left to run.
If nothing is running the batch when you cancel it, for example because it was interrupted earlier, there is no Worker to act on your request. The batch is tidied up automatically in the background instead, so it will not stay in this state indefinitely.
Note: reports that are cancelled are included in your monthly usage figures, because the work done up to the point of cancelling has already been carried out.
What you see after cancelling (coming in version 4.6)
Up to version 4.5, the Progress Page shows a message confirming that cancellation was requested, but nothing on the page itself changes, so it can look as though nothing happened. From version 4.6:
- The Cancel button is replaced by a Cancelling button that cannot be clicked, so you cannot ask twice.
- The status bar gains a Cancel field reading Requested, with the tool tip "Requested but not yet cancelled", for as long as the request is outstanding.
- Once the batch has stopped, that field disappears and Result shows Cancelled instead, with Run offered again in the buttons bar.
The Batch Jobs page also shows whether cancellation was requested, in its Cancelled column.
Batch Job Status Bar
The status bar at the top of the Batch Job progress page provides a quick summary of the batch run. Fields appear from left to right in the chronological order in which they become available during processing. Some fields only appear once the batch has fully finished.
| Field | Shown when | Description |
|---|---|---|
| Result | Always | The overall execution result of the batch job (e.g. Running, Success, Warning, Macro Error, System Error), shown as a colour-coded icon. |
| Cancel | While stopping (coming in version 4.6) | Shows Requested from the moment you ask for the batch to be cancelled until it has actually stopped. See "Cancelling a Report or a Batch" above. |
| Schedule | Always | The name of the Schedule that triggered this batch job. |
| Version | Always | The Magic Suite version running when the batch started (e.g. 4.4.1). Hover for the full version number. |
| Started UTC | Once started | The date and time (UTC) when the batch job started. |
| Prepare | Always | The time taken during the preparation phase before input documents are downloaded. |
| Download | Always | The time taken to download the input documents from storage ready for processing. |
| Generate | After completion | The time taken to generate all the reports in the batch - typically the longest phase. |
| Upload | After completion | The time taken to upload the finished output files to their destination. |
| Cleanup | After completion | The time taken for internal housekeeping after the batch finishes (releasing temporary resources, tidying working files). |
| Macros | After completion | The total number of macros across all reports in the batch. |
Below the status bar, a Message field shows the overall status message for the batch job, which may contain a summary of what happened or an error description.
Compare Runs
Compare Runs lets you check the health of a Schedule by comparing two Batch Job runs side-by-side. It highlights differences in timing, macro counts, and outcomes between the two runs, so you can quickly spot something unusual - for example a report that suddenly took much longer than normal, or a run that produced far fewer report jobs than expected - without digging through individual batch jobs.
Available to Administrators and above. If you are on an earlier version you may still see this help section, but the feature itself will not yet be available to you - check with your Panoramic Data contact if you are unsure which version you are running.
Compare Runs is available from three places:
- Schedules page - select a Schedule, open the "More" toolbar, then click Compare Runs to compare its latest run against the previous one.
- Batch Jobs page - select two Batch Jobs in the table, then click Compare Runs. Both Batch Jobs must belong to the same Schedule (e.g. two runs of "Sales Report") - you cannot compare Batch Jobs from two different Schedules, as the comparison would not be meaningful.
- Progress page - while viewing a finished Batch Job, click Compare Runs to compare it against the previous run of the same Schedule.
The Compare Runs dialog shows an overall status for the comparison - OK, Warning, or Alert - based on the worst individual metric, along with summary cards for each run and a metric-by-metric breakdown:
| Metric | What it tells you |
|---|---|
| ⏱️ Duration | Total time the whole Batch Job took to run |
| ⏰ Start Delay | How long the run waited to start after it was due to begin |
| 🔄 File Transfer | Time taken to download input documents and upload the finished output files |
| 📑 Report Jobs | Number of individual reports produced by the run |
| ⚙️ Macros | Number of macros processed (including legacy macros) across all reports |
| ⚠️ Macro Error Rate | Percentage of macros that errored |
| 🔤 Variables | Number of variables used across all reports |
| 🏁 Execution Result | Whether the run succeeded, warned, or errored overall |
Each metric is colour-coded OK, Warning, or Alert depending on how much it changed between the two runs. At the bottom of the dialog, an Analysis Threshold Rules section (click to expand) explains exactly how each status was worked out. A few examples:
- Duration is flagged as a Warning if it changes by 50% or more, and an Alert at 100% or more (small changes under 5 seconds are always ignored)
- Report Job count is flagged as a Warning from just a 1% change, since even a small change here can be significant
- Macro, legacy macro, and variable counts are flagged as a Warning at 10% or more, and an Alert at 50% or more
These thresholds may be tuned over time, so treat the above as examples rather than a fixed specification - the dialog itself always shows the exact rules currently in use.