SAP transaction codeObjectQM03ModuleQM

QM03 — Display Quality Notification

QM03 opens a quality notification (complaint, defect record, or internal problem report) in read-only mode. It shows the same header, item, cause, task and activity structure as QM02, but every field is greyed out. Most confusion around QM03 comes from mistaking a locked, non-editable screen for missing or deleted data.

This page covers QM03, the display transaction for quality notifications in the QM module. It focuses on the structural reasons a notification looks incomplete or locked when it is actually fine, and on the tables to check when the displayed content does not match what the business user expects.

Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,137 words

Purpose

QM03 displays an existing quality notification: header data, item/defect lines, causes, tasks and activities, and any linked object reference such as equipment, material or functional location. It is functionally identical to QM02 in layout but strips out all editing rights. The one structural fact that explains most support tickets against QM03 is that the notification is a multi-level document, not a single record: the header (QMEL) can look complete while its items (QMFE), causes (QMUR) or tasks (QMMA) are empty, blank, or not yet created, because each level is maintained and saved independently and none of them are mandatory for the header to exist.

When it is used

QM03 is reached for whenever someone needs to review a notification without the risk of accidentally changing it: audits, management review, a support agent checking status before escalating, or a consultant confirming what was actually saved after a user complains a change 'disappeared'. It sits after QM01 (create) and alongside QM02 (change) in the notification lifecycle, used any time a read-only view is sufficient or the user's authorization profile only permits display. On S/4HANA, the Fiori app for managing quality notifications increasingly replaces QM03 for day-to-day review, but QM03 remains the fastest route when working directly from a notification number pulled from a report or a batch job log.

How to use it in practice

  • Call QM03 and enter the notification number directly if known.
  • If the number is not known, use the matchcode search on notification type, reporter, object (equipment, material, functional location), or creation date range.
  • On the overview screen check the header data tab for notification type, status, priority and coordinator.
  • Open the item/defect tab to see individual defect lines with catalog codes.
  • Open cause, task and activity tabs in sequence, since each is a separate sub-structure and can be empty even when others are filled.
  • Use the long text icon on header, item or task level to check for free text that does not appear in the standard fields.
  • Check the status bar (system status and user status) at header and task level separately, since they are not the same status.

Key data objects

  • QMEL - notification header: notification number, type, priority, dates, coordinator, reference object.
  • QMFE - notification items: defect lines with catalog code group and code.
  • QMUR - causes: cause records linked to items.
  • QMMA - tasks and activities: corrective actions, responsible party, planned and actual dates.
  • QMIH - object reference details for equipment, functional location or material linked to the notification.
  • JEST and JCDS - system status assignment and status change history for the notification object.
  • STXH/STXL - long text storage, read separately from the structured fields above.

How to prove it in the data

In SE16 pull QMEL filtered on QMNUM to confirm the notification exists and check its QMART (type) and creation user. Join to QMFE on QMNUM to see whether item lines exist and how many. If the header looks fine but the screen shows no defect data, QMFE will be empty for that QMNUM, confirming the item level was never populated rather than lost. For status disputes, pull JEST filtered on OBJNR built from the notification number (object type QMEL) and compare against JCDS for the status change timeline; a task showing open in QMMA while the header carries system status closed points to a mismatch between header and task status, not a data error.

ECC vs S/4HANA

QM03 still exists and behaves the same on S/4HANA; the underlying tables (QMEL, QMFE, QMUR, QMMA) are unchanged. What has shifted is the preferred access route: the Fiori app for managing quality notifications is positioned as the primary interface for business users, with QM03 retained mainly for consultants, batch processing follow-up, and cases where the classic GUI screen structure is needed to see all sub-levels at once without navigating multiple Fiori tiles.

Common pitfalls and how to diagnose them

  • Display looks empty but notification exists: the user has authorization to see the header but not the item, cause or task data due to a restricted authorization object on notification type or planning plant; confirm by checking whether QMFE and QMMA actually contain rows in SE16 versus what the user's session shows.
  • Notification appears locked with no explanation: another user has it open in change mode (QM02) and holds the enqueue lock; check active locks before assuming a technical fault.
  • Catalog codes show as blank or as raw codes with no description: the catalog profile assigned to the notification type does not match the code group language, or the code group itself was deleted after the notification was created; check QS21/QS23 catalog master data against the code stored in QMFE.
  • Header status says complete but action items are still open: notification system status and task status are independent; a header can carry a completion status while individual QMMA tasks remain open, which is a process design issue, not a technical bug.
  • Long text missing entirely from the display: text is stored in a separate text cluster (STXH/STXL) and is not always loaded by the standard list view depending on configuration; check via the long text function directly on the notification rather than assuming it was never entered.
  • Object reference (equipment, functional location) blank: QMIH was never populated because the notification was created without a reference object, common for purely internal notifications that were later expected to carry equipment history.

Whose problem this is

This is a QM functional issue in almost all cases: notification type configuration, catalog profile assignment and status profile design are functional decisions. Escalate to ABAP only if a custom user exit or BAdI is manipulating notification data on save. Escalate to Basis or security only for authorization object failures. A good handover includes the notification number, the specific tab or field the user expected to see data in, and the SE16 pull showing what is actually stored.

Related SAP objects

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

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