What a recipe is
A recipe stores the steps and match rules you reuse each period, without the row data.
Orders to shipments
- Files
- orders, shipments
- Steps
- Trim Name, Upper-case Order Number
- Match on
- Name = Order Number
- Compare
- Total
- Fingerprint
- a3f09c1e…
What it holds
- Files
- A slot for each export and the columns it must have.
- Steps
- Every cleaning step, in order: trim, case, replace, split, rename, fill down, filter.
- Match rules
- The key columns and how close is close enough: exact, a similarity score, an amount tolerance or a date window.
- Fingerprint
- A hash of all of the above, so you can tell two versions apart.
What it never holds
No rows, no cells, no file names. You can send a recipe to a colleague without sending a single order.
{
"name": "Orders to shipments",
"steps": ["trim Name", "upper Order Number"],
"keys": [{ "left": "Name", "right": "Order Number" }],
"compare": ["Total"]
} How a rerun uses it
- You drop this period's exports into the slots.
- The recipe checks each file still has the columns it expects. If one was renamed, it stops and names it.
- The steps run on the new rows, then the match rules.
- Rows still open from last period are compared again. The ones that now match close; the rest show how many days they have been open.
February rerun
| Order | Status | Since | Age |
|---|---|---|---|
| SO-0998 | Only in shipments | 2024-01-02 | 58days |
| SO-1007 | Values differ | 2024-01-15 | 45days |
| SO-1009 | Matched | 2024-01-27 | closed 2024-02-03 |
| SO-1011 | Matched | 2024-01-30 | closed 2024-02-06 |
Versions
Saving a changed recipe keeps the old one. When a supplier changes their export, you can compare this month's version with last month's and step back if the change was wrong.
Version 2 against version 1
| Steps | + Upper-case Order Number |
| Match rules | unchanged |
| Fingerprint | 7b21d0e4… to a3f09c1e… |
Previous version