SAP tableObjectPA0000ModuleHCM_SUCCESSFACTORS

PA0000 table — PA0000 Actions Infotype Table

PA0000 is the Actions infotype table in SAP Personnel Administration. Each row records a single personnel action (hire, transfer, leave, termination, rehire) for one personnel number, with an action type, reason, and employment status, valid for a specific date range. It is the master gate that Payroll, Time Management and Benefits check to decide whether an employee is eligible for processing.

This page covers the Actions infotype table PA0000, the record that drives hiring, status changes and terminations in Personnel Administration. It focuses on the fields consultants actually query, the joins used to reconstruct an employment timeline, and the specific misreadings that lead to wrong headcount or payroll eligibility conclusions.

Published 15 Sept 2026· 1,079 words

What it stores

One row represents a single personnel action recorded against one employee for one validity period - hiring, organizational reassignment, leave of absence, retirement, or termination. Each action carries an action type and reason and drives the employee's active or inactive status. Every time a change action is executed on the personnel action transaction, a new row is delimited into history; the table therefore never holds a single current record only, it holds the whole action history for the personnel number, with the previous row delimited to end the day before the new start date. This audit trail lets consultants reconstruct the full employment lifecycle of an employee, every entry, re-entry and exit event, and is the reference point that Payroll, Time Management and Benefits all read to decide whether an employee is even eligible for processing in a given period.

Key fields

  • MANDT - client
  • PERNR - personnel number, key of the entire Personnel Administration data model
  • SUBTY - infotype subtype, on infotype 0000 normally blank, not the action code
  • BEGDA - start date of the validity period, the effective date of the action
  • ENDDA - end date of the validity period; the currently valid row carries 12/31/9999
  • SEQNR - sequence number, distinguishes multiple actions delimited on the same start date
  • MASSN - action type (hiring, transfer, leaving, and so on)
  • MASSG - reason for the action
  • STAT1 - employee status
  • STAT2 - employment status, the field most reports actually need for active/inactive logic
  • AEDTM - date the record was last changed
  • UNAME - user who made the change

How it joins the data model

  • PA0000-PERNR = PA0001-PERNR - the action's effective date lines up with the delimited organizational assignment record
  • PA0000-PERNR = PA0002-PERNR - joins to personal data valid for the same employee
  • PA0000-PERNR = PA0008-PERNR - a hiring or rehire action normally triggers a new basic pay record on the same date
  • PA0000-PERNR and BEGDA feed TEVEN when the action type is configured to trigger a dynamic event or downstream workflow

How to read it safely

Always restrict by client and personnel number first; PA0000 without a PERNR range or an organizational filter pulled from PA0001 is too wide to select directly against in most systems. Validity is carried by BEGDA and ENDDA, so any read needs a key date and a filter of BEGDA less than or equal to that date and ENDDA greater than or equal to it, unless the intent is explicitly to pull the whole history. SEQNR is not optional; two rows can share the same BEGDA and only the sequence number tells which action was entered later that day. Never treat ENDDA = 12/31/9999 alone as proof of active status, because a withdrawn or terminated personnel number still carries an open-ended last row, and only STAT2 confirms whether that row means active or left.

How to prove it in the data

For an employee reported as still receiving pay despite a termination entered last month, select PA0000 for that personnel number ordered by BEGDA descending and take the row with the latest start date. Check STAT2 and MASSN on that row. If STAT2 carries the inactive or withdrawn code and MASSN matches the termination action type, the action is recorded correctly in Personnel Administration and the payroll issue sits downstream, in the payroll status or control record, not in this table.

ECC vs S/4HANA

PA0000 is unchanged in table structure on S/4HANA on-premise and in Employee Central Payroll; the classic infotype framework and the personnel action transaction still write it directly. CDS-based compatibility views exist over the infotype tables for reporting purposes, but the underlying table and its keys did not move. In a pure Employee Central deployment, actions are modeled differently, as Job Information and Employment Details records, and PA0000 rows only appear in a replicated back-end, such as Employee Central Payroll, where integration replication generates the equivalent action record from the Employee Central event.

Common pitfalls

  • Reading SUBTY as the action code - it is not; the action type sits in MASSN, and SUBTY on this infotype is usually blank, so filters written against SUBTY return nothing or the wrong rows
  • Selecting only the row with ENDDA = 12/31/9999 and assuming it means active - it reflects the latest recorded action regardless of whether that action was a leaving action, so STAT2 must be checked as well
  • Treating one row per start date as guaranteed - same-day multiple actions differ only by SEQNR, and logic that ignores sequence number picks an arbitrary row
  • Assuming a PA0000 entry means every dependent infotype was updated consistently - the personnel action framework can be interrupted mid-sequence, leaving an action recorded here with no matching basic pay or organizational assignment change
  • Confusing MASSG with a portable business reason code - reason texts are configured against action type and reason per client and do not carry the same meaning across systems
  • Ignoring MANDT when comparing selects across a sandbox and a productive system
  • Assuming rehire always creates a new personnel number - depending on configuration a rehire can reuse the old number with a fresh PA0000 row, so counting distinct personnel numbers undercounts total hiring events

Whose problem this is

The Personnel Administration functional consultant owns action type and reason configuration and troubleshoots sequencing problems in the action framework. HR Operations or Employee Services owns the actual data entry and correction of wrong actions. The Payroll consultant is the escalation point when STAT2 disagrees with payroll processing. In a SuccessFactors landscape, the integration consultant owns mismatches between the Employee Central event and the replicated PA0000 record.

Related SAP objects

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

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