Infor M3 & CloudSuiteFree referencePDF, Excel, Word exportInfor M3All Infor M3 tools

Infor M3 OOHEAD and OOLINE Customer Order Table Columns

This reference lists the M3 13.x customer order columns that matter in reports and integrations, in OOHEAD (prefix OA) and OOLINE (prefix OB), plus the keys that link them to deliveries in ODHEAD, ODLINE, MHDISH and MHDISL. It goes deeper than a table list and focuses on the order lifecycle.

Download:
TableColumnDescriptionKeyJoin toSet byNotes
OOHEAD
OACONO
Company
PK part 1
OOLINE.OBCONO
Session company
Always filter on company
OOHEAD
OAORNO
Customer order number
PK part 2
OOLINE.OBORNO
Number series per order type; returned by OIS100MI Confirm
OOHEAD
OADIVI
Division
-
CMNDIV
From facility
OOHEAD
OAORTP
Customer order type
-
OOTYPE
OIS100 A panel; OIS100MI AddBatchHead ORTP
Drives status flow, numbering and delivery status (OIS010)
OOHEAD
OAFACI
Facility
-
CFACIL
OIS100MI AddBatchHead FACI or default
OOHEAD
OAWHLO
Warehouse (header default)
-
MITWHL
OIS100MI AddBatchHead WHLO or default
Lines can use another warehouse
OOHEAD
OACUNO
Customer number
-
OCUSMA.OKCUNO
OIS100 A panel; OIS100MI AddBatchHead CUNO
OOHEAD
OAORDT
Order date (YYYYMMDD)
-
-
Entry date or OIS100MI AddBatchHead ORDT
Numeric date
OOHEAD
OACUOR
Customer's order number
-
-
OIS100MI AddBatchHead CUOR
Useful to detect duplicate web or EDI orders
OOHEAD
OARLDT
Requested delivery date (header)
-
-
OIS100 / OIS100MI
Default for lines
OOHEAD
OAORSL
Lowest status on the order
-
-
M3, from line statuses
Filter on it to find orders with open lines
OOHEAD
OAORST
Highest status on the order
-
-
M3, from line statuses
OOHEAD
OACUCD
Currency
-
CSYTAB currency
From customer
OOHEAD
OATEPY
Payment terms
-
CSYTAB
From customer
OOHEAD
OAMODL
Delivery method
-
CSYTAB
From customer
OOHEAD
OATEDL
Delivery terms
-
CSYTAB
From customer
OOHEAD
OASMCD
Salesperson
-
CMNUSR
From customer or entry
OOHEAD
OAPYNO
Payer
-
OCUSMA
From customer
Invoice goes to the payer
OOHEAD
OAYREF / OAOREF
Your reference / our reference
-
-
OIS100 entry
OOLINE
OBCONO
Company
PK part 1
OOHEAD.OACONO
-
OOLINE
OBORNO
Customer order number
PK part 2
OOHEAD.OAORNO
-
OOLINE
OBPONR
Order line number
PK part 3
ODLINE.UBPONR, MHDISL.URRIDL
Assigned on entry
OOLINE
OBPOSX
Line suffix
PK part 4
ODLINE.UBPOSX, MHDISL.URRIDX
Assigned on split
Include it in every line join or you double count
OOLINE
OBITNO
Item number
-
MITMAS.MMITNO, MITBAL
OIS100MI AddBatchLine ITNO
OOLINE
OBWHLO
Warehouse
-
MITBAL.MBWHLO
OIS100MI AddBatchLine WHLO or header
OOLINE
OBFACI
Facility
-
CFACIL
From warehouse
OOLINE
OBORQT
Ordered quantity, basic U/M
-
-
OIS100MI AddBatchLine ORQT
Compare like for like units
OOLINE
OBORQA
Ordered quantity, alternate U/M
-
-
OIS100 entry
OOLINE
OBALUN
Alternate unit of measure
-
MITAUN
OIS100 entry
OOLINE
OBSAPR
Sales price
-
-
Price list or OIS100MI AddBatchLine SAPR
Per sales price U/M
OOLINE
OBSPUN
Sales price unit of measure
-
MITAUN
From item
OOLINE
OBLNAM
Line amount
-
-
M3 calculation
Order currency
OOLINE
OBORST
Line status
-
-
M3 order flow
See the M3 order status reference
OOLINE
OBDWDT
Requested delivery date
-
-
OIS100MI AddBatchLine DWDT
OOLINE
OBCODT
Confirmed delivery date
-
-
M3 or entry
OOLINE
OBALQT
Allocated quantity
-
MITALO
Allocation
OOLINE
OBDLQT
Delivered quantity
-
-
Delivery reporting
OOLINE
OBIVQT
Invoiced quantity
-
-
Invoicing
OOLINE
OBRNQT
Remaining quantity
-
-
M3
Open quantity for backlog reports
OOLINE
OBRORC / OBRORN / OBRORL
Reference order category, number, line
-
MPLINE, MWOHED
Supply creation
Links to the PO or MO created for the line
ODHEAD
UADLIX
Delivery number
Key part
MHDISH.OQDLIX
Delivery creation
One order can have several deliveries
ODHEAD
UAIVNO
Invoice number
-
Invoice tables
Invoicing
ODLINE
UBORNO / UBPONR / UBPOSX / UBDLIX
Order, line, suffix, delivery
Key parts
OOLINE and ODHEAD
Delivery reporting
Delivered and invoiced lines per delivery
MHDISH
OQDLIX
Delivery number
PK part
MHDISL.URDLIX
Delivery creation
Outbound and inbound deliveries
MHDISH
OQINOU
Direction (1 outbound)
-
-
M3
Filter on outbound for CO
MHDISH
OQRORC / OQRIDN
Reference order category / order number
-
OOHEAD.OAORNO when category is customer order
Delivery creation
MHDISL
URDLIX / URRIDN / URRIDL / URRIDX
Delivery, order number, line, suffix
Key parts
OOLINE.OBORNO / OBPONR / OBPOSX
Delivery creation
The bridge from a delivery to order lines
MHDISL
URITNO / URTRQT
Item / transaction quantity
-
MITMAS
Delivery creation

Column names follow the M3 convention of a two-letter table prefix plus a four-letter field name (OA for OOHEAD, OB for OOLINE). Confirm lengths and any column you rely on in M3 Metadata Publisher (MDP) for your 13.x release before you build reports or interfaces.

Get your M3 order report query checked

Send us your backlog or delivery query and we will check joins, suffix handling and status filters against your release.

Optional. The tool and every export work without this. No spam.

Was this tool useful?

How to use it

Search by column (OBORQT), by table or by what you need (delivered quantity). The Join to column gives the matching column in the other table, and Set by tells you which panel or OIS100MI field fills it, which helps when an integration loads a value but the report shows another. Every M3 column is the table prefix plus the field name you see in MI programs: OBITNO in the table is ITNO in OIS100MI AddBatchLine.

Where this lives in M3

OOHEAD holds one row per customer order and OOLINE one row per line and suffix, both keyed by company and order number. Delivery data sits in two places: MHDISH and MHDISL are the delivery head and lines for all order categories (maintained through MWS410), while ODHEAD and ODLINE hold the customer order view of each delivery, used for invoicing. Master data joins: OCUSMA for customers, MITMAS and MITBAL for items, OOTYPE for order types and CSYTAB for codes such as payment terms and delivery methods.

  • Always join on company (CONO) first
  • Include line suffix (POSX) in line joins
  • Dates are numeric YYYYMMDD
  • Quantities in basic U/M unless the column says alternate

Worked example: open order backlog

For a backlog report, select from OOLINE where OBCONO is your company and OBORST is below 66 (not yet delivered), join OOHEAD on OBCONO = OACONO and OBORNO = OAORNO to get the customer (OACUNO) and order type, and join OCUSMA on company and customer for the name. Sum OBRNQT for open quantity and use OBDWDT for the requested date. To add shipment detail, join MHDISL on URRIDN, URRIDL and URRIDX to the order line and then MHDISH on URDLIX = OQDLIX, filtering OQINOU = 1.

Version differences and gotchas

Infor adds columns between 13.x releases and cloud editions, so check MDP for yours. Forgetting OBPOSX in a join doubles lines after a split. OAORSL and OAORST are the lowest and highest line status, not a single order status. Reading tables directly is fine for reporting on a replica, but write through OIS100MI, never by SQL. Status codes are covered in the separate status reference; the field glossary covers four-letter field names in general.

Frequently Asked Questions

What are the main M3 customer order tables?

OOHEAD is the customer order header and OOLINE holds the order lines. Delivery data is in MHDISH and MHDISL for all order types, and ODHEAD and ODLINE for the customer order delivery and invoicing view. Customers are in OCUSMA and items in MITMAS.

How do I join OOHEAD and OOLINE?

Join on company and order number: OOHEAD.OACONO = OOLINE.OBCONO and OOHEAD.OAORNO = OOLINE.OBORNO. A line is identified by OBPONR and OBPOSX together, so include both when you join to delivery or allocation tables.

Why do M3 column names start with two letters like OA or OB?

Each M3 table has a two-letter prefix added to every field name: OA for OOHEAD, OB for OOLINE, MM for MITMAS, OK for OCUSMA. The four letters after the prefix are the field name used in MI APIs, such as CUNO or ITNO.

Where can I see the full M3 table structure?

Use M3 Metadata Publisher (MDP) for table and column definitions, indexes and descriptions for your release. Field help (F1) in programs such as OIS100 also shows which field you are looking at. This page highlights the columns used most for customer orders.

If you want sales and planning to ask M3 about orders in plain English on your own servers, we can build that on these tables with read-only access.

ArchRay builder
Design the on-prem AI stack for Infor M3: model, GPUs, RAG pipeline, guardrails
See memory, speed and cost as you swap parts, then export the diagram. Free, in your browser.
Open the builder

Keep exploring

Free tools

ERP fixes and how-tos

Guides

AI on your ERP

Integrations