Work Order templates and schedules
Most jobs are not one-offs. A repair intake, a monthly maintenance check, a standard production run - the steps are the same every time, only the customer and dates change. A template captures that routing once so you can spin up a ready-made work order in seconds, and a schedule turns a template into a recurring job the system creates for you automatically.
What a template is
A template is a work order with the status TEMPLATE. It looks like any other WO - it has a type, header fields and a full set of steps - but it is a blueprint, not a job: it never runs itself, it is never released to the floor, and it never consumes stock. Its only purpose is to be copied into real DRAFT work orders.
Because a template holds the complete step list with all its configuration, the copy comes out pre-built: the right receive / route / repair / ship steps, at the right priorities, with the right assignees - so whoever creates the job does not have to remember the recipe.
Creating a template
There are two ways.
From an existing draft (the usual way). Build a work order the way you want it, keep it as a DRAFT, then on its processing page click Save as Template Copy. Give it a Template Name (it pre-fills with the WO subject) and click Save as Template. Your original DRAFT is untouched; a new WO of status TEMPLATE is created alongside it with the same routing. You will get a toast like Template "WO-000712" created.
By type. Any DRAFT of the right type can become a template this way, which is how each work-order type (Repair, Production, Internal, Project) ends up with a library of standard blueprints.
What gets copied into a template
- Copied: subject, description, customer, target date, priority, type, and every step with its full step-specific data (expected items, planned items, instructions, delivery baskets, and so on).
- The steps are copied with their assignees preserved and their status reset to PENDING (a fresh blueprint is never mid-run).
Creating a work order from a template
On the Work Orders page click New Work Order. The dialog opens in From Template mode by default:
- Optionally filter the template list by Type of Work.
- Pick the Template - the dropdown shows each as Subject (WO number). Selecting one pre-fills the subject, customer, target date and description from the template.
- Adjust the header for this specific job - change the subject, set the real customer, set the target date.
- Click Create From Template.
The new WO opens as a DRAFT on its processing page, already carrying the template's steps. Review it, tweak anything job-specific, then Release to Floor. (Repair work orders created from a repair template come out ready to release - the receive and route steps are already in place; the rest of the pipeline generates itself as work progresses.)
Schedules - recurring work orders
A schedule makes the system create a work order from a template on a repeating cadence - every month, every week, every N days - with no one having to remember.
Open the Schedules tab on the Work Orders page (visible only if you have the schedule-manage permission).
Creating a schedule
Click New Schedule and fill in:
- Name - what the schedule is called, e.g. "Weekly Leak Inspection".
- Template Work Order - search and pick the TEMPLATE to clone each run. It must be a root template.
- Interval + Unit - "every N" Days / Weeks / Months / Years.
- First Run Date - when the schedule should first create a WO.
- Auto-release created work orders - a toggle. On: each created WO is released to the floor immediately. Off: each created WO stays a DRAFT for someone to review and release by hand.
Click Create Schedule.
The schedules list
Each row shows Name, Template WO, Interval (e.g. "2 WEEKS"), Next Run, Last Run, Auto-Release (Yes / No), Active (a toggle to pause or resume the schedule), and an Errors count of any recent spawn failures. Row actions let you Run Now (fire it once immediately), Edit, or Delete the schedule.
When schedules fire
A background job runs once a day at 00:05. It looks at every active schedule whose Next Run date has passed and, for each one:
- Creates a new DRAFT work order from the schedule's template.
- Releases it to the floor if Auto-Release is on (otherwise it is left as a DRAFT).
- Advances the schedule's Next Run by the interval and records the Last Run.
So a "monthly, auto-release on" schedule quietly drops a fully-routed, released work order into the right queues on the first eligible night of each month.
Tips
- Templates and DRAFT work orders are the only ones you can delete; a template you no longer want can be removed cleanly.
- Keep templates generic - leave the customer and dates to be filled in per job, and put anything that genuinely varies (specific quantities, specific serials) in at create time rather than baking it into the blueprint.
- Pause, do not delete, a seasonal schedule - toggle Active off and back on rather than deleting and recreating it, so its history and Next Run survive.
- If a schedule shows an Errors count, open it - the usual cause is a template that was later cancelled or edited into an unreleasable state. Point the schedule at a healthy template.
- Auto-release is powerful but unattended - use it only for templates you trust to release cleanly (no missing assignees or BOM gaps that the preflight would catch). For anything that needs a human eye first, leave Auto-Release off and let the DRAFT wait.