Lessons · Lesson 4 of 5
The only date the app watches
What the app measures a supplier against, when each warning fires and who receives it, and what happens to the record of lateness when you move a date.
Lesson 4 of 5 · 22 min
Following up is a shape, not a feeling
Once a purchase order is with a supplier, following it up means asking one question again and again. Will it land in time. The app helps with that, and the help has an exact shape worth knowing. It watches one date per purchase order. It compares that date against today and against what has arrived. It raises warnings on a fixed schedule to a fixed audience. Everything outside that shape is a conversation you have to have yourself.
Every field, message and threshold on this page was read out of the application itself. Where the screen in front of you disagrees with the page, the screen is right and the page is out of date.
One date, and no others
A purchase order stores exactly one date about delivery: Required by. There is no expected-arrival field, no promised date, no shipped-on date and no revised date. The status can move to Dispatched, and moving it records no date of its own beyond the timestamp in the activity log.
So when Sahiwal writes to say the twill has slipped by twelve days, there is one place to put that information, and it is the Required by field. Editing it is a normal inline edit, and it writes a line into the activity log.
Required by: 18 Jan 2027 → 30 Jan 2027The five stations
The Overview opens with the purchase order's life as five stations, lit from its real status.
| Station | Reached when | Sub-line |
|---|---|---|
| Draft | created | due, and the date |
| Issued | sent to the supplier | due, and the date |
| Acknowledged | the supplier confirmed | due, and the date |
| Dispatched | the supplier says it has shipped | due, and the date |
| Received | everything on every line arrived | how much of how much |
The current station goes amber and its sub-line changes wording when the purchase order is genuinely late: issued, not fully received, and the required-by date behind us. A station is only marked done because the purchase order actually moved past it. Nothing is guessed.
Acknowledged and Dispatched are hand-moved. Nobody outside the factory can touch this record, so those two stations mean somebody here believed the supplier. That is worth saying out loud when you decide what they are for.
What fires, when, and to whom
Four separate things watch a purchase order, on different clocks.
| Warning | Fires when | Where it appears | Who sees it |
|---|---|---|---|
| Purchase order due soon | due within seven days, not fully received | My Work, amber | merchandiser and sourcing |
| Purchase order overdue | past due, not fully received, was issued | My Work, red | merchandiser and sourcing |
| Purchase order never issued | past due, not fully received, still Draft | My Work, red | merchandiser and sourcing |
| Materials will not make line feed | an open purchase order is due after the order's line-feed date | My Work, red, and Sourcing At-risk | merchandiser and sourcing |
The third of those is the one worth pinning up. A Draft purchase order that sails past its own required-by date is not a late supplier. Nobody ever told the supplier. The app says so in those words, and offers Issue PO-1051 rather than Chase Sahiwal.
The fourth is the sourcing board's rule, and it is a different comparison from the other three. It does not ask whether the goods are late. It asks whether they are promised after the line feeds, which is a promise that was never going to work.
| Colour | Rule |
|---|---|
| green | every purchase order received or fully delivered |
| amber | open purchase orders, all due on or before line feed, line feed not yet passed |
| red | an open purchase order due after line feed, or line feed passed with materials outstanding |
| amber | no purchase orders raised at all |
ORD-1178 reads red from the day it is planned, and the reason names the culprit: PO-1046 due 15 days after line feed. That purchase order is the pocketing bought earlier for a later need, and the board is right to shout about it. Nothing on it will help this order cut on time.
Where today comes from
Every one of those comparisons is against today, and today is not the server's day and not the reader's day. It is the date in a fixed factory timezone, and that timezone is written into the code as Africa/Cairo. It is not a setting on the Factory profile.
For a factory in Chirchiq, which runs ahead of Cairo, that means the app's day turns over in the small hours of the local morning rather than at local midnight. Nothing here is wrong by more than a day. Once a year somebody will argue with a chip that says overdue on a purchase order due today. It is worth knowing why before that argument rather than during it.
The chase, and when it is offered
A purple Draft supplier chase panel appears on the Overview when four things are true at once. The purchase order was actually issued. Its required-by date has passed. It is not fully received. And the workspace has AI switched on. A Draft purchase order never offers it, because there is nothing to chase. You never sent it.
Pressing it drafts a message in English and Arabic from the purchase order's own facts, and shows it to you. Nothing is sent. You copy it into your own email or into WhatsApp, or you open the Messages tab and use the composer. There, email really sends when it has been switched on, and WhatsApp is logged for you to send yourself.
The draft is built from the header material, so on a multi-line purchase order it names one of the several materials you are chasing. Read it before you send it.
What the supplier record remembers
Every fully-received purchase order feeds a delivery record on the supplier. The app compares the last receipt date against the required-by date, and calls the purchase order on time when that difference is zero or less.
Three things about that figure are worth knowing before you quote it at anybody.
- It counts only purchase orders that reached Received, so an open late one is invisible in the percentage while it is still open.
- It reads the required-by date as it stands now, so a date moved to suit the supplier scores as on time.
- A purchase order closed short with no receipts at all is skipped entirely, because there is no date to measure.
Read together, those three say the on-time percentage measures agreement with the final date rather than the first one. That is a defensible thing to measure. It is not the same as the thing most people mean by supplier performance, and the difference is exactly the twelve days Sahiwal asked for and got.
Two rules to take away
Write the reason next to the date. Moving Required by is the only way to record a new promise, and it silently clears every warning the old date raised. Put the why in the purchase order's notes or comments as you move it, so the next person reads a decision rather than a date that was always that.
Decide what on time means before you measure it. The app measures against the current required-by date. If you want to measure against the first one, the activity log is the only source, and somebody has to read it.
Check yourselfA purchase order was due on 18 January, the supplier asked for 30 January, and your colleague updated the date. Two months later the supplier's on-time percentage is 100%. Is the figure wrong?Show the answer
No, it is measuring what it says it measures, which is the last receipt date against the required-by date the record holds now. Because the date was moved to the one the supplier offered, the delivery landed on time against it. Nothing in the app stores the original date as a promise, so nothing can score against it. The only surviving evidence of the slip is the activity log line recording the change, and no report reads that. If your factory judges suppliers on their first promise, that judgement has to be recorded somewhere a person will look, because this figure will never show it.
Prompt · Turn my open purchase orders into a chase list
Every Monday morning, and before any meeting where somebody will ask whether the materials will land.
Help me build a chase list from my open purchase orders, ordered by what will hurt first. I will paste, or describe: every open purchase order with its number, supplier, material, quantity, quantity received, required-by date and status, plus the order it is attached to and that order's line-feed and ship dates. I will also tell you today's date. First, sort them into four groups and put each purchase order in exactly one: never issued and past its own date, past due after being issued, due within seven days, and due after the line feed of the order it serves. Say which group is most urgent and why, in one sentence. Second, for each purchase order in the last group, tell me how many days after line feed it is promised, and what that means for cutting. Do not soften it. Third, write me one short chase message per supplier rather than per purchase order, naming every outstanding line for that supplier in one place, asking for a specific date rather than an update, and stating what we will have to do if that date is not met. Keep each message under one hundred and twenty words. Fourth, ask me one question for each purchase order where the required-by date has already been changed once: what was the original date, and did the supplier ever meet a date they set themselves. Three rules. Do not describe a Draft purchase order as a late supplier, because nobody ever sent it. Do not treat a moved date as evidence of anything. And never write that materials are on track unless every line of every purchase order for that order is either received or promised before line feed.
AI can make mistakes — check anything you act on.