SAP tableObjectMPLAModulePM_EAM

MPLA table — MPLA - Maintenance Plan Header Table

MPLA is the header table for a maintenance plan in Plant Maintenance. One row represents one maintenance plan, holding its category (single cycle, strategy, or multiple counter), assigned strategy, and status object. The technical objects covered by the plan, the task list, and order type sit at the maintenance item level in MPOS, not in MPLA itself.

This page covers what a row in MPLA represents, the fields a consultant actually relies on, and how the table joins to maintenance items, technical objects, and scheduling history. The pitfalls section focuses on the recurring mistake of treating MPLA as if it holds live scheduling dates or object assignments, when those live in child and history tables.

Published 16 Sept 2026· 997 words

What it stores

MPLA stores one row per maintenance plan created in transaction IP01 and maintained in IP02/IP03. The row carries the plan's category (single-cycle plan, strategy plan, or multiple-counter plan), the maintenance strategy assigned to it when relevant, and a link into the generic status management framework so the plan can be active, inactive, or flagged for deletion. It does not carry the equipment or functional location the plan is scheduled against, the task list used, or the order type generated - those live one level down, in the maintenance item table, because a single plan can drive several items against several objects. Scheduling execution (which call dates have fired, which orders or notifications resulted) is not stored statically on MPLA either; it is recorded in the call history table as the deadline monitoring program runs.

Key fields

  • MANDT - client
  • WARPL - maintenance plan number, primary key identifying the plan
  • MPTYP - maintenance plan category: single-cycle plan, strategy plan, or multiple-counter plan, which determines what scheduling logic applies
  • WSTRA - maintenance strategy assigned to the plan, relevant for strategy plans and pointing to the strategy master data
  • OBJNR - object number used by the generic status management framework, the join point for checking whether the plan carries an active or inactive system/user status

How it joins the data model

  • MPLA-WARPL = MPOS-WARPL (plan header to its maintenance items, one to many)
  • MPOS-EQUNR = EQUI-EQUNR (item to equipment, when the item is equipment-based)
  • MPOS-TPLNR = IFLOT-TPLNR (item to functional location, when the item is location-based)
  • MPLA-WARPL = MHIS-WARPL (plan to its call/scheduling history, showing executed and pending cycles)
  • MPLA-OBJNR = IHPA-OBJNR (plan to assigned partners, such as person responsible)

How to read it safely

MPLA is a small table compared to its children, so the client field MANDT and a restriction on WARPL when the plan number is known are usually enough to keep a lookup fast. When the starting point is a technical object rather than a plan number, do not scan MPLA directly - go through MPOS restricted by EQUNR or TPLNR first, then pull the parent WARPL values into MPLA. When the question is about scheduling status or history, restrict MHIS by WARPL and a date range before joining back, since that table grows with every scheduling run and can be large even when MPLA itself is small.

How to prove it in the data

Symptom: a maintenance plan did not generate the expected order. Select MPLA where WARPL equals the plan number and check MPTYP and the status via OBJNR first - an inactive or deletion-flagged status stops scheduling outright. If the status is active, check MHIS for that WARPL to see the last executed call date and whether a call was skipped or held. Then check MPOS for that WARPL to confirm the object, order type, and task list assignment are actually maintained and not blank.

ECC vs S/4HANA

MPLA is retained in S/4HANA as the maintenance plan header table; the underlying structure has not been replaced or absorbed into a different object. Reporting layers in S/4HANA increasingly expose maintenance plan data through CDS-based views for Fiori apps, but the plan creation and change transactions still write to MPLA and its child tables directly, and consultants troubleshooting scheduling issues still work from MPLA, MPOS, and MHIS rather than from the compatibility views.

Common pitfalls

  • Treating a missing order as proof the plan is inactive without checking status through OBJNR - the more common cause is that scheduling (IP10) or the deadline monitoring background job simply has not run since the plan was changed.
  • Assuming MPLA holds the equipment or functional location for the plan - that assignment is at the MPOS item level, and a multiple-counter or strategy plan can cover more than one object through more than one item row.
  • Reading a date field on MPLA as the next scheduled call date - the authoritative record of what has fired and what is next lives in the call history, not as a static value cached on the header that a report can trust in isolation.
  • Ignoring the deletion flag path through status management - a plan marked for deletion remains physically present in MPLA until archived, so a query without a status filter will include obsolete plans in counts and reports.
  • Assuming MPTYP alone explains scheduling behavior - a strategy plan's actual cycle sequence depends on the strategy and package assigned via WSTRA, not on the category code by itself, so two strategy plans with the same MPTYP can behave completely differently.

Whose problem this is

The PM/EAM functional consultant owns plan design - category, strategy, cycle sequence - and is the first point of contact when a plan does not schedule as expected. Data volume and archiving of the call history sitting behind MPLA is typically a basis or data management concern once the table grows large, but the functional question of why a specific plan did not fire almost always lands on the maintenance planning consultant, not on basis.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tables/mplaERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.