The 5:00 alert email is there so the first shift sees it before starting. The first morning it went out for real, every item on it was right except one. It said a job still needed a piece count on one step, and that count had been keyed in at 3:10 the afternoon before. I caught it when I read it that morning.
Needs a count→Counted at 3:10 PM
At 5:00 AM the ERP's overnight refresh hadn't finished, so the email read yesterday morning's copy
The easy fix was to send it later. That's no good when the point of it is to be waiting when the shift starts. So now it reads piece counts from the time clock entries, which update all day, and a check that can't prove its data is current holds itself back and says so in the email instead of guessing. That's what making one of these hold looks like: find the one wrong line, trace it to the cause, and fix the cause so it can't come back.