Work order (job) item, status and routing tables in SyteLine
work order item table
Also searched as
- work order status table
- table name for routing
- syteline job table
- syteline jobroute jobmatl table
Short answer
In SyteLine a work order is a job, keyed by job and suffix. The header is in the job table (item, quantity, status), operations are in jobroute, materials in jobmatl, and production transactions in jobtran. Item standard routings are stored as template jobs rather than in a separate routing table.
Applies to: Infor SyteLine 8.x to CloudSuite Industrial (on-prem SQL Server). Column names can vary by version, so check your schema before using the SQL.
Find work order data in SQL
- 1Query the job table for the header: job, suffix, item, qty_released, qty_complete, stat (status), and dates. Always include the site_ref filter in multi-site databases.
- 2Join jobroute on job and suffix for operations: oper_num, wc (work centre), run and setup hours.
- 3Join jobmatl on job and suffix (and oper_num) for the materials required: item, matl_qty, matl_qty_used.
- 4Use jobtran for what actually happened: labour, machine and move transactions per operation.
- 5Use the item master (item table) to read the item description and to find the item's template routing job.
- 6Work with the site-aware views or filter site_ref when you query the base tables directly.
- 7Test queries on a reporting copy first and keep them read-only.
- 8Confirm the column list in SQL Server Management Studio before relying on a column.
Job header and status
The job table holds one row per job and suffix. Status in the stat column is a one-letter code; typical values include planned (P), firm planned (F), released (R), stopped (S) and complete (C). The job table also has a type field that separates real production jobs from standard or template jobs.
Use stat to filter work in process. A job released and not yet complete is open work. For quantities, compare qty_released with qty_complete and qty_scrapped.
SELECT j.job, j.suffix, j.item, j.stat, j.qty_released, j.qty_complete FROM job j WHERE j.stat = 'R' AND j.site_ref = 'SITE1' ORDER BY j.job, j.suffix;
Routing: operations on a job and on an item
The routing of a job is the set of rows in jobroute. The standard routing of an item is stored as a template job, which the item points to, and the job order generation copies it to the new job. That is why a routing question in SyteLine often ends at jobroute.
To list operations of a job, join job to jobroute. Do not expect a table literally named routing to carry everything.
SELECT jr.job, jr.suffix, jr.oper_num, jr.wc, jr.run_lbr_hrs, jr.setup_hrs FROM jobroute jr WHERE jr.job = 'J000123' AND jr.suffix = 0 ORDER BY jr.oper_num;
Materials and actuals
jobmatl lists the required components per operation with the planned quantity and the quantity issued so far. Compare them for shortage and over-issue analysis.
jobtran holds the posted transactions. Use it for actual hours and quantity by operation. Cost roll-up and variance reports are built from these tables.
Safe reporting practice
Use the Mongoose SQL views or the IDO layer for reports that ship to users, because they respect business rules and site scoping. Direct SQL is for analysis.
Never update these tables directly. Changes belong to the job order forms or IDO methods so that costs, schedules and inventory stay consistent.
Try it here, free
SyteLine SQL Query Generator for Item, Job and Order Tables
Fill in site, item prefix, job status and date to produce read-only SQL for item master, jobs and open customer order lines.
Common pitfalls
- !Forgetting site_ref and mixing sites in a multi-site database.
- !Looking for a routing table instead of the template job and jobroute.
- !Assuming status letters without checking the values used in your version.
- !Joining on job only and ignoring suffix, which duplicates rows.
- !Updating job tables with SQL and breaking cost and scheduling consistency.
How an ERP-grounded AI assistant handles this
SyteRay can translate 'show open jobs with a material shortage at operation 20' into the right joins on job, jobroute and jobmatl for your version, show the SQL and run it read-only on your server. It is useful for the table-name hunting that eats consultant time. The model runs on-prem when required.
Frequently asked questions
What is the work order table in SyteLine?
The job table. A work order is a job with a suffix, and it carries the item, quantities, status and dates. Operations are in jobroute, materials in jobmatl.
Where is the routing table in SyteLine?
The operations of a job are in jobroute. An item's standard routing is kept as a template job that the item references, copied when a new job is generated.
Where is work order status stored?
In the stat column of the job table, as a one-letter code. Typical values are planned, firm planned, released, stopped and complete.
Can I update job tables directly with SQL?
Do not. Use the job order forms or IDO methods so cost, schedule and inventory transactions stay in sync.
Related
How to Maintain the BOM and Routing in SyteLine
In SyteLine the manufacturing structure for an item is a standard (type S) job: its material lines are the BOM and its operation lines are the routing. You maintain it from the item's BOM and routing forms, set effectivity dates, then let new job orders pull a copy. Existing jobs do not update automatically, which is where most confusion comes from.
How-toHow to Close a Job Order in SyteLine
Close a job order from Production > Job Orders once every routing operation is reported complete and the finished quantity has been received, then run Close Jobs to post the remaining WIP balance to variance and lock the job from further transactions.
AdvancedHow to Build SQL Views for Custom SyteLine Reporting
Reports should read from purpose-built SQL views, not directly from SyteLine's core transactional tables, so an Infor patch cannot silently break them and heavy report queries do not lock rows the ERP itself needs. Put custom views in their own schema or under a clear naming convention, build them on stable base tables, and grant reporting tools read access to the views only.
How-toHow to Run a Cost Rollup in SyteLine
Run Item Cost Rollup from Product Definition > Costing > Cost Rollup, select the site and item range, run it in Simulate mode first to review variances, then run it live to post new standard costs to Item records and the Costed Bill of Material.
Error fixFixing SyteLine's 'Object reference not set to an instance of an object' error
This is a generic .NET NullReferenceException surfacing through the SyteLine IDO Runtime, not a SyteLine-specific error code. It almost always means a form, script or IDO method referenced a field, row or object that came back null, usually after a customization, a missing related record, or a view/IDO method call before the form finished loading. Turn on detailed client logging and check the most recent customization or form event first.
Error fixDiagnosing and fixing SyteLine session timeout errors
SyteLine session timeouts come from one of three independent layers: the IDO Data Service session timeout on the app server, the IIS/application pool idle timeout for the web (Mongoose Web) client, or a load balancer/proxy idle timeout in front of a CloudSuite hosted environment. Fixing the wrong layer is the most common mistake - you need to identify which layer is actually expiring the session before changing anything.
AI for ERPAI for Infor SyteLine and CloudSuite Industrial
Add grounded AI to Infor SyteLine or CloudSuite Industrial: natural-language answers, agents over IDOs and ION, on-prem or CloudSuite deployment.
Stuck on Infor SyteLine (CloudSuite Industrial)?
Talk to engineers who work inside Infor SyteLine (CloudSuite Industrial) every week, and who build private AI that answers these questions from your own ERP data.
Keep exploring
Free tools
- SyteLine SQL Query Generator for Item, Job and Order TablesFill in site, item prefix, job status and date to produce read-only SQL for item master, jobs and open customer order lines.
- SyteLine Database Tables ReferenceSearchable lookup of the main SyteLine SQL tables, what each holds and its usual business key, for writing queries and reports.
- SyteLine Job and Order Status Codes ReferenceLook up what Planned, Firm Planned, Released, Stopped, Complete and the other SyteLine status codes mean and how they behave in planning and shipping.
ERP fixes and how-tos
- How to Close a Job Order in SyteLineClose a SyteLine job order the right way: finish routings, issue material, receive finished goods, then run Close Jobs to post WIP to variance accounts.
- How to Maintain the BOM and Routing in SyteLineHow to add components, operations and effectivity dates to a SyteLine bill of material and routing, and why edits do not reach jobs that already exist.
- SyteLine alternate routing and alternate BOM: a worked exampleA worked example of alternate routings and alternate BOMs in SyteLine, and how planning and job orders choose between them. Includes checks and pitfalls.
Guides
- SyteLine Production Order Configuration GuideConfigure SyteLine production orders. Job order types, status workflows, numbering schemes, and manufacturing execution setup for CloudSuite Industrial.
- How to Create Production Orders in Infor SyteLineStep-by-step guide to creating and managing production orders in Infor SyteLine CloudSuite Industrial, including job orders, planned orders, and firming workflows.
- SyteLine Routing Setup and Configuration Best PracticesConfigure SyteLine routings. Operation sequences, setup/run times, work center assignment, and routing optimization for production scheduling accuracy.
AI on your ERP
- AI on Infor SyteLine for Metal Fabricators: Quotes, Heat Lots, Routings and Job CostAI on Infor SyteLine for metal fabricators: quote and routing history, remnant and heat-lot traceability, outside processing, and job costing, kept private.
- AI for SyteLine Production Planning and Scheduling (MRP and APS)AI for SyteLine production planning and scheduling: explain late jobs, find constraint work centers, review MRP output and APS results in plain English, privately.