AWRA OpsHub Search

Certified, and Then Edited

A report definition here can be submitted for certification, approved by a reviewer, and marked certified. It can then be edited, and nothing about the certification changes — because there is no version to attach it to.

Reports & BI AWRA OpsHub Team 12 min read

Certification is a statement about a specific thing at a specific moment: somebody competent looked at this and said it was right. Everything difficult about implementing it comes from the words "this" and "moment".

What is built, and it is more than most

A report definition can be submitted for certification. That sets it pending, records who asked and when. A reviewer approves or rejects it, and the reviewer is recorded separately from the requester. Both transitions refuse unless the definition is currently pending, so a report cannot be approved twice or approved without being submitted.

That is a genuine review workflow with the separations you would want. It is more than most reporting tools of this size have.

What it is attached to

The definition. Not a version of the definition — the definition, which is a mutable row.

There is no version history for report definitions anywhere in this product. No history table, no snapshot, no diff. And nothing in the update path touches the certification status, so a certified report that is edited afterwards remains certified, with no record that it changed.

The badge says a reviewer approved this. What the reviewer approved is not stored anywhere, so the badge is a claim about a thing that no longer exists.

The comparison that makes this a decision rather than an oversight

This product does version definitions. Workflow definitions have their own version records, written by a versioning service, with a change-approval model beside them. Somebody sat down and decided that when a workflow changes, the previous shape has to survive.

Report definitions did not get that, and the asymmetry is instructive: a workflow changes what the system does, and a report changes what the organisation believes. It is not obvious the second is less consequential.

Three kinds of definition in one product

Definition type Versioned Change approval Certification
Workflow Yes Yes No
Report No No Yes
Saved filter No No No

Built and maintained Configurable by you, not maintained by us Not built

Reports have the trust badge and not the history. Workflows have the history and not the badge. Neither has both, and the combination is what either one actually needs.

The version number that never moved

There is a schema version column on a report definition. It is written as the number one in three places — an adapter, a backfill migration and a test factory — and it is read nowhere. Nothing branches on it and nothing has ever set it to two.

That is not a defect; it is a reasonable thing to put in a schema early. It is worth naming because it is the kind of column that makes a codebase look like it has versioning when what it has is a placeholder for versioning.

What this means in practice

A certified margin report, over four months

January — submitted and certified Certified
March — a filter is added Still certified
April — a column is changed Still certified
May — a board asks what changed Unanswerable
What the badge now attests to A January review of an unknown thing

Nobody behaved badly in this sequence. Every edit was a reasonable improvement made by somebody trying to make the report better.

Four questions about certified or approved reports

What exactly was certified — the report, or a version?

A good answer sounds like

A version, with an identifier.

What it actually means

The whole question. Ours certifies the report, which is a row that can change.

What happens to certification when the report is edited?

A good answer sounds like

It reverts to pending.

What it actually means

Ours does nothing. That is a one-line change and it would make the badge honest immediately.

Can I see what a report looked like last quarter?

A good answer sounds like

Yes, from history.

What it actually means

Without history, "the numbers changed" and "the report changed" are indistinguishable forever.

Who can edit a certified report?

A good answer sounds like

A named, narrow group.

What it actually means

If certification does not lock anything and does not reset, the edit permission is the real control.

Report certification, precisely

What AWRA OpsHub does today

  • A certification workflow on a report definition: submit, approve or reject, with the requester and the reviewer recorded separately.
  • Transitions that refuse unless the definition is currently pending, so nothing can be approved twice or approved unsubmitted.
  • Certification notes and an owner recorded on the definition.
  • A report run audit trail, so who ran what and when is answerable independently.
  • Version history and change approval on workflow definitions, which is the pattern this gap needs.

What it does not do

  • Any version history for a report definition. No history table, no snapshot, no diff.
  • Any reset of certification when a certified definition is edited.
  • Any lock on editing a certified definition.
  • Any record of what changed between two states of a report.
  • A meaningful schema version — the column exists, is always one, and is read nowhere.

Not ours, by choice

  • The certification workflow itself is well built and this page is not a criticism of it. The gap is what it is anchored to, and that gap is one edit away from being visible to anybody who looks.
  • The immediate honest fix is not versioning — it is resetting certification on edit, which is small and makes the badge truthful even without history.
  • Nothing here is Senegalese or Ivorian. Francophone West Africa is here because reports in that region are routinely reviewed by somebody who did not build them, which is precisely the relationship certification exists to serve.

This is scope, not a ceiling

What is not built for Senegal today can still be built for you

Anything described above as not built is a statement about what ships in the standard product today — not a limit on what AWRA OpsHub can do in Senegal. Kenya's eTIMS integration and its maintained payroll engine exist because Kenyan clients needed them and commissioned them; neither appeared by itself. The same door is open here. If DGID declarations, a bank or mobile money feed, a statutory return format, a rule your own operation needs that the standard one does not have, or a link to a system you already run is what stands between you and a decision, tell us and we will scope it as a build — written spec, timeline and price — before you commit to anything.

DGID declarations and e-invoicing

Declaration output in the format the administration expects and electronic invoicing against any prescribed interface, with retries, a failure queue and a reconciliation report.

Wave, Orange Money and bank feeds

Mobile money settlement files and bank statement feeds pulled into the Payments Register, so collections match invoices without anyone re-keying a statement.

The operational work, which is what most commissions actually are

An extra approval stage in a chain that does not match the standard one, a custom field set on employees or assets that only your sector needs, an expiry that has to block an order rather than send an email, a report your board asks for in a shape nothing produces, or a scanner or weighbridge feeding the goods-in door. These are the commissions we are asked for most often and the smallest ones we quote — and unlike a revenue-authority pipeline, none of them waits on a regulator.

Payroll and statutory returns

IR, IPRES and CSS schedules produced in the layout your filing body expects, generated from live payroll records rather than rebuilt in a spreadsheet each month.

Systems you already run

The accounting package, CRM, online store or custom database you intend to keep — connected through our API so a fact is entered once and appears everywhere it is needed.

How it works: you describe the requirement, we return a written scope, timeline and cost, and once agreed it is built into your environment and maintained as part of the product. No roadmap slide, and no pretending in a demo that something exists when it does not.

Tell us what you need integrated

Our position

Treat a certified report as certified on the day it was certified and not since, and keep the edit permission narrow — because with no reset and no history, who may edit is the only real control on what the badge means. If certification is load-bearing for you, ask for the reset before the history: it is a fraction of the work and it removes the false claim.

Ask what the badge is attached to

Certified, approved, verified, blessed — every reporting tool has a word for it. The only question that matters is whether it is attached to a version or to a row.

Talk about report governance

Frequently asked questions

Can I tell whether a certified report has been edited?

Not from the certification itself. The definition carries update timestamps, so a comparison of the certification date against the last modification is the practical check — and it tells you that something changed, never what.

Does a report run record which definition produced it?

Runs are recorded, which answers who ran what and when. What it cannot answer is what the definition looked like at that moment, which is the same missing history from the other direction.

Why version workflows and not reports?

History rather than principle, as far as we can tell — the workflow module got a versioning service and reports got a certification workflow, and nobody put the two ideas together. Naming it is the first step to fixing it, which is why it is written down.

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