Search Results security_method




Overview

APPS.PER_VACANCIES is a security-enabled reporting view over the Oracle E-Business Suite Human Resources (HR) vacancy entity. It projects the full column set of the PER_ALL_VACANCIES base table, exposing vacancy header information such as position, job, grade, organization, location, recruiter, manager, status, and the number of openings. The view is defined in the APPS schema and is available in both Oracle EBS 12.1.1 and 12.2.2. Its principal role is to serve as the controlled read interface through which forms, concurrent programs, OAF pages, and third-party integrations retrieve vacancy data while honoring Oracle HRMS security profiles. Because the view is defined with a WHERE clause that invokes HR_SECURITY rather than exposing rows unfiltered, it is the recommended object for any custom query, report, or interface that must respect the security model configured for the querying user.

Underlying Base Objects

Per the documented ETRM 12.2.2 metadata, PER_VACANCIES is defined over three referenced base objects:

  • PER_ALL_VACANCIES (SYNONYM) — the source of all projected columns. The view is a horizontal and vertical subset of this table; no joins or aggregations are performed.
  • HR_SECURITY (PACKAGE) — the security engine used in the view predicate. The view calls HR_SECURITY.VIEW_ALL and HR_SECURITY.SHOW_RECORD to determine which vacancy rows the current session may read.
  • HR_GENERAL (PACKAGE) — supplies business group context via HR_GENERAL.GET_XBG_PROFILE and HR_GENERAL.GET_BUSINESS_GROUP_ID, enforcing the correct business group scope for the query.

The view therefore adds no data of its own beyond what exists in PER_ALL_VACANCIES; its value lies entirely in the security and business group filtering applied at runtime.

Key Columns

The view exposes the complete column list of PER_ALL_VACANCIES. Notable columns include:

Common Use Cases and Queries

Typical uses include vacancy listings for recruiting dashboards, open-position reports, and integration extracts. Because the view enforces HR security, queries return only the vacancies visible to the current user.

SELECT vacancy_id, name, status, number_of_openings, security_method
FROM   apps.per_vacancies
WHERE  status = 'OPEN'
ORDER  BY date_from DESC;

To inspect the security method assigned to each vacancy for troubleshooting:

SELECT vacancy_id, organization_id, manager_id, security_method
FROM   apps.per_vacancies
WHERE  business_group_id = :p_business_group_id;

Joining to PER_ALL_POSITIONS and PER_ALL_PEOPLE_F provides position and manager descriptions. Consumers should query PER_VACANCIES rather than PER_ALL_VACANCIES directly whenever row-level HR security is required, since the base table bypasses the HR_SECURITY predicate and may expose records outside the user's authorized scope.