Batch servicing in chat
Paste a list of items into a request and get a priced batch you can accept or reject row by row.
The AEI uses the same servicing primitives as the bench. Paste a list of items into a request and it prices each one against the matching service, returning a batch you can act on row by row.
How a batch is read
- Each line is matched to a service and its parameters are filled from what you wrote.
- Recognising a serial loads that item history into context, and lifetime warnings surface on the row.
- Rows that hit a block rule come back as rejected, carrying the rule message, exactly as they would at the bench.
Why this matters for a regrind business
A regrind enquiry does not arrive as one item. It arrives as a box and a list: forty tools, a dozen different sizes, three services between them. Pricing that by hand is forty lookups and forty pieces of arithmetic, and it is the reason a quote that should go back the same morning goes back on Thursday.
Pasting the list into a request prices the whole batch against your own service definitions in one pass, using the same engine the bench uses. What comes back is not an estimate to be checked, it is the price your own formula gives, item by item.
Accepting and rejecting
The batch renders as a table with a price per row. You accept or reject each row individually. Accepted rows create their items, those that are new starting in intake, and group into a single quote with one service line per item. Provisional prices stay provisional and follow the inspection flow once the work reaches the bench.
Rejecting a row costs nothing and explains itself: a tool that is too large for the cell comes back carrying the rule message that stopped it, so you can tell the customer why rather than discovering it when the box arrives.
What a serial adds
If a line names a serial you have seen before, that item's history is loaded into the reading. You get its previous services, its lifetime count and any warning attached to it, on the row, before you quote. A tool at the end of its useful life is flagged at the point the decision is being made rather than after it has been ground again.
Prices in chat are not invented. Each row is priced by the same engine that runs on save and on every real run, and the server result is the authoritative one.