+1-905-282-9675 query@smartmilestones.com
Select Page

SM Space · Reporting & Dashboards

Reporting and Dashboard Software Built Into Your ERP

SM Space Reporting is the reporting and dashboard software inside the SM Space ERP system. You build a report by picking from the data you already have permission to see, and it runs against live records — no export, no copy. The built-in assistant can compose one from a plain question, and every report obeys the same permissions as the screens.

A report here cannot see what you cannot.

Last updated: September 2026

A question becomes a report

“gross margin by department, this quarter”

  • DatasetsSales invoices · Departments
  • FieldsDepartment · Revenue · Cost
  • Groupedby Department
  • Operations38%
  • Logistics41%
  • Fabrication29%
  • Fitting44%

nobody wrote a query, and nothing left the system to be built

Two people, one report

Headcount cost by department · saved once

Finance manager

  • Name
  • Department
  • Grade
  • Salary

Site supervisor

  • Name
  • Department
  • Grade

not blanked, not starred out — the column is simply not there

Checked, not run

no query run · nothing saved · nothing logged

  • Sales invoices → Suppliers×join not allowed
  • Everything elsefine

Suppliers → Customers

✓ validand still nothing has run

being wrong is an answer here, not an error

Read-only, capped, logged

Purchase commitments by supplier

  • SELECT only
  • Row cap 10,000 returned 1,284
  • Time limit 30s ran in 0.4s
  • Logged D. Whitfield · 10 Sep 16:04

the cap and the clock are properties of the query, not settings somebody ticked

Above: a plain-language question becoming a gross-margin report by department — Operations 38%, Logistics 41%, Fabrication 29%, Fitting 44%; the same saved report run by two people, where the one without permission simply has no salary column; a draft report checked for errors without running any query or writing any log entry, refusing a join between Sales invoices and Suppliers and coming back clean once it is fixed; and a run showing its read-only limit, 1,284 rows of a 10,000 row cap, 0.4 seconds of a 30 second limit, and the audit entry naming who ran it. Every figure is invented.

What you can do

  • Build a report from the data you already have permission to see
  • Ask the assistant for a report in plain words, and change what it gives you
  • Lay it out as a plain table, master-and-detail, or a designed page
  • Add a calculated column, group it, total it and sort it
  • Ask the person running it for dates or other values, instead of fixing them into the report
  • See what the page will look like before there is any data in it
  • Check a draft is valid without running it — no query, no log entry
  • Put the numbers on a dashboard as tiles, charts and tables, and open a point to see the rows behind it
  • Print a document straight off a record, without re-typing its number into a parameter box
  • Export to Excel, PDF or CSV, as a background job when it is a big one

01

Reports That Respect Your Permissions

The report designer never touches a database. It builds a description of the report and sends it to the server, and the server checks that description against the datasets and fields that person is allowed to see.

So a field you are not permitted to see is not merely hidden in the results. It is not in the list you pick from, it cannot be filtered on, and a report that names it is refused before anything runs. That is the difference between this and a spreadsheet somebody exports every Monday.

Dana in finance and Ravi, a site supervisor, both run the same saved report, Headcount cost by department. Dana’s has four columns: Name, Department, Grade, Salary. Ravi’s has three. The salary column is not blanked out and not starred over — it simply is not there, and it was never on the list of columns he could have added.

Nobody can build a report that becomes a quiet way around the permissions on the screen, because the report is checked by the same code the screens are checked by.

Saved report · Headcount cost by department

Dana · finance manager

Name Department Grade Salary
A. Kelo Operations Band 4 72,000
M. Duarte Operations Band 3 64,500
R. Singh Logistics Band 4 69,000

Ravi · site supervisor

Name Department Grade
A. Kelo Operations Band 4
M. Duarte Operations Band 3
R. Singh Logistics Band 4

no salary column — and none to add

  • not listed the field is missing from the list Ravi picks from
  • refused a report that names it anyway is turned down before anything runs
  • dropped and it cannot arrive in the results by some other route

The same code that decides what Ravi sees on the employee screen decides what he can report on. There is no second answer to keep in step with the first.

One saved report, run by two people. Dana gets Salary; Ravi’s copy has no salary column and never offered him one.

02

Ask the Assistant to Build the Report

You can describe the report instead of building it. Type “gross margin by department, this quarter” and the built-in assistant works out which datasets that means, which fields, and what to group by, then hands you a draft in the designer.

It manages that because it is given the live list of what you may report on — the datasets and fields as they are right now, along with the other words people use for each field — rather than having been trained on a snapshot of them.

That choice is worth a sentence, because it is the one that decides whether this keeps working. A trained model is out of date the day somebody adds a dataset, and it has to be paid for again for every model you want to use. Reading the live list is cheaper, and it is correct on the day the dataset is added.

Two honest limits. The assistant produces a draft, and a person still looks at it. And it acts as you — it reads the same permitted list you would, so it cannot compose a report from anything you could not have picked yourself.

Report designer · ask

gross margin by department, this quarter

What it resolved that to

  • DatasetsSales invoices · Departments
  • FieldsDepartment · Revenue · Cost
  • Grouped byDepartment
  • Period1 Jul – 30 Sep

live list read from what you are allowed to report on right now — not from a model trained on a snapshot

  • Operations 38%
  • Logistics 41%
  • Fabrication 29%
  • Fitting 44%

It is a draft, and it opens in the designer. Change a column, add a filter, save it — a person still looks at it before it becomes anybody’s number.

The question, the datasets and fields it resolved to, and the draft that comes back — Operations 38%, Logistics 41%, Fabrication 29%, Fitting 44%.

03

Check a Report Before You Run It

There is a check that answers “would this report work?” without running it. No query is executed, nothing is written, and no run is logged.

For you, that means the designer tells you a join is not allowed while you are still building, instead of after you save and wait. For the assistant, it is what makes being wrong cheap — it can check its own draft before you ever see it.

A draft joins Sales invoices to Suppliers. The check comes back in under a second: that join is not allowed, and everything else is fine. Nothing ran. Nothing was saved. There is no entry in the run log, because there was no run. Swap Suppliers for Customers, check again, and it comes back clean.

One detail worth a sentence: “yes, it is valid” and “no, here is what is wrong” come back the same successful way. Being wrong is an answer here, not an error — which is exactly what something correcting its own draft needs.

Report designer · check

Checking… no query runnothing savednothing logged

  • Datasets you may report on Sales invoices, Suppliers
  • Fields exist and you may see them all six
  • Sales invoices → Suppliers join not allowed
  • Grouping and totals agree grouped by Department

answered “No, here is what is wrong” comes back the same successful way as “yes, it is valid”. Being wrong is an answer here, not an error.

Swap Suppliers for Customers and check again. Still nothing has run, and the run log has no idea any of this happened.

The refused join, named. Nothing ran, nothing was saved and nothing was logged — the line stays on screen while you fix it.

04

Read-Only, Capped and Audited

Every report compiles to a read-only query with a row cap and a time limit, and every run is recorded.

This matters to exactly one person and it is usually the person signing. Nobody can write a report that changes data, because the query that gets built can only read. Nobody can write one that takes the system down at month end, because it stops at 10,000 rows and 30 seconds. And when somebody asks who pulled the payroll figures in March, that has an answer instead of a guess.

Purchase commitments by supplier runs at 16:04 on 10 September. Read-only: yes. Row cap 10,000: 1,284 rows came back. Time limit 30 seconds: it took 0.4. Logged against D. Whitfield, with the time.

That last line is the one an auditor asks for, and it is written on every run without anybody turning it on.

Run · Purchase commitments by supplier
  • Read-only SELECT only nothing can be written by a report
  • Row cap 10,000 rows returned 1,284
  • Time limit 30 seconds ran in 0.4s
  • Logged D. Whitfield 10 Sep 16:04

“Who pulled the payroll figures in March?” has an answer, because the last line above is written on every run without anybody turning it on

Nobody can write a report that changes data, and nobody can write one that takes the system down at month end. Both are properties of the query that gets built, not settings somebody remembered to tick.

One run, with its guard rails visible: read-only, 1,284 rows of a 10,000 cap, 0.4 seconds of 30, logged to the person who ran it.

How SM Space reporting and dashboard software compares

The one-line answers buyers usually ask for, and then the one that matters more — what it does not do.

  • Live records Reports read the working data, not an overnight copy.
  • Permission-aware Field permissions are applied on the server, before anything is returned.
  • Composed by the assistant From a plain question, grounded in the live list of what you may see.
  • Checked without running A draft is validated with no query and no log entry.
  • Dashboards Tiles, charts and tables, with a point you can open into the rows behind it.
  • Printable documents Printed straight off the record, through the same engine.
  • Exports Excel, PDF and CSV, as a background job when it is a big one.
  • Bounded Read-only, 10,000 rows, 30 seconds.
  • Audited Every run keeps who ran it, and when.
  • Cloud Runs in a web browser, nothing to install.

What it does not do. SM Space reports on the data inside SM Space. It does not blend your records with three other systems, and it is not a data-science workbench — no notebooks, no modelling, no statistics beyond the totals a report can carry. It does not send reports on a timetable: a big export runs as a background job you collect, but there is no schedule that mails a report out every Monday morning. You report on the datasets an administrator has published, not on any table in the database. And a report you build is yours to run and export — the reports everyone can see are the standard ones that ship with the system.

How it fits with the rest of SM Space

This is the whole commercial argument, and it is three points long.

  • Accounting & finance live
  • Purchasing & procurement live
  • Sales & invoicing live
  • Inventory and payroll live
One report definition Checked against what you may see, compiled to a read-only query, run on live records
  • reads Dashboards — tiles, charts and tables
  • reads Printed documents — straight off the record
  • reads Exports — Excel, PDF and CSV

First, it reports on live records. There is no overnight load and no copy of the database, so the figure is not yesterday’s — the invoice raised an hour ago is in the report you run now.

Second, it reports across modules with nobody building a join between systems. The figures from accounting and finance, purchasing and procurement, sales and invoicing, inventory management and Canadian payroll are already in the same database, so “margin by department” is a report somebody writes in an afternoon rather than an integration project. Audit and compliance reads the same run log this page keeps.

Third, the honest comparison, because buyers are already thinking it. A dedicated BI tool will draw a prettier chart than we will. What it cannot do is enforce your field permissions, because by the time your data has reached it, it is a copy — and the permissions were left behind at the export. SM Space reporting covers the everyday operational reports that have to obey your permissions and be right now; a BI tool is still the better choice for blending several systems or heavy analysis.

Who this reporting software is for

You run a business of somewhere between 20 and 500 people, and you have outgrown asking. Somebody exports to Excel every Monday and rebuilds the same sheet by hand, and when a manager asks “can I get that by department?” the answer is “I’ll ask someone.” You do not have an analyst, and you should not need one to find out what last month cost. SM Space is a cloud ERP system: it runs in a web browser, with no server to install.

Frequently asked questions

What does SM Space Reporting do?
It is the reporting and dashboard module inside the SM Space ERP system. You build a report by choosing from the datasets and fields you already have permission to see, and it runs against live records rather than a copy. Reports can be laid out as a table, master-and-detail or a designed page, put on a dashboard, and exported to Excel, PDF or CSV.
Can I build a report without knowing SQL?
Yes. You never write a query — you pick datasets and fields, choose what to group by and total, add a filter, and the server builds the query for you. You can add a calculated column with an expression, and ask the person running the report for a date instead of fixing one into it. No SQL is written, and none can be sent from the designer.
Can the AI build a report for me?
Yes, as a draft. Ask in plain words — “gross margin by department, this quarter” — and the built-in assistant picks the datasets, fields and grouping, and opens the result in the designer for you to adjust. It works from the live list of what you are allowed to report on, not from training on your data, and it can check its own draft before showing it to you.
Will a report show data someone isn’t allowed to see?
No. Field permissions are applied on the server before anything is returned, so a field you may not see is left out of the list you pick from, refused if a report names it, and dropped from the results. A supervisor running the same saved report as the finance manager gets it without the salary column — not blanked out, not there at all.
Can I put it on a dashboard?
Yes. A dashboard is a page of tiles, charts and tables that you arrange yourself, and each one is produced by the same reporting engine — so the permissions, the row limits and the audit entry are the same as a report’s. You can open a point on a chart to see the rows behind it, and one tile failing never takes the page down with it.
Do I still need Power BI or Tableau?
Possibly, and we would rather say so. If you want a data-science workbench, or to blend SM Space with three other systems, a BI tool is the right answer. What SM Space is better at is the everyday operational report that has to obey your permissions and be right now — it reads live records, and your field permissions still apply, which a copy of your data in another tool cannot manage.

Ask it a question and see the report.

Book a 30-minute demo and we’ll build one on your own datasets.

Book a 30-minute demo