Skip to main content
IoTFlows - Return to homepage

Command Palette

Search for a command to run...

View as Markdown

Start, pause, and complete a job

Work a task from the moment you pick it up to the moment you close it out, and log the parts and the scrap as you go.

The job runner is the page an operator runs one task on: one operation, on one machine, for a quantity of a part. It opens at /production/work-queue/<id> when you click a task in the Work Queue, and it is the only page that starts, pauses and completes production work.

Everything the runner records hangs off a session: one continuous run of the task, with a start, an end, the good parts logged against it and the scrap. Starting the job opens a session and pausing closes it.

Before you start

  • A task to run. See Find your next job in the Work Queue.
  • Production Scheduler is part of the Scheduling Engine module. The tab renders for every organization, so seeing it is not proof you are entitled to it. See Module entitlement.
  • Nothing on this page is role-gated. Anyone who can open the task can start it, log parts against it, change its machine and complete it.

Open the job

  1. Go to the Work Queue at /production?select=work_queue.
  2. Click the task. The runner opens and your filters travel with it in the address bar.

The runner is four regions around a file viewer. The action rail on the left holds progress, History, the start control, the part counter, Scrap and Complete Job.

The panel rail on the right holds the job's details, comments, files, queue and maintenance. The machine's shift status bar runs along the bottom.

The job runner on the task Spindle run-in after rebuild, with its file viewer open. A row of file tabs runs across the top of the viewer: Drawing.pdf, a selected beam_case_v1_3_NT.stp, a screen recording, a text file, and two more STP files, followed by a chevron for more files and a download icon. The center pane shows a 3D STP model of a machined enclosure, with a small orientation cube at the top right and a hint reading Left click: rotate, Right click: pan, Scroll: zoom. A narrow rail down the left edge carries a Progress header reading 1114 / 5000 over a partly filled bar, 22.3% beside a red clock and 08:00 AM, a History button, a large Resume button with a green play icon, a This Session block with grayed minus and plus buttons around a zero over the line Total: 1114 / 5000, and grayed Add Parts, Scrap and Complete Job buttons. A rail down the right edge stacks Details, Comments, Files, Queue, Maintenance and a Classify button carrying a red 1 badge. A bar across the bottom shows the machine's photograph inside a green ring, the name DMG Mori - SenseAi Embedded and the identifier DMG MORI DMU 80 (HV), with a mixed red and green status bar under a timeline ruler from 8am to 5pm.The job runner on a resumed task, with an STP file open in the viewer and its file tabs running across the top.

If the task carries a PDF or an image of its own, the runner opens it in the viewer for you. It picks the first PDF, or the first image when there is no PDF. A file that reaches the task through its part does not open itself, however many there are, so a task whose only drawing lives on the part opens on No File Selected. See Files, including 3D models.

Start the job

Press Start, the large button below History. The task moves to In Progress and the platform opens a session against it.

A cropped detail of the top of the job runner's left rail. A Progress header reads 0 / 200 above an empty progress bar, with 0.0% at the left and a red clock icon beside 01:00 PM at the right. Below sits a History button, and under it a tall bordered button carrying a large circled play icon over the word Start in green, ringed in violet.The Start button in the job runner's left rail. Starting the job opens a work session, and logging parts before that fails with No active session.

Three things stay disabled until a session is open: the part counter, Scrap and Complete Job. A task you have not started cannot be finished in one press.

Start and Resume are the same action. Pressing Start on a fresh task raises the toast Job resumed, because the runner sends the same status change either way. The wording is misleading and the task did start.

Starting does not assign the task to you. It flips the status chip, and the change reaches the Work Queue and the board within seconds. See Pick up a job.

Log good parts

The part counter sits under This Session. The minus and plus buttons move the session's count by one, and Add Parts opens a keypad for larger numbers.

Every press writes to the server immediately and toasts Parts updated. There is no save button and no undo beyond pressing minus.

The Log Parts dialog. A two-segment control at the top carries Add to count on the left, selected and filled white, and Set session total on the right, with violet callout 1 in front of the first label and callout 2 in front of the second. Under it a recessed panel is headed Parts to Add over a large 8, with the line Session total: 12 beneath. A three-column keypad of the digits 1 to 9, a C, a 0 and a backspace fills the lower half, over a footer holding Cancel at the left and Confirm at the right.The Log Parts dialog. Add to count adds the number you type to the session's count; Set session total replaces it.

Log parts

ModeMeaningUse when
Add to countAdds the number you type to the session's count. The dialog previews the result, so typing 8 into a session that already holds 4 reads Session total: 12You are logging the parts you just made. This is the default and the right answer almost every time
Set session totalReplaces the session's count with the number you typeYou are correcting a count you already logged, and you know the true total for this session
+ and −Add or remove one partYou are counting at the machine, one part at a time

Use add when you are logging the parts you just made, and set when you are correcting the running total. Operators reach for set out of habit and overwrite a shift's count with the last hour's.

Two details make that mistake survivable. Set session total replaces the count for the current session only, not for the whole task, so an earlier shift's sessions keep their numbers. And a session you have overwritten can be repaired in History, see Session history.

The minus button is disabled at zero, so a session count cannot go negative. If the write fails the runner toasts Failed to update parts and reloads the task, and the number on screen snaps back to what the server holds.

Scrap is logged the same way, from the Scrap button beside the counter. Every scrap entry needs a reason, see Log scrap and manage scrap reasons.

Two part counts, one screen

The Progress bar at the top of the rail counts the parts you logged by hand, summed across every session.

The Quantity line in the Details panel shows what the machine's sensor counted, or the override a planner typed in the Scheduler table.

The two numbers are collected differently and will not match. The saw job in the screenshots on this page reads 24 / 40 in the rail and 12 / 40 pcs in the panel at the same moment, with nothing wrong: the operator logged 24 by hand and the sensor counted 12. See Troubleshoot inaccurate part counts.

Pause and resume

Press Pause to stop for a break, a shift change or a breakdown. The Pause Session dialog opens on the session's count so you can correct it before the session closes.

  1. Check Parts Made This Session. It is prefilled with what you logged, and the stepper or the field changes it.
  2. Add scrap rows if the session produced scrap that is not logged yet. Each row needs a quantity and a reason.
  3. Write a Session Notes line. The placeholder asks for the reason for pausing.
  4. Press Pause Session.

The task moves to On Hold, the platform closes the session, and the runner toasts Job paused.

A cropped detail of the job runner's whole left rail on a paused job. The Progress header reads 24 / 40 over a bar filled just past halfway, with 60.0% at the left and a red clock beside 01:00 PM at the right. Under the History button, the large action button carries a circled play icon over the word Resume in green. Below it the This Session counter reads 0 with its minus and plus buttons grayed out over the line Total: 24 / 40, and the Add Parts, Scrap and Complete Job buttons are grayed out with it.The job runner's left rail on a paused job, where Start has become Resume. Pausing closes the session and resuming opens a new one.

Press Resume to carry on. The task returns to In Progress, the platform opens a new session, and the counter starts again at zero. The total above it keeps every session's parts.

A task run across three shifts therefore holds three sessions, which is exactly what History shows. That is the record the shift reports and the cost report read.

A paused job cannot be completed. Scrap and Complete Job are both disabled while the task is on hold, because there is no session to write to. Press Resume, then Complete Job.

Complete the job

Press Complete Job. The dialog is the pause dialog with one section added.

  1. Confirm Parts Made This Session. This is the last chance to correct the number before the session closes.
  2. Check the scrap rows, and add any that are missing.
  3. Read the inventory summary, described below.
  4. Write a closing note if the next person needs one.
  5. Press Complete Job.

The task moves to Completed, the session closes, and the runner toasts Job completed.

Parts Consumed and Added to Inventory appear above the notes when the task touches stock. They are a read-only statement of what closing the job does: the material it deducts, the parts it adds, and the tools it hands back to the crib. To change either list, close the dialog and edit the task's parts, see Required and created parts.

The section is hidden when you pause, because a pause moves no stock.

A scrap row with a quantity and no reason blocks the save. The dialog stops with Please select a reason for all scrap entries and outlines the row in red.

Reopen a completed job

On a task that reads Completed or Approved, the large button becomes Reopen Job.

Press it, write a Reason for reopening, and press Reopen. The task returns to In Progress and the runner toasts Job reopened.

Reopen when the parts came back from inspection, or when the job was closed on the wrong count. Do not reopen to add a forgotten session: New Session in History does that without disturbing the status.

Job actions

ActionEnds the sessionReversibleAvailable on
StartNo, it opens oneYes, pause or completeWeb and mobile
PauseYesYes, ResumeWeb and mobile
ResumeNo, it opens a new oneYes, PauseWeb and mobile
Complete JobYesYes, Reopen JobWeb and mobile
Reopen JobNoYes, complete it againWeb and mobile

Every action is on both platforms, none is role-gated, and none has a keyboard shortcut. The labels differ: the mobile buttons read Start Work Order, Resume Work Order and Reopen Work Order, see On mobile.

Session history

History, at the top of the left rail, opens the Job History dialog. It works at any status, including on a task nobody has started.

The Job History dialog. A header reads Job History over Saw manifold billet · MS-7420 Manifold. Two tiles beneath give Good Parts 24 in green and Scrap 2 in red. A Work Sessions row follows, carrying 3h 7m total, a count chip reading 4 and a blue New Session button. Two date headings, Sun, Sep 20th, 2026 and Sat, Sep 19th, 2026, group four cards. Each card shows a time range such as 6:12 AM to 7:39 AM, a clock and a duration, a pencil and a trash icon, then Good and Scrap tiles. The two cards with scrap carry a Scrap Breakdown block naming the reason, its note and its quantity, and every card ends with the operator's session note. A Close button sits in the footer.The Job History dialog: good parts and scrap totaled across every session, then one card per session with its own edit and delete controls.

The two tiles at the top are the task's totals, summed across sessions. Below them, sessions are grouped by date and ordered newest first.

Each card carries its time range, its duration, its good and scrap counts, the scrap broken down by reason with each entry's own note, and the session note. It does not name who logged the session or who last edited it, so put anything the next shift needs into the note itself. A session still running reads In Progress where its end time would be.

New Session opens the session editor with a Start, an End, a Good Parts stepper, scrap rows and a note. On a task with no sessions yet, the editor prefills the quantity ordered and the scheduled window, which is the case where you are closing out yesterday's job this morning.

The pencil on a card opens the same editor on that session. The trash asks Delete Session and warns that it cannot be undone, then toasts Session deleted.

Deleting a session deletes its parts

A session carries the good parts and the scrap logged against it. Removing the session removes both from the task's totals, and from every report that reads them.

Edit the session instead when the times are wrong but the counts are right.

The editor refuses a window it cannot store, and says which rule you broke: Session cannot start in the future, Session cannot end in the future, Start time must be before end time, Start and end time cannot be the same, or Overlaps with another session, naming the job it collides with and the times.

That overlap check reaches across jobs. It compares against every other production task on the same machine, so it catches a backfilled session that claims the press was running two jobs at once.

The job detail panels

The rail down the right edge opens one panel at a time over the viewer. Details, Comments, Files, Queue and Maintenance are panels; Classify opens a modal.

The right side of the job runner. The Details panel is open, headed Details with a close cross, then the job title Saw manifold billet in cyan over two chips, PO-1012 and MS-7420 Manifold · OP10 Saw, each with a cross to clear it. Rows below give Machine with a thumbnail beside Haas EC-1600 and EC-1600ZT-5AX, Quantity reading 12 / 40 pcs over a part-filled progress bar, Due 9/18/2026, Duration 1h 18m, an Assigned To row holding one avatar and the name M. Reyes, and a Notes block reading Customer PO: 44823 and Plant: 1000. The rail down the right edge stacks six icon buttons, Details highlighted, then Comments, Files, Queue, Maintenance and Classify, the last carrying a red badge reading 58. Violet callouts 1 to 5 sit in the left padding of the first five buttons.The job runner's right-hand rail with the Details panel open. The red badge on Classify counts stops on this machine that nobody has given a reason.

Details is an editor, not a summary. Four fields change the task from here, and each one saves as soon as you set it.

FieldHow to change itNotes
Parent jobPress the job chip and pick a jobThe cross beside the chip clears it
Part and operationPress the operation chip and pick an operationChanging it changes what the task counts
MachinePress the machine row, then pick a machineToasts Machine updated
QuantityClick the number, type, press EnterEscape cancels

The rest of the panel is read-only: the part number, the due date, the duration, the assignees and the task's notes. Assignees cannot be changed here, see On mobile.

Queue lists the tasks waiting behind this one and jumps to any of them. It holds only work assigned to you or to one of your teams, even though the page loads the whole queue, so an operator with no assignments reads No items in queue while the floor has plenty of work.

Classify opens the machine's activity list filtered to Unclassified, and the red badge counts the stops on that machine nobody has given a reason. Clearing it from here is the same action as clearing it from the machine page, see Classify a downtime.

The machine bar along the bottom draws the current shift for the machine the task runs on. Gray stretches are time the sensor reported nothing, not downtime. Clicking the bar opens the same machine modal as the Machine row above.

Comments

Comments is a chat room attached to the task, not a notes field. Messages persist on the work order, and everyone who opens the task sees the whole thread.

Use it for the things the next shift needs and the session note is too small for: a fixture that needs shimming, a tool that is running long, a photograph of a bad edge.

A task created before its chat room existed reads No chat available for this job. Log what you need in the session note instead.

Files, including 3D models

Files lists everything the task can open, in two sections. Work Order Files are attached to this task. Part Files come from the part, so they appear on every task for every operation on that part.

Clicking a file opens it as a tab in the center viewer. Tabs stay open until you close them, so a drawing and a setup sheet can sit side by side.

File types the viewer renders

FileOpens asControls
.pdfAn embedded documentYour browser's own PDF controls
.jpg .jpeg .png .gif .bmp .webp .svgAn imageZoom from 50% to 300%, and a reset
.step .stp .iges .igs .stlA 3D model you can rotateThe viewer's own camera controls
.mp4 .webm .ogg .movA video playerPlay, scrub, volume
.mp3 .wavAn audio playerPlay, scrub, volume
.txt .json .xml .csv .mdPlain textNone
Anything elsePreview not available for this file typeDownload File
The center of the job runner with two tabs above the viewer: a document tab reading manifold-rev-c.pdf and an active tab carrying a cube icon and a truncated manifold-rev... name, each with its own close cross. A download icon sits at the far right of the tab strip. The viewer below renders a shaded 3D model of the manifold body, a long block with two raised bosses and three port bores through the top face, drawn in white against the panel. A small orientation cube sits at the top right of the viewer, and a pill along the bottom reads Left click: rotate, Right click: pan, Scroll: zoom.A STEP file open in the job runner's center viewer, which renders 3D models alongside PDFs, images and video.

The download icon at the right of the tab strip saves the file you are looking at. A file attached to the task while you have the runner open opens itself in a new tab.

Attach the drawing to the part, not to the task. A drawing on the part reaches every task on every operation for that part, and a drawing on one task reaches that task alone. See Add pictures and files.

The one thing you give up is the automatic open. The runner only auto-opens a file the task carries, see Open the job, so an operator working from a part drawing has to press Files and click it. Attach it to the part anyway and take the extra click: a drawing that lives on one task is invisible on the next operation.

Raise a maintenance request

Maintenance opens a maintenance request form inside the runner, with this task's machine already filled in. Give it a title, a description, a priority and a due date, attach photographs, and press create. It toasts Maintenance request created.

The request is a maintenance work order and lands in Maintain. Nothing about the production task changes: it stays In Progress, and its session keeps running while you fill the form in.

Use this panel for the fault that just stopped you, and Maintain for everything else. From here the machine is filled in and you are already standing at it, which is what makes the request worth writing. Planned work, work on another machine and recurring work belong in Submit a maintenance request.

Setting a recurrence without a due date stops with Set a due date first. A failed create reads Failed to create request, and nothing was saved.

On mobile

The runner switches to the mobile layout inside the iOS and Android apps, and in any browser window narrower than 640 px. The runner adds one rule the rest of the Work Queue does not: at 1024 px or wider it uses the web layout anyway, so an iPad in the app gets the desktop runner in landscape.

The job page on a phone. A header carries a back chevron labeled My Work, a wrench icon and a comments icon, then a part thumbnail beside WO #1043 and the title Bore and ream, with a green In Progress chip at the right. Below, an amber Pause button and a green Complete button sit side by side, ringed in violet. A Production Summary card follows, holding a circular progress ring reading 30 of 50, then Good Parts 30 and Scrap Parts 2 tiles, each carrying a This Session line. A This Session card with large minus and plus buttons around a 12 sits under it, then rows for All Production Sessions, the machine, and Classify Downtime.The job page in the mobile app with the job running. Pause and Complete sit side by side above the production summary; completion is a button, not a slide.

The mobile page carries the same job and the same sessions, arranged as a scrolling list.

  • The primary action sits at the top: Start Work Order, Resume Work Order, Pause beside Complete, or Reopen Work Order. Completing a job is a button press, not a slide.
  • Production Summary draws the total as a ring. The Good Parts tile opens the keypad, and the Scrap Parts tile opens a scrap sheet that will not save until you pick a reason code.
  • The keypad's mode toggle reads Add to count and Absolute, and the button under it reads Add Parts or Set Count. Absolute is the same thing as Set session total on the web.
  • The This Session stepper vibrates on each press and ignores a second press inside 200 ms, so a gloved double tap counts once.
  • All Production Sessions opens the same Job History dialog.
  • People lists the requester and the assignees, with + Add beside them. This is the only place in the Work Queue where you can put your own name on a task.
  • Attachments adds files from Photos, Camera, Video or File. Photographs are converted to WebP and capped at 1600 px before upload. Part files are listed but cannot be removed here.
  • Classify Downtime carries the shift bar and the unclassified count, and the wrench in the header opens the maintenance form.

The mobile viewer does not render 3D models. A .step or .iges file opens in the plain file view, which cannot draw it. Open that task on a desktop runner when you need the model.

When something fails

MessageWhat happenedWhat to do
No active sessionYou logged parts or scrap on a task that is not runningPress Start or Resume first
Failed to update partsThe count did not saveThe runner reloads the task, so read the counter before pressing again
Failed to record scrapThe scrap entry did not saveRetry from Scrap. Nothing was written
Please select a reason for all scrap entriesA scrap row has a quantity and no reasonPick a reason, or set that row's quantity to zero
Failed to update work orderThe status change did not saveThe chip may already show the new status. Reload the page to see the truth
Failed to update machineThe machine change did not saveThe task is still on the old machine
Failed to create session, Failed to update session, Failed to save sessionThe session editor could not writeNothing was saved. Check the times against the rules in Session history
Failed to delete sessionThe session is still thereRetry. Its parts are still counted
Failed to create requestThe maintenance request was not createdRetry from the Maintenance panel

If a part count looks wrong rather than a request failing, start at Troubleshoot inaccurate part counts.

See also