AWRA OpsHub Search
Saved filters & scheduled delivery

The thing worth keeping is not the report. It is the question.

Somebody in your organisation rebuilds the same filtered view every Monday: this warehouse, these three categories, last week, unpaid only. Ten minutes of clicking to reach a screen they have reached forty times before. Save the question once, and it can then be answered on a timer and delivered to the people who need it — while they are still asleep.

The ten minutes nobody counts

Rebuilding a view is invisible work, which is why it never gets fixed.

Nobody logs it, nobody reports it, and it does not appear in any efficiency review. It is just what Monday looks like. Multiply it by the four people who each have their own version of it, by fifty weeks, and it is a fortnight of somebody's year spent operating a filter panel.

Every Monday, before

Seven steps to a screen you have already seen forty times.

  1. Sign in, find the module, open the list.
  2. Set the date range — and get it slightly wrong the first time.
  3. Pick the branch, the category, the status.
  4. Sort it the way you always sort it.
  5. Export to PDF because two of the recipients will not log in.
  6. Attach it to an email, and try to remember who is on the list this month.
  7. Do it again next Monday, from memory, hoping the filters match last week's.

The last step is the expensive one. Two weeks are not comparable if the filters were not identical, and nobody can tell from the PDF whether they were.

Every Monday, after

Two steps, once, and then nothing.

  1. Filter the list the way you want it, and give the filter a name. It appears as a chip above the list from then on — one click restores the whole view.
  2. Schedule it: formats, recipients, cadence, time, timezone. Confirm the next three runs the system shows you, and save.

From then on the same question is asked against live data on the same day at the same local hour, and posted to the same people. Because it is the same stored filter each time, week eleven really is comparable to week ten — which is the part a manual export can never promise.

And when you want to look at it yourself, the chip is still there. A saved filter is a view first and a subscription second.

Eighteen schedulable datasets

What can be put on a timer today, named honestly.

Saved filters exist on more screens than this — twenty-one list and report views carry the control. Scheduled delivery is the narrower set: a dataset can only be posted on a timer if it has an export route that can run unattended, outside a browser session, and produce the same thing it produces on screen. Eighteen do. Where a saved filter is on a screen that cannot yet be scheduled, the schedule option is not offered rather than offered and failing.

Dataset
What arrives
Formats
Inventory & stock
Items

The item catalogue as filtered — category, warehouse, stock band, status.

PDFCSVXLSX
Adjustments

Check-ins and check-outs for the period, with reason, actor and quantity.

PDFCSVXLSX
Inventory levels

Stock on hand per item against reorder thresholds, including "as of" a past date.

PDFCSVXLSX
Stock movement

Movements with opening and closing balances per item across the range.

PDFCSVXLSX
Item activity

A chronological log of movements with the user and timestamp on each.

PDFCSVXLSX
Low stock

Items at or below their reorder point, which is the one report people actually want at 07:00.

PDFCSVXLSX
Warehouses & locations
Location usage

Stock on hand per warehouse and per location, for slotting decisions.

PDFCSVXLSX
Low stock by location

Bins and zones below threshold, rather than items in aggregate.

PDFCSVXLSX
Location throughput

Movement volume per location, so the busy areas are visible.

PDFCSVXLSX
Procurement
Procurement requests

Requests as filtered — department, status, priority, requester.

PDFCSVXLSX
RFQs

Requests for quotation with their state and response position.

PDFCSVXLSX
Quotations

Vendor quotations as filtered, for comparison outside the system.

PDFCSVXLSX
Purchase orders

Orders with delivery and receipt state, which is the classic Monday chase list.

PDFCSVXLSX
Sales, customers & POS
Customers

The customer list as filtered — status, currency, credit position.

PDFCSVXLSX
Customer invoices

Invoices as filtered, including the unpaid-and-ageing view in the example above.

PDFCSVXLSX
POS sales

Point-of-sale transactions for the period as filtered.

PDFCSVXLSX
POS sales summary

Takings, transaction counts and product performance, aggregated.

PDFCSVXLSX
Cash drawers

Drawer sessions with float, drops, counted cash and variance per session.

PDFCSVXLSX

And separately, anything you build yourself. A schedule can be attached to a saved filter or to a report definition from the report builder — so a custom report with your own columns, joins and grouping goes on the same timer, through the same delivery machinery, with the same formats and the same delivery record. Two sources, one scheduler, and a schedule must name exactly one of them.

Saved filters live on 21 list and report screens Scoped to you, not shared by default Restored with one click as a chip above the list A filter can carry many schedules, or none

Who it goes to

Three kinds of recipient, because a distribution list goes stale and a role does not.

The failure mode of scheduled reporting is not the report. It is the list: somebody left in March and is still receiving the weekly stock position, and the new controller who replaced them is not. Sending to a role rather than a list of addresses fixes that permanently, because the role is resolved when the email is built rather than when the schedule was written.

A role

“Everyone in Finance.” Membership is read at send time, so a new hire receives the next run and a leaver stops receiving it the moment their role changes. This is the option to reach for by default, and the one that survives staff turnover with nobody maintaining it.

Named people in your workspace

For the cases where the recipient is a person rather than a function — the site manager for that one warehouse, the project lead for that one job. Selected from your own users, so a person who leaves the workspace cannot keep receiving your data.

External addresses

An accountant, an auditor, a donor's programme officer, a board member with no login. Entered as ordinary email addresses and validated as such. A schedule must have at least one recipient of some kind — an empty distribution is refused rather than saved as a job that quietly sends nothing.

When it runs

Three cadences, a local hour, and the next three runs shown before you commit.

Scheduling interfaces fail in one specific way: you configure something, save it, and then have no idea when it will actually happen. So the next three run times are calculated and shown to you while you are still configuring, in your own timezone — and if they are not what you meant, you change the cadence before saving rather than discovering it next Tuesday.

Daily Every day, at an hour you set

For operational lists somebody works through — the low-stock report before the branch opens, the overdue purchase orders before the buyer starts calling suppliers.

Weekly A chosen weekday

For the review rhythm most organisations actually run on. Pick the day and the hour; the schedule then lands on that weekday indefinitely without anybody remembering to send it.

Monthly A day from 1 to 28

Capped at 28 deliberately. A schedule set for the 31st would skip February and any thirty-day month, which is the kind of gap nobody notices until a period close is missing a report.

The timezone is yours. A schedule stores the zone it was created in, so “07:00 weekly” means seven in the morning where the reader is, not on whichever machine happens to run the job. A team in Nairobi and a finance function in London can subscribe to the same saved filter on two schedules and both get it before their working day starts.

A schedule can also be paused and resumed rather than deleted and rebuilt — for the audit period when nobody wants the noise, or the month a branch is closed. Pausing keeps the filter, the formats, the recipients and the history; deleting throws away the configuration and the reason it existed.

Proof it went

A scheduled report that silently stops sending is worse than one that never existed.

Nobody chases a report they are used to receiving. If it stops, the assumption is that nothing happened worth reporting — which is exactly backwards, and it is why an unrecorded failure is the real risk in this feature rather than a wrong number in a column. So every attempt is written down: the attempt number, the status, who it went to, what was attached, when it started and when it finished, and the error if there was one.

Run
Started
Status
Detail
#14
Mon 24 Aug 07:00
Sent
PDF + XLSX · 6 recipients (4 by role) · finished 07:00:11
#13
Mon 17 Aug 07:00
Sent
PDF + XLSX · 6 recipients · finished 07:00:09
#12
Mon 10 Aug 07:00
Failed
export timed out generating the XLSX — retried and delivered as #12b
#12b
Mon 10 Aug 07:14
Sent
PDF + XLSX · 6 recipients · finished 07:14:22
#11
Mon 3 Aug 07:00
Sent
PDF + XLSX · 5 recipients · finished 07:00:08

The schedule itself also carries its own state — when it last ran, when it last successfully sent, and the last error if there is one. Those are three separate facts on purpose: a schedule that ran and failed is a different situation from one that has not run at all, and a single “last run” timestamp cannot tell them apart.

The straight answer

Where the scheduler stops, stated plainly.

This is subscription delivery of views you can already produce, not a distribution platform. The distinction matters if you are writing it into a requirements document.

What changes

The report arrives before anybody asks for it.

Which sounds small, and is the difference between a management rhythm that runs itself and one where somebody has to remember. The people who read the numbers stop chasing the person who produces them, and the person who produces them gets their Monday morning back.

Monday morning stops being a ritual

One click restores the whole view, or the email is already there when you open your laptop.

Weeks become comparable

The same stored filter runs each time, so week eleven really is like week ten.

The distribution list stops rotting

Send to a role and turnover handles itself — new hires in, leavers out, nobody maintaining it.

The cadence is confirmed before you save

Three dated run times on screen while you configure, in your own timezone.

A failure is visible

Every attempt recorded with its error, and three separate facts about the last run rather than one.

People with no login get the numbers

Auditors, accountants and board members receive the attachment without an account.

Frequently asked questions

What is a saved filter?
The filtered state of a list or report screen, stored under a name you choose. Filter the way you want it — this warehouse, these categories, this date range, unpaid only — save it, and it appears as a chip above the list from then on. One click restores the whole view. Saved filters are available on twenty-one list and report screens across inventory, procurement, sales, POS, assets, HR, projects and helpdesk, and they are scoped to the person who made them rather than shared by default.
Which reports can actually be scheduled for email delivery?
Eighteen datasets today: items, adjustments, inventory levels, stock movement, item activity and low stock; location usage, low stock by location and location throughput; procurement requests, RFQs, quotations and purchase orders; customers and customer invoices; POS sales, POS sales summary and cash drawers. Separately, any report definition from the custom report builder can be scheduled through the same machinery. Where a saved filter sits on a screen with no export route that can run unattended outside a browser session, the schedule option is not offered — an offered feature that silently fails is worse than an honest gap.
What formats does a scheduled report arrive in?
PDF, CSV and XLSX, and more than one can be attached to the same email. That combination matters more than it sounds: finance usually wants the spreadsheet to work in, and whoever presents the number wants the printable. Sending both means nobody has to re-export anything.
Who can a scheduled report be sent to?
Three kinds of recipient, mixable on one schedule. A whole role, with membership resolved when the email is built rather than when the schedule was written — so a new finance hire receives the next run and a leaver stops receiving it, with nobody maintaining a list. Named users from your own workspace, for when the recipient is a person rather than a function. And external email addresses, for accountants, auditors, donors and board members with no login. A schedule with no recipients at all is refused rather than saved as a job that quietly sends nothing.
How often can it run, and in which timezone?
Daily, weekly on a chosen weekday, or monthly on a chosen day between 1 and 28, each at an hour you set. The cap at day 28 is deliberate: a schedule set for the 31st would skip February and every thirty-day month, and that is a gap nobody notices until a period close is missing its report. The schedule stores its own timezone, so 07:00 means seven in the morning where the reader is rather than on whichever machine runs the job — a Nairobi team and a London finance function can subscribe to the same filter on two schedules and both receive it before their day starts.
How do I know when it will actually run?
The next three run times are calculated and shown to you while you are still configuring the schedule, in your own timezone, before you save. If they are not what you meant, you change the cadence there rather than discovering the mistake next Tuesday. After saving, the schedule carries its next run time alongside its history.
What happens if a delivery fails?
It is recorded, which is the whole point. Every attempt writes a delivery row with the attempt number, the status, the recipients, the attachment paths, the start and finish times, and the error text if there was one. The schedule itself separately holds when it last ran, when it last successfully sent, and the last error — three facts rather than one, because a schedule that ran and failed is a different situation from one that has not run at all and a single timestamp cannot tell them apart. This matters because nobody chases a report they are used to receiving: when one silently stops, the assumption is that there was nothing to report.
Can we pause a schedule without losing it?
Yes. Pause and resume are first-class, so an audit period or a closed branch does not mean deleting the schedule and rebuilding it from memory later. Pausing keeps the saved filter, the formats, the recipients and the whole delivery history; deleting throws away the configuration and, more importantly, the reasoning behind it. Scheduling is also gated on its own permission, separate from being able to view the underlying report — subscribing other people to your data is a deliberate grant rather than something everyone who can read a report can do.

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center