---
title: "SYSPRO WIP and Job History: Migrate or Archive?"
slug: syspro-wip-and-job-history-migrate-or-archive
date: 2026-10-26
author: Raajshekhar Rajan
categories: [SYSPRO, ERP, Migration Guide]
excerpt: "Deciding whether to migrate or archive SYSPRO WIP and job history? Covers extraction methods, retention rules, and a practical decision framework."
tldr: "Migrate open WIP jobs to your new ERP as new work orders with opening balances. Archive closed job history to a queryable store. Extract both before your SYSPRO licence expiry date, and check for jobs SYSPRO has already archived to XML."
canonical: https://clonepartner.com/blog/syspro-wip-and-job-history-migrate-or-archive
---

# SYSPRO WIP and Job History: Migrate or Archive?


**SYSPRO WIP and job history** requires a split strategy when you leave: migrate open, active jobs to your new ERP as opening balances, and extract closed job history to a secure, queryable archive. Attempting to push decades of closed manufacturing jobs into a new ERP is a fast track to failed validations, corrupted costing calculations, and delayed implementation timelines.

This guide covers what lives inside SYSPRO's WIP module, what SYSPRO's native archiving captures (and what it drops), the regulatory drivers that dictate retention periods, and the technical mechanisms required to extract both open and closed jobs before your licence expires. With SYSPRO's 2026 licensing changes enforcing hard cutoffs for access, securing your WIP and job history is not an eventual cleanup task — it is an immediate prerequisite for any platform transition.

## What Data Lives in SYSPRO's WIP Module?

**SYSPRO's Work in Progress module tracks active and completed production jobs, their material and labour allocations, and the cost variances between planned and actual.** SYSPRO 8 stores its data in Microsoft SQL Server, with each company's data contained within a single database ([help.syspro.com](https://help.syspro.com/syspro-8-2024/resources/pdfs/syspro-8-database-architecture-technical-guide.pdf)). If you have multiple SYSPRO companies, you have multiple databases to account for.

The core SQL tables involved in a WIP extraction include ([help.syspro.com](https://help.syspro.com/syspro-8-2026-r1/i-installation/sys-8-sql-updates-by-release/sys-8-sql-updates-by-release.htm)):

- **`WipMaster`** — work in progress jobs.
- **`WipJobAllMat`** — materials allocated to a job.
- **`WipJobAllLab`** — labour (operations) allocated to a job.

Beyond those three tables, WIP history also spans **labour journals**, **part billing journals**, **job amendment journals**, **scrap analysis records**, and **non-productive analysis records**. Each has its own retention option on the History tab of WIP Setup, and the Purge function of the WIP Period End program deletes records older than the cut-off. Scrap and non-productive analysis can be set to "retain ... indefinitely" (SYSPRO 7 Update 1 help, [help.syspro.com](https://help.syspro.com/syspro-7-update-1/impcos.htm)). Check those settings before extraction: they tell you how much journal history is still in the live tables.

### Related tables that tie into WIP

Job history does not stand alone. A typical WIP extraction also pulls from:

- **`BomOperations`** — bill of materials operations (routing steps).
- **`BomWorkCentre`** — work centres.
- **`InvMaster`** and **`InvWarehouse`** — the stock codes and warehouse-level data referenced by material allocations.
- **`LotDetail`** — lot traceability records for lot-tracked components and finished goods. In SYSPRO, the header record is never deleted from the lot master table; only the lot transactions are deleted and archived ([help.syspro.com](https://help.syspro.com/syspro-8-2024/g_programs/lot/lotp01/lotp01.htm)).
- **`InvSerialHead`** — serial numbers assigned during production receipts.

If your job history references lot or serial numbers, those records are part of the compliance picture — not optional extras.
When a job is active, materials are issued from inventory (`InvMovements`), labour is recorded against routing steps, and costs accrue. When the job is completed, the finished goods are received into inventory (for example through the `WIPTJR` WIP Job Receipts business object), and the postings reach the general ledger (`GenTransaction`).

## What Does SYSPRO Archive Natively — and What Does It Drop?

**SYSPRO's built-in archiving creates XML files during the WIP Period End purge routine.** SYSPRO 7 Update 1 help says: "Instead of merely deleting data at the time of performing a purge routine, SYSPRO creates a file in XML format that contains the purged data." For jobs, "header details are copied to a work in progress archive file" for all completed jobs that qualify for purging ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/ovr-archiving.htm)).

The archiving covers three data types: sales orders, jobs, and ECC bills of materials. For WIP jobs, the options sit on the **History** tab of the Work in Progress Setup program ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/ovr-archiving.htm)):

1. **Archive completed jobs before purging** — copies job header details to an XML file.
2. **Archive job's transactions** — optionally includes "all transactions posted against a job".
3. **Maximum jobs per archive file** — keeps each archive file manageable.

The archive files follow the naming convention `Xyynnnnn.XML`, where `X` is the company ID, `yy` is `JB` for jobs, and `nnnnn` is the archive number ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/impbam.htm)). Archived jobs can be viewed with the **Browse Archived WIP Jobs** program, opened from the Archived Jobs option of WIP Query ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/impbaj.htm)). All of these pages are SYSPRO 7 Update 1 help. Confirm the same options on your release.

### What the native archiving skips

This is the part most teams miss. SYSPRO's own documentation (SYSPRO 7 Update 1 help) states:

> No "additional" attached information (such as custom forms, multimedia, notes, etc) is archived.

([help.syspro.com](https://help.syspro.com/syspro-7-update-1/ovr-archiving.htm))

If you have custom form fields on your WIP jobs — stored in SYSPRO's plus tables — those are **not** included in the archive XML. Neither are attached documents, notepad entries, or any data stored in custom plus tables you have added to the WIP module. For teams that have extended SYSPRO's standard WIP screens with custom fields (batch attributes, quality hold reasons, customer-specific specs), the native archive is incomplete by definition.

Purge criteria also matter. SYSPRO 7 Update 1 help says that, in addition to the cut-off date, "completed jobs are deleted only if the value of the job is zero for the current and previous two months" ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/impcos.htm)). So a completed job that still carries value stays in the live tables.

## SYSPRO's 2026 Licensing Deadline Changes the Timeline

**SYSPRO is ending its Initial and Annual Licence Fee model.** Going forward, the software is only available as a named-user subscription ([syspro.com](https://www.syspro.com/formal-notice-change-to-syspro-licensing/)).

The formal notice gives two strict expiry dates for existing licences:

- **31 October 2026** for customers located outside the US.
- **31 December 2026** for customers located in the US.

From your expiry date (1 November 2026 outside the US, 1 January 2027 in the US), "you will no longer be able to access Syspro" unless you sign a new subscription agreement. The notice says: "On cessation of your current licence, you have the right to export your data," and that SYSPRO "will provide a straightforward process for this on request" ([syspro.com](https://www.syspro.com/formal-notice-change-to-syspro-licensing/)). It asks you to raise the export with your account manager ahead of the expiry date. It does not describe a read-only mode after expiry, does not say how long the export process stays available, and does not define the export format.

This means two things for WIP and job history:

1. **If you are not signing the new subscription, plan to finish extraction before your expiry date.** The Browse Archived WIP Jobs program is part of SYSPRO, and the notice gives no access after expiry. Raise the export with your account manager now, whichever date applies to you.
2. **Plan the archive extraction as part of your migration project, not after it.** Teams that focus only on migrating open jobs and master data to the new ERP, intending to "come back for the history later," risk losing access first.

For more on the licensing change, see [SYSPRO licence change 2026: the deadlines explained](https://clonepartner.com/blog/blog/syspro-licence-change-2026-deadlines-explained).

## How Long Must You Keep Manufacturing Job History?

**There is no single retention number — it depends on your industry, your customers, and your quality management system.** Your quality team, auditor or legal team sets the retention schedule, and you need it *before* you decide what to migrate versus what to archive. Retention normally runs from the date of each transaction or release, not from the day SYSPRO is retired. The ERP transition does not change the retention obligation; it only changes where and how you meet it.

Regulated manufacturers (pharmaceutical, medical device, aerospace and defence, automotive) usually carry their own record-keeping rules, and customer contracts can add more. Get the periods in writing from the people who own them, per record type, rather than picking a number for the whole archive.

## Why Closed Job History Does Not Belong in the New ERP

**Do not migrate closed, historical jobs into a new ERP.** Every ERP system — whether [Dynamics 365 Business Central](https://clonepartner.com/blog/migrate/syspro-to-microsoft-dynamics-365-business-central), [Epicor Kinetic](https://clonepartner.com/blog/migrate/syspro-to-epicor-kinetic), [Acumatica](https://clonepartner.com/blog/migrate/syspro-to-acumatica), or SAP — uses a different costing engine and routing structure. If you attempt to force a closed SYSPRO job into a new system, the target ERP will attempt to recalculate the material variances, labour burdens, and overheads based on its own configuration, not SYSPRO's historical setup.

This leads to three critical failures:

1. **Validation errors.** Target systems will reject historical jobs if the associated work centres, routing steps, or legacy inventory items no longer exist or are inactive in the new system.
2. **Corrupted financials.** Forcing historical WIP transactions into a new ERP will post unintended entries to the general ledger, throwing historical financial reporting out of balance.
3. **Timeline blowouts.** Mapping the intricacies of closed historical jobs takes weeks of manual effort for zero operational benefit.

Recently completed jobs are a grey area. Your production planners or cost accountants may query them daily for warranty lookups, cost variance analysis, and customer inquiries. If the target ERP supports closed production order imports and the volume is manageable, migrating recent completions can make sense. Your implementation partner should confirm the landing zone in the target system before you commit.

Everything older belongs in a secure, queryable archive. This satisfies audit, compliance, and warranty lookup requirements without polluting the new ERP's transactional database.

## How to Handle Open WIP During Cutover

**Open WIP** refers to jobs that are currently active on the shop floor at the time of your ERP cutover. These cannot be left behind, nor can they simply be copy-pasted into the new system.

### Flush the shop floor

The most effective strategy is to minimise the number of open jobs before cutover. In the weeks leading up to the Monday go-live, operations teams should focus on completing as many open jobs as possible. Finish the assemblies, receive the goods into inventory, and close the jobs in SYSPRO. This converts complex WIP data into straightforward inventory balances, which are far easier to migrate.

### Extract active jobs

For the jobs that cannot be closed, extract the active records from `WipMaster`, along with their current material (`WipJobAllMat`) and labour (`WipJobAllLab`) allocations. This extraction happens during the final cutover window.

ClonePartner's cutover rules dictate that we go live on a Monday, never on a Friday. The bulk data load runs in the days before go-live while SYSPRO stays live. SYSPRO is then frozen before Monday's working day starts. The final delta sync captures only the changed records — including any final material issues or labour postings against open jobs — taking about 30 minutes.

### Recreate as opening balances

In the target ERP, open SYSPRO jobs are not migrated as historical transactions. They are recreated as brand-new work orders. The materials already issued in SYSPRO are mapped as opening WIP balances or issued immediately to the new work order upon creation. This ensures the new ERP's costing engine tracks the remaining work accurately from day one.

The table below summarises the typical treatment for each category of WIP data:

| Data | Treatment |
|---|---|
| Open (in-progress) jobs | Migrate as new work orders in the target ERP |
| Recently closed jobs | Migrate if operations queries them daily; otherwise archive |
| Job-linked lot and serial records | Migrate the traceability chain if finished goods are still in warranty |
| Older completed jobs | Archive to a queryable store |
| Labour / part billing journals | Archive — audit evidence, not operational data |
| Scrap and non-productive analysis | Archive — better served by a BI layer than the target ERP |

## A Practical Decision Framework

Use this as a starting point. Walk through each row with your production manager, quality manager, and finance lead:

| Question | If yes → | If no → |
|---|---|---|
| Do production planners query old job costs weekly? | Migrate recent history | Archive |
| Are finished goods from these jobs still in warranty or in the field? | Migrate the lot/serial traceability chain | Archive the traceability data separately |
| Does your quality system require job records in the ERP of record? | Migrate or build a validated archive with audit trail | A flat archive may suffice |
| Does the target ERP support historical production order imports? | Confirm the mapping with your implementation partner | Archive — forcing data into an incompatible model causes more problems than it solves |
| Is your completed-job volume small enough to validate job by job? | Migration is likely straightforward | Scope a phased approach: migrate recent, archive old |
| Do you have custom form fields (plus tables) on WIP jobs? | Extract via SQL — SYSPRO's native archiving skips these | Standard extraction methods work |

## How to Extract WIP and Job History from SYSPRO

**A one-off, read-only SQL extract of the SYSPRO company database is the most complete extraction method.** Reading the company database with SQL reaches every table, including custom plus tables, so it captures the plus table fields that SYSPRO's native archiving omits. SYSPRO's own best-practice guide warns that "Connecting to the SYSPRO databases directly using SQL drivers is not advised" ([help.syspro.com](https://help.syspro.com/syspro-8-2023/resources/pdfs/2023-release/technical/syspro-8-best-practices-for-connecting-to-syspro.pdf)). That warning targets live integrations. For a migration extract, use a read-only login, ideally against a restored copy of the database, and never write back.

SYSPRO also exposes **Business Activity Queries (BAQs)**, which "are SQL views that are created in the relevant company databases". "Any SQL user with db_datareader permissions can retrieve data using the views" ([help.syspro.com](https://help.syspro.com/syspro-8-2024/resources/pdfs/2022-release/topics/syspro-8-business-activity-queries-reference-guide.pdf)).

In **Syspro Cloud ERP**, direct SQL is not available. SYSPRO says its read-only OData service "is the only mechanism available when applications need access to SYSPRO data in the Syspro Cloud ERP environment" ([help.syspro.com](https://help.syspro.com/syspro-8-2025/topics/insights-and-reporting/syspro-odata/syspro-odata.htm)). It returns at most 5,000 rows per call, paged with `$top` and `$skip` ([help.syspro.com](https://help.syspro.com/syspro-8-2021-r2/topics/insights-and-reporting/syspro-odata/syspro-odata.htm)).

Do not use SYSPRO e.net business objects for bulk extraction. Query (`Q`) objects are designed for transactional integration — returning XML for one record or a filtered set. They are not built to dump ten years of `WipMaster` records. Transaction objects like `WIPTJR` (WIP Job Receipts) are for processing current operations, not extracting history ([help.syspro.com](https://help.syspro.com/business-object-library/G_Objects/wip/wiptjr/wiptjr.htm)). For a detailed comparison, see [SYSPRO e.net business objects or direct SQL for extraction](https://clonepartner.com/blog/blog/syspro-enet-business-objects-or-direct-sql-extraction).

### Don't forget already-archived jobs

If your WIP setup had archiving enabled, completed jobs that were previously purged now exist *only* in the jobs archive files (`Xyynnnnn.XML` with `JB` as the type), not in the live SQL tables. The Archive Setup program records the folder they were written to; with no folder set, SYSPRO "defaults to storing archived data in your current working directory" ([help.syspro.com](https://help.syspro.com/syspro-7-update-1/ovr-archiving.htm)). A direct SQL pull of `WipMaster` will return only jobs that have not yet been purged. If your retention settings deleted completed jobs after a set number of days, years of production history may already be sitting in XML archives rather than in the database.

Before extraction, check your archive folder for these files. Your data extraction strategy must include parsing these `JB` XML files and appending their contents to the SQL extraction. Otherwise, your compliance archive will be incomplete.

SYSPRO's lot Purge and Archive program behaves similarly: the header record stays in the lot master table, but lot transactions are deleted and archived separately ([help.syspro.com](https://help.syspro.com/syspro-8-2024/g_programs/lot/lotp01/lotp01.htm)). Check for archived lot transactions before assuming your SQL extract is complete.

## Validating the WIP Extraction

**Extracting the data is only half the process; proving it is complete is the other.** ClonePartner validates WIP and job extractions through strict, multi-stage checks:

- **Record-count parity.** The number of jobs extracted must match the count in `WipMaster` exactly, plus the count of natively archived `JB` XML records.
- **Field-level validation.** Checksums verify that financial values — such as total material costs in `WipJobAllMat` — match the extracted output down to the decimal.
- **Referential integrity checks.** Every material allocation must reference a valid stock code (`InvMaster`). Every job linked to a sales order must have a corresponding customer (`ArCustomer`). Orphaned records are caught before they hit the target.

For archiving: compare record counts, total job values, and spot-check individual jobs between the source data and the archived dataset. For migration: validate that the target ERP's production data model correctly reflects the source values after transformation.

## Keep Two Clocks Apart: Migration vs. Implementation

> [!WARNING]
> **These are different workstreams.** The customer's ERP implementation — selecting the new software, configuring the manufacturing modules, mapping the routing steps, training the staff — takes months. ClonePartner does not implement ERPs; your internal team or implementation partner handles that.
>
> ClonePartner's data migration happens on a separate, much faster clock. Most migrations complete within 1–5 business days, depending on data volume, complexity, and API rate limits. Small datasets (under 10,000 records) can finish in under 24 hours. Extracting WIP and job history out of SYSPRO before your expiry date does not have to wait for the new ERP to be ready.

## What to Do Right Now

If you are leaving SYSPRO and have not yet addressed WIP and job history:

1. **Run a count.** Query `WipMaster` for total jobs by status (open, completed, purged). Check your archive directory for XML files.
2. **Talk to your quality team.** Get the retention schedule. Know which records must be retrievable and for how long.
3. **Decide: migrate, archive, or both.** Use the decision framework above. Most manufacturing teams land on a hybrid — migrate open jobs and recent completions, archive everything older.
4. **Act before your expiry date.** Your licence expires on 31 October 2026 if you are outside the US, or 31 December 2026 if you are in the US ([syspro.com](https://www.syspro.com/formal-notice-change-to-syspro-licensing/)). Extract the history while you still have access, and raise the data export with your account manager ahead of that date.

By recreating active jobs as new work orders and extracting closed history to a secure archive, you maintain operational continuity and keep the records your auditors need.

For a detailed walkthrough on building a SYSPRO archive, see [How to Archive SYSPRO History Before Switching ERP](https://clonepartner.com/blog/blog/how-to-archive-syspro-history-before-switching-erp). For options on looking up history after the move, see [Read-Only Access to SYSPRO History After Migration](https://clonepartner.com/blog/blog/read-only-access-to-syspro-history-after-migration).

> Need your SYSPRO WIP and job history out before your licence expires? Book a free 30-minute scoping call and we'll map your WIP dataset, estimate the timeline, and give you a fixed-price proposal — no hourly billing.
>
> [Talk to us](https://clonepartner.com/talk-to-us?duration=30&utm_source=blog&utm_medium=button&utm_campaign=demo_bookings&utm_content=cta_click&utm_term=demo_button_click)

## Frequently asked questions

### Should I migrate closed SYSPRO jobs to my new ERP?

Generally no. Target ERPs calculate variances, labour and overhead differently, which causes validation failures and distorts historical financial reporting. Recently completed jobs may be worth migrating if your operations team queries them daily and the target ERP supports closed production order imports. Everything older should go to a read-only archive.

### What does SYSPRO's native WIP archiving include, and what does it miss?

SYSPRO 7 Update 1 help documents that, when archiving is enabled, the Purge routine of the WIP Period End program copies completed job headers to an XML file, and optionally all transactions posted against the job. It also states that no additional attached information, such as custom forms, multimedia or notes, is archived. If you have extended WIP with custom form fields, the native archive is incomplete.

### How do I extract WIP data from SYSPRO?

A one-off, read-only SQL extract of the company database, ideally against a restored copy, is the most complete method. Query WipMaster, WipJobAllMat and WipJobAllLab, plus related tables such as LotDetail and InvSerialHead. In Syspro Cloud ERP, use the read-only OData service instead. Also check your archive folder for previously purged jobs stored as XML files, because those records no longer exist in the live tables.

### How long must I retain manufacturing job history?

Your quality, legal and audit teams set the retention period. It depends on your industry, your customers' contracts and your quality system, and it normally runs from the date of each transaction or release, not from the day SYSPRO is retired.

### What happens to SYSPRO WIP data when my licence (license) expires in 2026?

SYSPRO's formal notice says existing licences expire on 31 October 2026 for customers outside the US and 31 December 2026 for customers in the US. After your expiry date you can no longer access SYSPRO unless you sign a new subscription. The notice gives a right to export your data but describes no read-only mode, so extract WIP history before your expiry date.
