Infor M3 Inventory and Allocation Tables: MITBAL, MITLOC, MITALO, MITTRA
This reference covers the M3 13.x tables behind stock and allocation: MITBAL for item and warehouse balances, MITLOC for balance identities, MITALO for allocations, MITPLO for the material plan and MITTRA for stock transactions, with lot, warehouse and location masters. It lists the key columns, joins and maintaining programs.
| Table | Column | Description | Key | Join to | Maintained by program | Notes |
|---|---|---|---|---|---|---|
MITMAS | MMITNO | Item number (item master) | PK with MMCONO | All tables below on ITNO | MMS001 | Link only; use for item name, type, basic U/M |
MITWHL | MWWHLO | Warehouse | PK with MWCONO | MITBAL.MBWHLO | MMS005 | |
MITWHL | MWWHNM | Warehouse name | - | - | MMS005 | |
MITWHL | MWFACI | Facility of the warehouse | - | CFACIL | MMS005 | |
MITBAL | MBWHLO / MBITNO | Warehouse / item | PK with MBCONO | MITLOC, MITALO, MITPLO on WHLO and ITNO | MMS002 | One row per item and warehouse |
MITBAL | MBSTQT | On-hand balance | - | - | Updated by transactions | Sum of the warehouse; detail is in MITLOC |
MITBAL | MBALQT | Allocated quantity | - | - | Updated by allocation | Should equal the sum of MLALQT for the item and warehouse |
MITBAL | MBREOP | Reorder point | - | - | MMS002 | |
MITBAL | MBSSQT | Safety stock | - | - | MMS002 | |
MITBAL | MBWHSL | Default location | - | MITPCE.MSWHSL | MMS002 | |
MITBAL | MBSTAT | Item / warehouse status | - | - | MMS002 | |
MITLOC | MLWHLO / MLITNO | Warehouse / item | PK part | MITBAL | MMS060 | One row per balance identity |
MITLOC | MLWHSL | Location | PK part | MITPCE.MSWHSL | MMS060 | |
MITLOC | MLBANO | Lot number | PK part | MILOMA.LMBANO | MMS060 | Blank for items without lot control |
MITLOC | MLCAMU | Container | PK part | - | MMS060 | |
MITLOC | MLREPN | Receiving number | PK part | MITTRA | MMS060 | |
MITLOC | MLSTQT | On-hand balance for the balance ID | - | - | Updated by transactions | |
MITLOC | MLALQT | Allocated quantity for the balance ID | - | - | Updated by allocation | Available on a balance ID = MLSTQT - MLALQT if its status allows allocation |
MITLOC | MLSTAS | Balance ID status | - | - | MMS060 | Only approved stock is normally allocatable |
MITALO | MQWHLO / MQITNO | Warehouse / item | Key part | MITBAL | Allocation | One row per allocation of a balance ID to an order line |
MITALO | MQTTYP | Transaction type of the demand | Key part | - | Allocation | Same numbering as MITTRA, for example 31 for customer order |
MITALO | MQRIDN / MQRIDL | Order number / order line | Key part | OOLINE.OBORNO / OBPONR when MQTTYP is 31 | Allocation | |
MITALO | MQWHSL / MQBANO | Allocated location / lot | - | MITLOC | Allocation | Ties the allocation to a balance ID |
MITALO | MQALQT | Allocated quantity | - | - | Allocation | |
MITPLO | MOWHLO / MOITNO | Warehouse / item | Key part | MITBAL | MMS080 Material Plan | Planned supply and demand lines |
MITPLO | MOPLDT | Planning date | Key part | - | MMS080 | |
MITPLO | MOORCA | Order category | - | - | MMS080 | Tells which order type created the line |
MITPLO | MORIDN / MORIDL | Order number / line | - | Order tables | MMS080 | |
MITPLO | MOTRQT | Transaction quantity | - | - | MMS080 | Positive supply, negative demand |
MITTRA | MTWHLO / MTITNO | Warehouse / item | Key part | MITBAL | Every stock transaction | Stock transaction history |
MITTRA | MTTRDT | Transaction date (YYYYMMDD) | Key part | - | Every stock transaction | Filter by date range; the table is large |
MITTRA | MTTTYP | Transaction type | - | - | Every stock transaction | For example 10 MO receipt, 11 MO issue, 25 PO receipt, 31 CO issue; read the full list in the field help for your release |
MITTRA | MTTRQT | Transaction quantity | - | - | Every stock transaction | Signed: issues negative, receipts positive |
MITTRA | MTRIDN / MTRIDL | Reference order number / line | - | OOLINE, MPLINE, MWOHED by type | Every stock transaction | |
MITTRA | MTWHSL / MTBANO | Location / lot | - | MITLOC | Every stock transaction | |
MILOMA | LMITNO / LMBANO | Item / lot number | PK with LMCONO | MITLOC.MLITNO / MLBANO | MMS235 | Lot master, shared across warehouses |
MILOMA | LMEXPI | Expiration date | - | - | MMS235 | Used in FEFO allocation |
MITPCE | MSWHLO / MSWHSL | Warehouse / stock location | PK with MSCONO | MITLOC.MLWHSL | MMS010 | |
MITPCE | MSSLTP | Stock zone | - | - | MMS010 |
Column names follow the M3 convention of a two-letter table prefix plus the field name (MB for MITBAL, ML for MITLOC, MQ for MITALO, MO for MITPLO, MT for MITTRA). Confirm each column and the transaction type list in M3 Metadata Publisher (MDP) and field help for your 13.x release.
Get your M3 stock query reviewed
Send us your availability or allocation query and we will check it against how MITBAL, MITLOC and MITALO relate in your release.
Optional. The tool and every export work without this. No spam.
How to use it
Search by table, column or concept (allocated, lot, location). Read the tables top down: MITBAL gives one row per item and warehouse with totals, MITLOC breaks that into balance identities (location, lot, container, receiving number), MITALO shows which balance IDs are allocated to which order lines, MITPLO is the time-phased material plan, and MITTRA is the history of every movement. The Notes column explains how quantities relate, which is where most report errors come from.
Where this lives in M3
MMS002 maintains item and warehouse data (MITBAL), MMS060 shows balance identities (MITLOC), MMS080 is the material plan (MITPLO), MMS010 stock locations (MITPCE), MMS005 warehouses (MITWHL) and MMS235 lots (MILOMA). Allocation, automatic or manual, writes MITALO. Stock transactions from receipts, issues, counts and moves land in MITTRA; transactions from a WMS arrive through MHS850MI or MMS850MI and land in MITTRA once processed.
- MBSTQT is the sum of MLSTQT for the item and warehouse
- MBALQT matches the sum of MLALQT and of MQALQT
- MITALO links allocations to order lines via TTYP, RIDN, RIDL
- MITTRA grows fast; always filter on date
Worked example: why is stock not available?
A planner sees 500 on hand for an item in warehouse 100 but cannot allocate. MITBAL shows MBSTQT 500 and MBALQT 300. MITLOC shows three balance IDs: one with 300 fully allocated (MLALQT 300), and two with 100 each where MLSTAS is not approved, so they cannot be allocated. MITALO rows with MQTTYP 31 show which customer order lines hold the 300. The fix is quality approval of the two lots, not a stock adjustment.
Version differences and gotchas
Do not read available stock from MITBAL alone; balance ID status, lot expiry and allocation rules decide what is allocatable. Transaction quantities in MITTRA are signed, so sum them as they are. Lot masters (MILOMA) are not per warehouse. Some columns are added between 13.x releases, so confirm in MDP. For writes, use MMS850MI, MHS850MI or the programs, never direct SQL.
Frequently Asked Questions
What is the M3 allocation table?
MITALO holds allocations: each row links a balance identity (warehouse, location, lot) to a demand line identified by transaction type, order number and line, with the allocated quantity. MITBAL.MBALQT and MITLOC.MLALQT hold the totals.
What is the difference between MITBAL and MITLOC?
MITBAL has one row per item and warehouse with total on-hand and allocated quantities and planning parameters. MITLOC has one row per balance identity, meaning location, lot, container and receiving number, with the quantities at that level. Totals in MITBAL equal the sum of MITLOC rows.
Where are stock transactions stored in M3?
MITTRA stores every stock transaction with warehouse, item, date, transaction type, signed quantity and the reference order. Transaction types use M3 numbering, for example 31 for customer order issues and 25 for purchase order receipts.
How do I get a list of M3 database tables?
M3 Metadata Publisher (MDP) lists every table, column and index for your release. For an overview of the main tables by area see the M3 core database tables reference; this page goes to column level for inventory and allocation.
If you want planners to ask M3 why stock is not available in plain English on your own servers, we can build that on these tables with read-only access.
Related Tools
Infor M3 Core Database Tables Reference
Look up the main M3 tables, their two-letter column prefix and the key fields you join on. Searchable and exportable.
Infor M3 & CloudSuiteInfor M3 OOHEAD and OOLINE Customer Order Columns Reference
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.
Infor M3 & CloudSuiteInfor M3 MI API Program List Reference (MMS200MI, OIS100MI, PPS200MI...)
The M3 MI programs integrations use most, grouped by area, with the M3 program each mirrors, confirmed transaction names, main tables and how to list the rest in MRS001 and MRS002.
Infor M3 & CloudSuiteInfor M3 Facility and Warehouse Structure Worksheet
Design the M3 hierarchy of division, facility, warehouse and locations on one sheet, with storage capacity totals.
More Infor M3 & CloudSuite tools
See all- Infor M3 Program Reference (MMS001, OIS100, PMS100)
- Infor M3 MI API Transaction Call Generator
- Infor M3 Customer Order Status Tracking Worksheet
- Infor M3 Item Master Upload Worksheet
- Infor M3 MEC Mapping Design Template
- Infor M3 H5 Script Review Checklist
- Infor M3 Upgrade Test Checklist
- Infor M3 Fit-Gap Analysis Worksheet
- Infor M3 Interface and Integration Inventory Worksheet
Keep exploring
Free tools
- Infor M3 OOHEAD and OOLINE Customer Order Columns ReferenceColumn-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.
- Infor M3 Core Database Tables ReferenceLook up the main M3 tables, their two-letter column prefix and the key fields you join on. Searchable and exportable.
- Infor M3 SQL Query GeneratorFill in company, warehouse and filters to get ready-to-adapt SQL against MITMAS, MITBAL, OOHEAD, OOLINE and MPLINE.
ERP fixes and how-tos
- Infor M3 Allocation Table: MITALO Reference and QueriesWhere M3 stores allocations: the MITALO allocation table, how it relates to item balance, query patterns to list allocations and why quantities disagree.
- Infor M3 negative on-hand balance: how to find it and fix itHow to find negative on-hand in Infor M3, reconcile MITBAL against MITLOC balance IDs, trace the transactions that caused it and correct it safely.
- Infor M3 manufacturing order material not allocated or shortWhy Infor M3 manufacturing order components show as not allocated or short, how to read MWOMAT and MITALO, and how to fix it before release.
Guides
- Infor M3 Warehouse Management: Setup and Daily FlowHow the Infor M3 warehouse management system works: warehouses, locations, balance IDs, picking, replenishment and cycle counts. A practical setup guide.
- Infor M3 Distribution Management and Order Fulfillment SetupConfigure Infor M3 distribution management with order processing, warehouse allocation, shipping integration, and customer delivery scheduling best practices.
AI on your ERP
- Infor M3 Supply Chain Planning With AI That Explains the MRP OutputAI for Infor M3 supply chain planning: explain MRP action messages, review planned orders, and trace shortages through MITBAL and MITMAS on private infrastructure.
- Infor M3 Customer Order Management With AI for Status, Allocation and Promise DatesAI for Infor M3 customer order management: answer order status, allocation and delivery date questions from OOHEAD and OOLINE data without exposing it publicly.