SAP tableObjectQMURModuleQM

QMUR table — Notification Item Causes Table

QMUR stores the causes recorded against an individual item (defect) of a notification. Each row is one cause entry, linked to a specific notification number and item number, carrying the cause code and cause code group from the QM catalog. It is a generic notification substructure, so it is also used by PM and CS notifications, not only quality notifications.

QMUR holds the cause records attached to notification items, one row per cause entered against a defect line. The page covers how it keys to QMEL and QMFE, why it must never be queried on notification number alone, and the config-driven traps around catalog profiles and cause mandatoriness.

Published 16 Sept 2026· 976 words

What it stores

One row in QMUR represents a single cause recorded against a single item of a notification. When a user works a quality notification and, for a given defect item, opens the causes tab and adds an entry from the cause catalog, that entry becomes a row here. A notification item can have zero, one, or several causes, so QMUR sits one level below QMFE (the item table) in the notification hierarchy, in the same way QMFE sits below QMEL (the notification header). Because the underlying notification data model in SAP is shared across quality notifications, plant maintenance notifications and customer service notifications, QMUR is not exclusively a QM table in the physical sense, even though QM is where it is used most heavily for defect root-cause capture and catalog-based reporting.

Key fields

  • MANDT - client
  • QMNUM - notification number, links up to the notification header
  • FENUM - item number within the notification, links up to the defect item
  • URNUM - cause number, sequential identifier of the cause entry within the item
  • URCOD - cause code, the catalog code entered for this cause
  • URGRP - code group for the cause catalog, together with URCOD identifies the catalog entry
  • ERNAM - user who created the cause entry
  • ERDAT - date the cause entry was created

How it joins the data model

  • QMUR-QMNUM = QMEL-QMNUM
  • QMUR-QMNUM = QMFE-QMNUM and QMUR-FENUM = QMFE-FENUM
  • QMUR-URGRP = QPGR-CODEGRUPPE and QMUR-URCOD = QPCD-CODE (via the catalog and code group)
  • QMUR-QMNUM/FENUM = QMMA-QMNUM/FENUM where activities are also recorded per item

How to read it safely

MANDT is the client field, restrict on it as always. Never select QMUR by QMNUM alone expecting only quality notification causes back; the notification number range is shared across notification types, so filter through QMEL first on notification type if the report needs to stay QM-scoped. Always carry FENUM in the join to QMFE, otherwise every cause for every item of a multi-item notification returns against every item, producing a cartesian result that looks like duplicated causes. URNUM is only unique within a QMNUM/FENUM combination, not across the table, so it cannot be used as a standalone key in any join.

How to prove it in the data

Symptom: a defect item is closed but the report claims no cause was ever documented. Select QMUR where MANDT equals the current client, QMNUM equals the notification number, and FENUM equals the specific item number. If no rows come back, no cause was recorded against that item, confirmed. Cross-check against QMFE for the same QMNUM/FENUM to make sure the item itself exists and was not renumbered, since a mismatched FENUM after item deletion and re-entry is a frequent false negative.

ECC vs S/4HANA

QMUR is retained in S/4HANA with the same key structure and role as in ECC; the underlying notification data model was not restructured by the S/4HANA conversion. Standard transactions for creating and processing notifications continue to write to it in the same way. Reporting layers built on CDS views may expose cause data through a compatibility or analytical view rather than direct table access, but the physical table and its relationship to QMEL and QMFE is unchanged.

Common pitfalls

  • Treating an empty QMUR result for a notification as proof causes were never analyzed. If the catalog profile does not mark cause entry as mandatory, the notification can be technically completed with zero cause rows, that is a process gap, not a data error.
  • Joining QMUR to QMFE on QMNUM only and dropping FENUM. This multiplies rows across every item in a multi-item notification and inflates cause counts in any aggregate report.
  • Assuming URNUM is a global sequence. It resets and is only meaningful scoped to one QMNUM/FENUM pair; using it to sort across notifications produces meaningless ordering.
  • Assuming URCOD is self-explanatory text. It is a code, the descriptive text lives in the catalog master keyed by URGRP and URCOD in the correct language, not in QMUR itself.
  • Assuming QMUR only contains quality notification data because the table lives in the QM functional area. The same notification framework is used by plant maintenance and customer service notifications, so an unfiltered extract by number range can pull in non-QM causes.
  • Assuming a deleted or corrected cause entry disappears cleanly. Depending on how the correction was made in the notification, an old row can remain as a completed or reversed entry rather than being physically removed, which throws off simple row-count checks.

Whose problem this is

Any question about whether a cause was recorded, why a cause catalog entry is missing, or why a cause code group is not offered on a notification type belongs to the QM functional consultant who owns the catalog and notification type configuration, not to the ABAP developer running the query. Cross-module notification sharing questions with PM or CS teams should be raised jointly since the table is common ground.

Related SAP objects

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

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