Import file spec
This page is the specification for the Excel workbook the MaxTrax importer accepts. It documents each worksheet, the columns on each, the values each column accepts, and every reason a row can be rejected. For the upload-and-fix task flow, see Import weld data from Excel.
Workbook rules
Section titled “Workbook rules”-
The file must be an
.xlsxworkbook..xls,.xlsm, and password-protected files are not supported. The upload also enforces a 25 MB upload limit. -
The workbook holds up to four worksheets, processed in this fixed logical order regardless of their physical tab order: ISO → Weld → Inspection → FilmInterval.
-
Worksheets are matched by name (case-insensitive; the first match wins):
Sheet Accepted worksheet names Required ISO ISO,IsoYes Weld Weld,WeldsNo Inspection Inspection,InspectionsNo FilmInterval FilmInterval,Film Interval,FilmIntervalsNo -
The ISO worksheet is required — a workbook without one fails the whole run (see Whole-run failures). It may be left with only its header row when every drawing your other sheets reference is already in the project; see Appending to ISOs already in the project. A run that ends up with nothing at all to process — no usable ISO rows and no drawing that resolves against the project — still fails as a whole.
-
Cells are read by column position (letter), not by header label. Place each field in the column letter documented below; the header row is not parsed for names. Empty cells may be omitted.
-
Every sheet is keyed to an ISO by its drawing number in column A. Rows are grouped by ISO for processing. A drawing number is matched first against this workbook’s ISO sheet and then against the ISOs already in the project; a child row whose drawing number matches neither is rejected as an orphan.
-
Key values — drawing numbers, weld labels, and reference codes — are trimmed and uppercased before matching, so matching is case-insensitive.
-
Duplicates take the first definition. A repeated ISO drawing number, or a repeated weld label within one ISO, keeps the first row and ignores the later one (not a rejection). The ignored row is listed in the validation report, so a second row carrying different values — a different welder, heat or filler, say — is never dropped without telling you. It is a warning, so it does not count toward the run’s rejected-row total and does not stop the run.
Appending to ISOs already in the project
Section titled “Appending to ISOs already in the project”You do not have to re-list a drawing on the ISO sheet to add welds to it. A workbook of new welds against drawings a previous import already loaded is an ordinary import: for each drawing your Weld / Inspection / FilmInterval sheets name but your ISO sheet does not, MaxTrax looks the drawing up in the project and uses the ISO it finds.
- The match is on drawing number, within this project, and the ISO must still be active. A drawing whose only match in the project has been deleted is treated as unknown and its rows are rejected as orphans — a deleted ISO is never revived or reattached to.
- A drawing that is on your ISO sheet is resolved from that row as before; the sheet row always wins, and its create-or-reuse behaviour and test-package assignment are unchanged.
- A drawing that matches nothing — not the sheet, not the project — still rejects its rows with
No matching ISO in the workbook., so a typo’d drawing number is as visible as it ever was. - Because the ISO sheet no longer has to carry these drawings, it may hold only its header row in a
welds-only workbook. One caveat in that shape: if the ISO sheet has no data rows and not a
single drawing on your other sheets resolves against the project, there is nothing for the run to
process at all, so it fails as a whole with
The ISO worksheet has no data rows; nothing to import.rather than listing each row as an orphan. If a welds-only workbook fails that way, check the drawing numbers in column A for a typo.
Reference codes
Section titled “Reference codes”Many columns hold a code that MaxTrax looks up against existing, active reference data (weld types, inspection classes, contractors, NDE contractors, procedures, components, materials, heats, ASTM codes, filler heats, inspection types, film-interval statuses, facilities, and more). The importer does not create reference records — the referenced value must already exist and be active. An unresolved optional code is left unset; an unresolved required key rejects the row.
Multi-value cells and dates
Section titled “Multi-value cells and dates”- Multi-value cells (welder stencils, filler-heat codes) accept several values separated by any
of
.,|:;tab, or newline. - Date cells accept an ISO / invariant date string or an Excel numeric date serial. A blank date cell means “no date”; a non-blank date that cannot be parsed rejects the row.
ISO sheet
Section titled “ISO sheet”Creates or reuses each ISO. Columns not listed are ignored.
| Column | Field | Required | Meaning / accepted values |
|---|---|---|---|
| A | Drawing number | Yes | The ISO drawing number. Blank rejects the row. |
| B | Unit | No | Free text. |
| C | Area | No | Free text. |
| D | System | No | Free text. |
| E | Test package | No | Test-package code; assigns the ISO to that package. Unknown code, or a signed ISO/package, rejects the row. |
| F | Inspection class | No | Reference code. |
| G | Line service | No | Reference code. |
| H | Insulation type | No | Reference code. |
| I | Line number | No | Free text. |
| J | Line size | No | Number. |
| K | Insulation size | No | Number. |
| L | Contractor | No | Reference code. |
| M | Spool | No | Free text. |
| P | Description | No | Free text. |
| Q | Sub-system | No | Free text. |
| R | Package tier | No | Optional classification for the package named in column E: IWP, TWP, or RFPC (common long forms such as Installation, Test, Ready-for-Pre-Commissioning are also accepted, case-insensitive). Blank leaves the package’s tier unchanged; an unrecognized value records a warning and leaves it unclassified. |
Weld sheet
Section titled “Weld sheet”Creates or reuses each weld on its ISO, then applies its descriptive and completion data. A row that carries welders (column I) completes the weld and requires a real weld date.
| Column | Field | Required | Meaning / accepted values |
|---|---|---|---|
| A | Drawing number | Yes | Must match an ISO in the workbook. |
| B | Weld label | Yes | The weld number, unique within its ISO. Blank rejects the row. A {label}R{n} label links the weld as a repair of its predecessor on the same ISO. |
| C | Diameter | No | Number. |
| D | Pipe schedule | No | Text; also read as the wall thickness. |
| E | Weld type | No | Reference code. |
| F | Inspection class | No | Reference code. Leave it blank to keep the class already set on that weld — a blank cell no longer resets the weld to its drawing’s class. An unknown code rejects the row. |
| G | Procedure | No | Welding-procedure (WPS) code. |
| H | Weld date | No | Date. Required when the row carries welders. A non-blank, unparseable date rejects the row. So does a weld date the system stores as the “not welded yet” marker or earlier — 1990-01-01 at midnight, anything within a few milliseconds after it, or any earlier date — for a weld that is already complete (it has a real weld date and at least one welder), because a completed weld can’t be un-completed by import. A genuine later time that day (for example 1990-01-01 08:00) is a real date and is accepted. Correct the date instead, or void the weld while it is still pending. |
| I | Welders | No | One or more welder stencils (multi-value). Each must resolve to an active welder; an unknown stencil rejects the row. Present ⇒ the weld is completed. |
| J | Component 1 | No | Reference code. |
| K | Heat 1 | No | Reference code. |
| L | Material 1 | No | Reference code. |
| M | Component 2 | No | Reference code. |
| N | Heat 2 | No | Reference code. |
| O | Material 2 | No | Reference code. |
| P | ASTM | No | Reference code, shared across both element sets. |
| Q | Filler heats | No | One or more filler-heat codes (multi-value). |
| R | Joint location | No | Field, Shop, or TPS (case-insensitive). Any other value is stored as unset, not rejected. |
| S | Spool | No | Free text. |
| T | Description | No | Free text. |
| U | Facility | No | Optional facility code that scopes this row’s welder stencils. Blank uses the default (unscoped) welders; a supplied but unknown facility rejects the row. |
Inspection sheet
Section titled “Inspection sheet”Creates or reuses an inspection on a weld and, when a status is given, records its disposition. Columns not listed (including D) are ignored.
| Column | Field | Required | Meaning / accepted values |
|---|---|---|---|
| A | Drawing number | Yes | Must match an ISO in the workbook. |
| B | Weld label | Yes | Must match a weld under that ISO, or the row is rejected. |
| C | Inspection type | Yes | Reference code; must resolve to a known inspection type, or the row is rejected. |
| E | Technician | No | NDE technician stencil. |
| F | NDE contractor | No | Reference code. |
| G | Inspection date | No | Date. |
| H | Status | No | The inspection result: Passed, Failed, Pending, or Negated (case-insensitive). Blank records no disposition; an unrecognized or illegal value rejects the row. See Inspection states. |
| I | Welder failure stencils | No | One or more welder stencils (multi-value) that failed this inspection. An unknown stencil rejects the row. |
| J | Welder failure reason | No | A single reason applied to each failing welder on the row. |
| L | Facility | No | Optional facility code that scopes the welder-failure stencils. A supplied but unknown facility rejects the row. |
FilmInterval sheet
Section titled “FilmInterval sheet”Adds film intervals to an inspection. The parent inspection is identified by the weld label (column B) and inspection type (column C) under the ISO. Columns not listed (including D) are ignored.
| Column | Field | Required | Meaning / accepted values |
|---|---|---|---|
| A | Drawing number | Yes | Must match an ISO in the workbook. |
| B | Weld label | Yes | Identifies the parent inspection with column C; if no matching inspection exists, the row is rejected. |
| C | Inspection type | Yes | Reference code; identifies the parent inspection with column B. |
| E | Status | No | Film-interval status reference code. |
| F | Begin | No | Number — interval start. |
| G | End | No | Number — interval end. |
| H | Rejected length | No | Number. |
| I | Comments | No | Free text. |
Validation and rejection reference
Section titled “Validation and rejection reference”A bad row never stops the import. It is recorded and skipped, and the rest of the workbook imports normally. When a run finishes with rejected rows, the validation report lists each one with its sheet, row number, ISO drawing number (when known), field (when attributable), and a reason. The reasons the report can show:
| Category | Reason shown | Where |
|---|---|---|
| Missing key | Blank drawing number. |
ISO, column A |
| Missing key | Blank weld label. |
Weld, column B |
| Orphan row | No matching ISO in the workbook. — the drawing number is on neither this workbook’s ISO sheet nor an active ISO in the project (see Appending to ISOs already in the project) |
Weld / Inspection / FilmInterval, column A |
| Missing parent | Weld '{label}' not found under ISO '{drawing}'. |
Inspection, column B |
| Missing parent | Inspection '{label}/{type}' not found under ISO '{drawing}'. |
FilmInterval, column B |
| Unknown reference | Unknown inspection type '{code}'. |
Inspection, column C |
| Unknown reference | Unknown welder stencil '{stencil}'. |
Weld / Inspection |
| Unknown reference | Unknown facility '{code}'. |
Weld / Inspection, facility column |
| Bad value | Unparseable weld date '{value}'. |
Weld, column H |
| Bad value | Unrecognized inspection status '{value}'. |
Inspection, column H |
| Warning | Unrecognized package tier '{value}' — test package '{code}' left unclassified. |
ISO, column R |
| Warning | ISO '{drawing}' is listed more than once in this workbook. The first row won; this row's ISO values were not imported. |
ISO, column A |
| Warning | Weld '{label}' is listed more than once on ISO '{drawing}' in this workbook. The first row won; this row's values were not imported. |
Weld, column B |
| Domain rule | The rule message from the create/update the row triggered — for example a signed-ISO lock (iso_signed), a signed-test-package lock (test_package_signed), a validation error, a missing reference, or a concurrency conflict. |
Any sheet |
Whole-run failures
Section titled “Whole-run failures”A structural problem with the workbook fails the entire run rather than rejecting individual rows:
The required 'ISO' worksheet is missing from the workbook.The ISO worksheet has no data rows; nothing to import.— raised only when the run has nothing to process at all: no usable ISO row and no drawing on the other sheets that resolves against an active ISO in the project. A welds-only workbook against already-loaded drawings imports normally.- Other workbook-structure errors, reported against a
Workbookentry.
Related
Section titled “Related”- Import weld data from Excel — upload, watch, fix, and re-import.
- Troubleshooting — what a rejection reason means and how to resolve it.
- Weld status lifecycle and Inspection states — the states imported records can hold.