# Infor M3 OOHEAD and OOLINE Customer Order Table Columns

> Source: https://netray.co/tools/infor-m3-oohead-ooline-key-columns-reference
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Column-level reference for M3 customer order tables OOHEAD and OOLINE and the delivery tables they join to, with keys, joins and the OIS100MI fields that fill them.

## Category

infor-cloudsuite

## Erp

Infor M3

## Audience

- M3 report developer
- M3 integration developer
- Data analyst

## Tool

**Kind:** worksheet

**Mode:** reference

**Columns:**

#### Table

**Key:** table

**Type:** text

#### Column

**Key:** column

**Type:** text

#### Description

**Key:** desc

**Type:** text

#### Key

**Key:** key

**Type:** text

#### Join to

**Key:** join

**Type:** text

#### Set by

**Key:** setby

**Type:** text

#### Notes

**Key:** notes

**Type:** text

**Rows:**

**Table:** OOHEAD

**Column:** OACONO

**Desc:** Company

**Key:** PK part 1

**Join:** OOLINE.OBCONO

**Setby:** Session company

**Notes:** Always filter on company

**Table:** OOHEAD

**Column:** OAORNO

**Desc:** Customer order number

**Key:** PK part 2

**Join:** OOLINE.OBORNO

**Setby:** Number series per order type; returned by OIS100MI Confirm

**Table:** OOHEAD

**Column:** OADIVI

**Desc:** Division

**Key:** -

**Join:** CMNDIV

**Setby:** From facility

**Table:** OOHEAD

**Column:** OAORTP

**Desc:** Customer order type

**Key:** -

**Join:** OOTYPE

**Setby:** OIS100 A panel; OIS100MI AddBatchHead ORTP

**Notes:** Drives status flow, numbering and delivery status (OIS010)

**Table:** OOHEAD

**Column:** OAFACI

**Desc:** Facility

**Key:** -

**Join:** CFACIL

**Setby:** OIS100MI AddBatchHead FACI or default

**Table:** OOHEAD

**Column:** OAWHLO

**Desc:** Warehouse (header default)

**Key:** -

**Join:** MITWHL

**Setby:** OIS100MI AddBatchHead WHLO or default

**Notes:** Lines can use another warehouse

**Table:** OOHEAD

**Column:** OACUNO

**Desc:** Customer number

**Key:** -

**Join:** OCUSMA.OKCUNO

**Setby:** OIS100 A panel; OIS100MI AddBatchHead CUNO

**Table:** OOHEAD

**Column:** OAORDT

**Desc:** Order date (YYYYMMDD)

**Key:** -

**Join:** -

**Setby:** Entry date or OIS100MI AddBatchHead ORDT

**Notes:** Numeric date

**Table:** OOHEAD

**Column:** OACUOR

**Desc:** Customer's order number

**Key:** -

**Join:** -

**Setby:** OIS100MI AddBatchHead CUOR

**Notes:** Useful to detect duplicate web or EDI orders

**Table:** OOHEAD

**Column:** OARLDT

**Desc:** Requested delivery date (header)

**Key:** -

**Join:** -

**Setby:** OIS100 / OIS100MI

**Notes:** Default for lines

**Table:** OOHEAD

**Column:** OAORSL

**Desc:** Lowest status on the order

**Key:** -

**Join:** -

**Setby:** M3, from line statuses

**Notes:** Filter on it to find orders with open lines

**Table:** OOHEAD

**Column:** OAORST

**Desc:** Highest status on the order

**Key:** -

**Join:** -

**Setby:** M3, from line statuses

**Table:** OOHEAD

**Column:** OACUCD

**Desc:** Currency

**Key:** -

**Join:** CSYTAB currency

**Setby:** From customer

**Table:** OOHEAD

**Column:** OATEPY

**Desc:** Payment terms

**Key:** -

**Join:** CSYTAB

**Setby:** From customer

**Table:** OOHEAD

**Column:** OAMODL

**Desc:** Delivery method

**Key:** -

**Join:** CSYTAB

**Setby:** From customer

**Table:** OOHEAD

**Column:** OATEDL

**Desc:** Delivery terms

**Key:** -

**Join:** CSYTAB

**Setby:** From customer

**Table:** OOHEAD

**Column:** OASMCD

**Desc:** Salesperson

**Key:** -

**Join:** CMNUSR

**Setby:** From customer or entry

**Table:** OOHEAD

**Column:** OAPYNO

**Desc:** Payer

**Key:** -

**Join:** OCUSMA

**Setby:** From customer

**Notes:** Invoice goes to the payer

**Table:** OOHEAD

**Column:** OAYREF / OAOREF

**Desc:** Your reference / our reference

**Key:** -

**Join:** -

**Setby:** OIS100 entry

**Table:** OOLINE

**Column:** OBCONO

**Desc:** Company

**Key:** PK part 1

**Join:** OOHEAD.OACONO

**Setby:** -

**Table:** OOLINE

**Column:** OBORNO

**Desc:** Customer order number

**Key:** PK part 2

**Join:** OOHEAD.OAORNO

**Setby:** -

**Table:** OOLINE

**Column:** OBPONR

**Desc:** Order line number

**Key:** PK part 3

**Join:** ODLINE.UBPONR, MHDISL.URRIDL

**Setby:** Assigned on entry

**Table:** OOLINE

**Column:** OBPOSX

**Desc:** Line suffix

**Key:** PK part 4

**Join:** ODLINE.UBPOSX, MHDISL.URRIDX

**Setby:** Assigned on split

**Notes:** Include it in every line join or you double count

**Table:** OOLINE

**Column:** OBITNO

**Desc:** Item number

**Key:** -

**Join:** MITMAS.MMITNO, MITBAL

**Setby:** OIS100MI AddBatchLine ITNO

**Table:** OOLINE

**Column:** OBWHLO

**Desc:** Warehouse

**Key:** -

**Join:** MITBAL.MBWHLO

**Setby:** OIS100MI AddBatchLine WHLO or header

**Table:** OOLINE

**Column:** OBFACI

**Desc:** Facility

**Key:** -

**Join:** CFACIL

**Setby:** From warehouse

**Table:** OOLINE

**Column:** OBORQT

**Desc:** Ordered quantity, basic U/M

**Key:** -

**Join:** -

**Setby:** OIS100MI AddBatchLine ORQT

**Notes:** Compare like for like units

**Table:** OOLINE

**Column:** OBORQA

**Desc:** Ordered quantity, alternate U/M

**Key:** -

**Join:** -

**Setby:** OIS100 entry

**Table:** OOLINE

**Column:** OBALUN

**Desc:** Alternate unit of measure

**Key:** -

**Join:** MITAUN

**Setby:** OIS100 entry

**Table:** OOLINE

**Column:** OBSAPR

**Desc:** Sales price

**Key:** -

**Join:** -

**Setby:** Price list or OIS100MI AddBatchLine SAPR

**Notes:** Per sales price U/M

**Table:** OOLINE

**Column:** OBSPUN

**Desc:** Sales price unit of measure

**Key:** -

**Join:** MITAUN

**Setby:** From item

**Table:** OOLINE

**Column:** OBLNAM

**Desc:** Line amount

**Key:** -

**Join:** -

**Setby:** M3 calculation

**Notes:** Order currency

**Table:** OOLINE

**Column:** OBORST

**Desc:** Line status

**Key:** -

**Join:** -

**Setby:** M3 order flow

**Notes:** See the M3 order status reference

**Table:** OOLINE

**Column:** OBDWDT

**Desc:** Requested delivery date

**Key:** -

**Join:** -

**Setby:** OIS100MI AddBatchLine DWDT

**Table:** OOLINE

**Column:** OBCODT

**Desc:** Confirmed delivery date

**Key:** -

**Join:** -

**Setby:** M3 or entry

**Table:** OOLINE

**Column:** OBALQT

**Desc:** Allocated quantity

**Key:** -

**Join:** MITALO

**Setby:** Allocation

**Table:** OOLINE

**Column:** OBDLQT

**Desc:** Delivered quantity

**Key:** -

**Join:** -

**Setby:** Delivery reporting

**Table:** OOLINE

**Column:** OBIVQT

**Desc:** Invoiced quantity

**Key:** -

**Join:** -

**Setby:** Invoicing

**Table:** OOLINE

**Column:** OBRNQT

**Desc:** Remaining quantity

**Key:** -

**Join:** -

**Setby:** M3

**Notes:** Open quantity for backlog reports

**Table:** OOLINE

**Column:** OBRORC / OBRORN / OBRORL

**Desc:** Reference order category, number, line

**Key:** -

**Join:** MPLINE, MWOHED

**Setby:** Supply creation

**Notes:** Links to the PO or MO created for the line

**Table:** ODHEAD

**Column:** UADLIX

**Desc:** Delivery number

**Key:** Key part

**Join:** MHDISH.OQDLIX

**Setby:** Delivery creation

**Notes:** One order can have several deliveries

**Table:** ODHEAD

**Column:** UAIVNO

**Desc:** Invoice number

**Key:** -

**Join:** Invoice tables

**Setby:** Invoicing

**Table:** ODLINE

**Column:** UBORNO / UBPONR / UBPOSX / UBDLIX

**Desc:** Order, line, suffix, delivery

**Key:** Key parts

**Join:** OOLINE and ODHEAD

**Setby:** Delivery reporting

**Notes:** Delivered and invoiced lines per delivery

**Table:** MHDISH

**Column:** OQDLIX

**Desc:** Delivery number

**Key:** PK part

**Join:** MHDISL.URDLIX

**Setby:** Delivery creation

**Notes:** Outbound and inbound deliveries

**Table:** MHDISH

**Column:** OQINOU

**Desc:** Direction (1 outbound)

**Key:** -

**Join:** -

**Setby:** M3

**Notes:** Filter on outbound for CO

**Table:** MHDISH

**Column:** OQRORC / OQRIDN

**Desc:** Reference order category / order number

**Key:** -

**Join:** OOHEAD.OAORNO when category is customer order

**Setby:** Delivery creation

**Table:** MHDISL

**Column:** URDLIX / URRIDN / URRIDL / URRIDX

**Desc:** Delivery, order number, line, suffix

**Key:** Key parts

**Join:** OOLINE.OBORNO / OBPONR / OBPOSX

**Setby:** Delivery creation

**Notes:** The bridge from a delivery to order lines

**Table:** MHDISL

**Column:** URITNO / URTRQT

**Desc:** Item / transaction quantity

**Key:** -

**Join:** MITMAS

**Setby:** Delivery creation

**Notes:** 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.

## Content

**Intro:** 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.

**Sections:**

#### How to use it

**Body:** 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

**Body:** 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.

**Bullets:**

- 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

**Body:** 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

**Body:** 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.

**Cta:** 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.

**Faq:**

#### What are the main M3 customer order tables?

**Answer:** 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?

**Answer:** 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?

**Answer:** 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?

**Answer:** 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.

## Search terms

infor m3 table structure, infor m3 table names, infor m3 table, m3 ooline columns, m3 oohead table, m3 mhdish mhdisl join, m3 customer order tables

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
