Skip to content

Work Orders ​

Last updated

License feature: Work Orders

Monitor > Work Orders opens Work Orders ("Job tracking and production management"). A summary bar shows Total, Pending, Active, Complete and Canceled. Tabs: All Orders, Active and Create.

Create a work order ​

  1. Click New on All Orders, or open the Create tab. Create Work Order opens.
  2. Fill in the fields below and click Create Work Order.
FieldMeaningRequiredNotes
WO NumberYour job number, e.g. WO-001yesUnique; a duplicate gives Work order number "X" already exists
Part Numbere.g. PN-12345yesAlso used by Labor Efficiency standards
Part Namee.g. "Widget Assembly"no
DeviceThe machine running the job ("— None —")noNeeded for the one-active-per-device rule and for the download
RecipeLinked recipe ("— None —"); only enabled recipes, shown as "name (partNumber)"noRecorded on activation; written to the PLC only if the box below is ticked. Left at "— None —", the enabled recipe with the same Part Number is linked when the order is created (or, failing that, when it is activated); the form says which one ("None chosen: "X" is used, from the part number."). With several, the most recently updated wins
Download recipe on startWrite the recipe's parameters to the device when the order is activatednoOff by default. Needs a Device and a Recipe (or one the part number selects) — the tick is disabled until there are both
Produced / Scrap CountsWhere the counts come from while the order is active: Count buttons only, From the device's OEE count tags (its OEE Good Count Tag / Reject Count Tag) or From count tags chosen herenoNeeds a Device; default Count buttons only. See "Counting production" below
Good Count Tag / Scrap Count TagThe device's tags to count fromnoShown for From count tags chosen here
Target QuantityParts to makenoDrives the progress bar
PriorityNormal, High or UrgentnoLists sort Urgent first, then High, then Normal, newest first within each
Notes"Optional notes..."no

There is no due date, line or customer field. Creating needs editor or admin.

Edit a work order ​

Click the pencil (Edit) on a row of All Orders. Edit Work Order {number} opens with the same fields as Create; change them and click Save. You can edit a work order in any status until it is released or rejected (see "Batch release" below). On one that has already started, a new recipe or a change to Download recipe on start does nothing until an order is activated, and the counts are not touched. Editing needs editor or admin; operators and viewers don't see the pencil, New, Create, Cancel or Delete.

Lifecycle ​

text
pending ──Activate──▶ active ──Complete──▶ complete
   │                    │
   └──────Cancel────────┴──────────────▶ canceled
Action (icon)Shown whenResultRole
Activate (play)pendingactive; start time and operator (the clicking user) recordedoperator
Complete (check, or button on an Active card)activecomplete; completion time recordedoperator
Cancel (X)pending or activecancelededitor
Delete (trash, asks "Delete work order {number}?")pending or canceledremovededitor
  • When an admin has made Complete a work order, Cancel a work order or Download a recipe to a device a signed action (Electronic signatures), the button first asks for your password (and a reason, if required). Activating an order that downloads its recipe counts as a recipe download.
  • No pause, hold or reopen. A completed work order cannot be deleted. A completed order can be released or rejected (below).
  • One active work order per device. Activating a second gives "Device already has active work order #N". Work orders with no device are not limited.
  • Completing does not require reaching the target, and reaching the target does not complete it.

What activation does ​

  • Sets the status, start time and operator.
  • With no recipe linked, links the enabled recipe for the order's part number, if there is one.
  • With counts from tags, takes each count tag's current reading as the starting point, so parts made before the order started are not counted.
  • If a recipe is linked: inserts a row in recipe history with the recipe's current version and parameters, the work order and its device. A work order with no device still gets a row; its Device is blank.
  • If Download recipe on start is ticked: writes every parameter to its tag first, exactly as Apply to device does — with your tag security levels, as the person activating it — then reads every written parameter back from the device, and records what happened — applied, mismatch (all written, but a value reads back different), partial or failed. A Recipe download notification tells you which, listing each failure and each value that read back different. Otherwise nothing is sent and the row says recorded — the copy is there for traceability and never claims the machine received it.
  • Writes an audit entry "Activated work order #id", naming the download result when there was one.
  • It does not update counts or start a workflow.

Warning: A download honors each device's Write access setting, each tag's write security level and each parameter's Min/Max, and stops at nothing else — no confirmation and no rollback. The read-back reports a wrong value; it does not undo anything. If it comes back partial, the machine is running on a mix of the old job's setpoints and the new one's: fix the failures and apply the recipe again before you make parts.

Downloading is off on every existing work order and every new one until someone ticks the box. Activation is an operator action while applying a recipe needs an editor, so the tick is the editor's advance permission for that one recipe on that one device — an operator can start the job without being able to redirect a recipe at a machine. The tick does not lift tag security: a tag whose write security level the activating operator doesn't hold is refused ("You do not have permission to write to this tag."), and the download comes back partial or failed.

A disabled recipe, or one with no parameters, is not downloaded even when the box is ticked; the row says recorded and the notification says nothing was sent.

Counting production (Active tab) ​

Each active work order has a card: WO number, part, device, a progress bar (completed / target), "Operator: {name}", "{n} rejected", and buttons Good: +1 +5 +10 and Reject: +1 +5. The tab refreshes every 5 seconds.

  • With Produced / Scrap Counts at Count buttons only, counts come from these buttons and the API. Each click adds to the count on the server, so clicks from several screens at the same moment all count.
  • Counts can only change while the work order is active ("Can only update counts on active work orders").

Counting from tags ​

With From the device's OEE count tags or From count tags chosen here, the counts follow the tags by themselves while the order is active, and the card says "Counted from the device's OEE count tags." or "Counted from tags: good X, scrap Y." instead of showing the buttons (clicking them as well would count the same parts twice).

  • Only each counter's increase is added. The reading when the order is activated is the starting point, so a counter already at 40,000 adds nothing until the next part.
  • A reading lower than the last one is taken as a reset (shift change, batch reset, a 16-bit counter wrapping): the new value is added — 950 → 3 adds 3; a reset to 0 adds nothing.
  • Non-numeric readings and readings with bad quality are ignored.
  • The last reading is saved with the order, so after an API restart the first reading adds the parts made while it was down.
  • Changing the order's count tags, its device, or the device's OEE count tags while it is active starts again from the new tags' current readings.
  • Counting stops when the order is completed or canceled. While it is active, the count API below can still correct a miscount.
  • The device's OEE count tags are used whether or not OEE is switched on for the device.

To count from a custom page or external system, send what to add:

http
POST /api/work-orders/12/counts/increment
Content-Type: application/json

{ "good": 24, "reject": 1 }

The response holds the new completedQuantity and rejectQuantity. To correct a miscount, or when a PLC already keeps the running total, set the totals outright instead — the last write wins:

http
PUT /api/work-orders/12/counts
Content-Type: application/json

{ "completedQuantity": 18240, "rejectQuantity": 96 }

Batch release ​

A work order is the batch record: one run of one part, with its quantities, recipe and the work-instruction sign-offs made for it. There is no separate batch or lot entity. Release is the decision on a completed order, made once:

  1. On All Orders, click the shield (Release or reject) on a completed order. Editor or admin.
  2. Batch release: {number} lists any required work-instruction sign-offs still missing for this order: every step marked Requires Sign-off in each enabled instruction with the order's Part Number, signed for this order (against any version). Otherwise it says All required work-instruction sign-offs are recorded.
  3. Choose Release or Reject, add a Note if you like, and click Record decision. Release stays disabled while sign-offs are missing; Reject is always possible.
  4. When an admin has made Release or reject a completed work order (batch release) a signed action, sign with your password (and reason or user ID when required). The signature's meaning is Approved for a release and Rejected for a rejection, and it is bound to a hash of the order's record, sign-offs included, as it stood.

The status column then shows Released or Rejected next to Complete; hover it for who decided and when. From then on the order is locked: it cannot be edited (the pencil is gone; the API answers Work order WO-24117 has been released; its record is locked), its counts and status cannot change, it cannot be deleted, its sign-offs cannot be added or removed, and Work orders & recipes cannot be cleared by a subsystem reset. The database itself refuses those changes.

The appliance does not stop the person who completed an order from also releasing it; if your procedures need separate people, check Audit Log → Signatures.

All Orders tab ​

Search by "WO#, part number, or part name...", filter by status (All, Pending, Active, Complete, Canceled). Columns: WO #, Part, Device, Target, Done / Reject, status (with Released or Rejected after a release decision), Priority (blank for Normal) and actions. Refreshes every 10 seconds.

Widgets ​

Work Order Status shows active work orders on a dashboard — see Production widgets.

REST endpoints ​

MethodPathPurposeRole
GET/api/work-ordersList; status (one value), deviceId, partNumber, search, limit (50), offsetviewer
GET/api/work-orders/summaryCounts by statusviewer
GET/api/work-orders/activeActive orders; optional deviceIdviewer
GET/api/work-orders/:idOne work orderviewer
POST/api/work-ordersCreate; also countSource (manual, device, tags), goodCountTag, rejectCountTageditor
PUT/api/work-orders/:idEdit fieldseditor
DELETE/api/work-orders/:idDelete (pending or canceled only)editor
POST/api/work-orders/:id/activateActivateoperator
POST/api/work-orders/:id/completeCompleteoperator
POST/api/work-orders/:id/cancelCanceleditor
GET/api/work-orders/:id/release-checkmissingSignoffs still blocking a releaseviewer
POST/api/work-orders/:id/release{ "decision": "released" | "rejected", "note" } plus signature when releases are signed; completed orders onlyeditor
POST/api/work-orders/:id/counts/incrementAdd good and/or reject (whole numbers, 0 or more)operator
PUT/api/work-orders/:id/countsSet completedQuantity and/or rejectQuantityoperator

Troubleshooting ​

Message or symptomCauseFix
Work order number "X" already existsDuplicate WO NumberUse a unique number.
"Device already has active work order #N"One active per deviceComplete or cancel #N first.
Cannot activate — current status is "complete"Only pending orders can be activatedCreate a new work order to run the job again.
Cannot complete — current status is "pending"Not activeActivate first.
Cannot cancel — current status is "complete"Already finishedCompleted orders stay.
"Can only update counts on active work orders"Counts on a pending/complete orderActivate it first.
"N required work-instruction sign-off(s) are missing for X; it can be rejected but not released"Required steps are not signed for this orderSign them off on Work Instructions → Sign-offs with this work order picked, or reject the order.
"Only a completed work order can be released"The order is pending, active or canceledComplete it first.
"Work order X has already been released" / "…its record is locked"A release decision was madeNothing can change it; the decision is final.
"Provide completedQuantity and/or rejectQuantity"Empty counts bodySend at least one.
"Provide good and/or reject as non-negative whole numbers"Increment body missing, negative or fractionalSend at least one whole number above 0. To lower a count, use PUT /api/work-orders/:id/counts.
PLC did not receive the recipe, history says recordedDownload recipe on start was not ticked, or the recipe is disabled or has no parametersUse Apply to device on the Recipes page, or create the order with the box ticked.
"Recipe download" notification says partial or failedOne or more writes were refused — device offline, Write access off, read-only or wrong tag, or a tag's write security level you don't holdThe listed tagPath: error lines say which. Fix the cause and apply the recipe again before running.
403 Insufficient permissions on Edit, Cancel or DeleteOperator roleEditor or admin required.
"This action needs your electronic signature" / "The password is incorrect"The action is a signed oneEnter your own sign-in password in the signature box. See Electronic signatures.
Counts from tags don't moveNo Device, the tags aren't subscribed or have bad quality, or (for the OEE option) the device has no OEE count tagsCheck the tags on the device page and the order's Produced / Scrap Counts setting.

See also ​

Scada.Ink Help Center