Search Results per_position_list
Overview
PER_POSITION_LIST is an Oracle E-Business Suite table owned by the HR schema and delivered under the PER (Human Resources) product family. Its documented purpose is to hold the list of positions that a secure user is permitted to access. In practice, the table functions as a materialized security access list: rather than evaluating position security dynamically at query time, Oracle HRMS resolves each user's position-level security profile into discrete rows within PER_POSITION_LIST, and downstream forms, concurrent programs, and reporting queries consult this table to determine which positions a given user may see or transact against.
The table is present and valid in both EBS 12.1.1 and 12.2.2. Its documented physical schema comprises seven columns in the HR schema. Under a heuristic Data Vault classification derived from its foreign key structure, PER_POSITION_LIST is best modeled as a link table. It resolves a many-to-many association between a security profile and the positions granted under it (and, in the extended unique key, the user to whom that grant applies), which is the classic role of a link entity rather than a hub or satellite.
Key Information Stored
The table's principal business content is captured in a small set of columns:
- SECURITY_PROFILE_ID — Identifies the security profile (from PER_SECURITY_PROFILES) under which the position grant is defined. This column participates in both the primary key and the business unique key.
- POSITION_ID — Identifies the specific position (from PER_ALL_POSITIONS) made accessible. It likewise participates in the primary key and unique key.
- USER_ID — The user for whom the position access list is resolved. It appears only in the UNIQUE index PER_POSITION_LIST_UK1, reflecting the fact that effective access is ultimately evaluated per user.
- REQUEST_ID, PROGRAM_APPLICATION_ID, PROGRAM_ID, PROGRAM_UPDATE_DATE — Standard concurrent program audit columns recording which request and program last inserted or refreshed the row and when.
The documented surrogate primary key, PER_POSITION_LIST_PK, is defined on (SECURITY_PROFILE_ID, POSITION_ID). The documented business-key candidate, PER_POSITION_LIST_UK1, is the wider composite (SECURITY_PROFILE_ID, POSITION_ID, USER_ID), which uniquely identifies a user's access to a given position under a given profile.
Common Use Cases and Queries
The table is most commonly queried to audit or diagnose position-level security, and to validate why a user can or cannot see a particular position in an HRMS form or report.
A typical access check joins the list back to the position definition:
SELECT ppl.position_id, pap.name FROM per_position_list ppl, per_all_positions pap WHERE ppl.position_id = pap.position_id AND ppl.user_id = :user_id;- Comparing a user's resolved list against the profile definition to detect missing or stale rows after a security refresh.
- Reporting the total number of positions exposed per security profile for segregation-of-duties reviews.
- Reconciling rows by PROGRAM_UPDATE_DATE to confirm when a security refresh concurrent program last ran for a population of users.
Because effective access is stored per user, the USER_ID predicate should generally be supplied to keep queries selective and to avoid returning the full cross-product of profiles and positions.
Related Objects
The most significant related objects, based on the documented foreign keys and key structure, are:
- PER_SECURITY_PROFILES — Parent of SECURITY_PROFILE_ID; defines the security profile that grants the positions.
- PER_ALL_POSITIONS — Parent of POSITION_ID; supplies the position definition and descriptive attributes.
- PER_POSITION_LIST_PK / PER_POSITION_LIST_UK1 — The primary and unique indexes enforcing row identity and per-user uniqueness.
- FND_USER — References USER_ID for the effective user identity (logical, not a documented FK).
- FND_CONCURRENT_REQUESTS / FND_CONCURRENT_PROGRAMS — Correlate the REQUEST_ID, PROGRAM_ID, and PROGRAM_APPLICATION_ID audit columns to the refresh run.
-
Table: PER_POSITION_LIST
12.2.2
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_POSITION_LIST, object_name:PER_POSITION_LIST, status:VALID, product: PER - Human Resources , description: List of positions that a secure user can access. , implementation_dba_data: HR.PER_POSITION_LIST ,
-
Table: PER_POSITION_LIST
12.1.1
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_POSITION_LIST, object_name:PER_POSITION_LIST, status:VALID, product: PER - Human Resources , description: List of positions that a secure user can access. , implementation_dba_data: HR.PER_POSITION_LIST ,
-
TABLE: HR.PER_POSITION_LIST
12.1.1
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_POSITION_LIST, object_name:PER_POSITION_LIST, status:VALID,
-
VIEW: HR.PER_POSITION_LIST#
12.2.2
owner:HR, object_type:VIEW, object_name:PER_POSITION_LIST#, status:VALID,
-
TABLE: HR.PER_POSITION_LIST
12.2.2
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_POSITION_LIST, object_name:PER_POSITION_LIST, status:VALID,
-
VIEW: APPS.HRBV_POSITION_LIST_V
12.2.2
-
VIEW: HR.PER_POSITION_LIST#
12.2.2
-
VIEW: APPS.HRBV_POSITION_LIST_V
12.1.1
-
SYNONYM: PUBLIC.PER_POSITION_LIST
12.1.1
owner:PUBLIC, object_type:SYNONYM, object_name:PER_POSITION_LIST, status:VALID,
-
VIEW: APPS.HRBV_POSITION_LIST_V
12.1.1
owner:APPS, object_type:VIEW, object_name:HRBV_POSITION_LIST_V, status:VALID,
-
SYNONYM: APPS.PER_POSITION_LIST
12.1.1
owner:APPS, object_type:SYNONYM, object_name:PER_POSITION_LIST, status:VALID,
-
SYNONYM: APPS.PER_POSITION_LIST
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PER_POSITION_LIST, status:VALID,
-
VIEW: APPS.HRBV_POSITION_LIST_V
12.2.2
owner:APPS, object_type:VIEW, object_name:HRBV_POSITION_LIST_V, status:VALID,
-
Table: PER_SECURITY_PROFILES
12.2.2
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_SECURITY_PROFILES, object_name:PER_SECURITY_PROFILES, status:VALID, product: PER - Human Resources , description: Security profile definitions to restrict user access to specific HRMS records. , implementation_dba_data: HR.PER_SECURITY_PROFILES ,
-
PACKAGE BODY: APPS.HR_SECURITY
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:HR_SECURITY, status:VALID,
-
Table: PER_SECURITY_PROFILES
12.1.1
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_SECURITY_PROFILES, object_name:PER_SECURITY_PROFILES, status:VALID, product: PER - Human Resources , description: Security profile definitions to restrict user access to specific HRMS records. , implementation_dba_data: HR.PER_SECURITY_PROFILES ,
-
PACKAGE BODY: APPS.PER_DELETE_UNWANTED_SEC_PROF
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PER_DELETE_UNWANTED_SEC_PROF, status:VALID,
-
PACKAGE BODY: APPS.HR_SECURITY
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:HR_SECURITY, status:VALID,
-
PACKAGE BODY: APPS.HR_SECURITY_INTERNAL
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:HR_SECURITY_INTERNAL, status:VALID,
-
PACKAGE BODY: APPS.PAY_PYUCSLIS_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_PYUCSLIS_PKG, status:VALID,
-
PACKAGE BODY: APPS.PAY_PYUCSLIS_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_PYUCSLIS_PKG, status:VALID,
-
PACKAGE BODY: APPS.HR_SECURITY_INTERNAL
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:HR_SECURITY_INTERNAL, status:VALID,
-
Table: PER_ALL_POSITIONS
12.2.2
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_ALL_POSITIONS, object_name:PER_ALL_POSITIONS, status:VALID, product: PER - Human Resources , description: Dual-maintained position definition information. , implementation_dba_data: HR.PER_ALL_POSITIONS ,
-
Table: PER_ALL_POSITIONS
12.1.1
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_ALL_POSITIONS, object_name:PER_ALL_POSITIONS, status:VALID, product: PER - Human Resources , description: Dual-maintained position definition information. , implementation_dba_data: HR.PER_ALL_POSITIONS ,
-
APPS.HR_SECURITY_INTERNAL SQL Statements
12.1.1
-
APPS.HR_SECURITY_INTERNAL SQL Statements
12.2.2
-
PACKAGE BODY: APPS.HR_DELETE
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:HR_DELETE, status:VALID,
-
PACKAGE BODY: APPS.HR_DELETE
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:HR_DELETE, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.2.2 DBA Data
12.2.2
-
TABLE: HR.PER_SECURITY_PROFILES
12.2.2
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_SECURITY_PROFILES, object_name:PER_SECURITY_PROFILES, status:VALID,
-
TABLE: HR.PER_SECURITY_PROFILES
12.1.1
owner:HR, object_type:TABLE, fnd_design_data:PER.PER_SECURITY_PROFILES, object_name:PER_SECURITY_PROFILES, status:VALID,
-
APPS.HR_SECURITY SQL Statements
12.1.1
-
APPS.HR_SECURITY SQL Statements
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.1.1 FND Design Data
12.1.1
-
12.2.2 FND Design Data
12.2.2
-
APPS.PAY_PYUCSLIS_PKG SQL Statements
12.2.2
-
12.1.1 DBA Data
12.1.1
-
APPS.PER_DELETE_UNWANTED_SEC_PROF SQL Statements
12.2.2
-
APPS.PAY_PYUCSLIS_PKG SQL Statements
12.1.1
-
APPS.HR_PSF_DEL SQL Statements
12.2.2
-
APPS.HR_PSF_DEL SQL Statements
12.1.1
-
APPS.PER_DELETE_UNWANTED_SEC_PROF dependencies on PER_POSITION_LIST
12.2.2
-
APPS.HR_SECURITY_INTERNAL dependencies on PER_POSITION_LIST
12.2.2
-
APPS.HR_DELETE dependencies on PER_POSITION_LIST
12.2.2
-
APPS.HR_SECURITY dependencies on PER_POSITION_LIST
12.1.1
-
APPS.HR_DELETE dependencies on PER_POSITION_LIST
12.1.1