Skip to main content
Version: 0.1

Reports

This page is for engineers who define reports and for anyone who runs them. A report is a saved definition: which tags, how far to look back, and how long each row covers. Running it asks the historian for the values in that window and summarizes them per interval.

What a report is​

PartMeaningLimits
Name, DescriptionHow it is listed80 and 500 characters
TagsOne column per tag1 to 20 tag paths, each up to 300 characters
Look backThe window, counted back from the moment you run it1 to 720 hours; the page offers 1 hour, 8 hours, 1 day, 3 days, 7 days and 30 days
One row perThe interval each row summarizes1 to 1440 minutes; the page offers 1, 5, 15 and 30 minutes, 1 hour, 6 hours and 1 day

Window divided by interval must give at most 2,000 rows; the API refuses a definition that would give more with "Use a longer interval or a shorter window." The panel shows how many rows a run will produce.

Definitions are shared by everyone on the gateway. Anyone signed in can list and run them; creating, editing and deleting needs the engineer role.

The Reports page​

Open Tags, then Reports under History. The page lists reports with Name, Tags (how many), Look back and One row per, with a button to run each and, for engineers, Edit and Delete actions.

Creating a report​

  1. Click New report. A panel opens beside the list.
  2. Under Report, enter a Name and an optional Description.
  3. Under Period, choose Look back and One row per. Each run looks back from the moment you run it.
  4. Under Tags, add up to 20 tag paths. Values are summarized per row from the historian.
  5. Click Create report. Run opens the result.

Running a report​

Open a report. The dashboard reads each tag's history for the window from the historian, cuts it into intervals and builds a table with a Time column and one column per tag. A selector, Value shown in each cell, chooses the statistic: average (the default), minimum, maximum, first or last value in the interval. A cell with no values in that interval shows -. Numbers are shown to three decimals.

  • The refresh button runs it again from now.
  • CSV downloads the table as <name>.csv (UTF-8 with a byte-order mark, so spreadsheets open it directly).
  • Print opens a printable page with the report's name, its period and the statistic shown, and the table.

If the historian has nothing in the window, the page says "No history in this window" and links to the historian.

Limits​

  • No report designer: a report is always one table of per-interval statistics, one column per tag.
  • No scheduling, no email, no PDF. Print to PDF from the browser if you need a file.
  • Values come from the historian module only. If it is not installed or not running, a run has no data.
  • 20 tags, 30 days, 2,000 rows per report.

API​

The definitions live under /api/v1/reports; running a report is the dashboard reading history, which has its own checks. The full reference is in Other APIs and History API.

RouteRolePurpose
GET /api/v1/reportsviewerList definitions
GET /api/v1/reports/{id}viewerOne definition
POST /api/v1/reportsengineerCreate {name, description?, tagPaths, windowHours, intervalMinutes}
PUT /api/v1/reports/{id}engineerReplace
DELETE /api/v1/reports/{id}engineerDelete

A definition answers with id, name, description, tagPaths, windowHours, intervalMinutes, createdAt and updatedAt.