Search Results apply_for_internal_vacancy




Overview

APPS.HR_EMPLOYEE_SWI is a server-side self-service wrapper (SWI) package within the Oracle E-Business Suite Human Resources (HR) module. Its primary purpose is to expose a controlled, self-service facing interface over the core HR Employee application programming interface, allowing web-based and self-service pages to invoke employee lifecycle operations without directly calling the underlying business logic in HR_EMPLOYEE_API. The package is declared with AUTHID CURRENT_USER, meaning its procedures execute with the privileges of the invoking schema rather than the definer, which is characteristic of EBS API wrappers that rely on the APPS schema synonyms and standard HR security model.

The header record for the specification dates to 2012 and carries the "Internal Development use only" access status, indicating the package is not intended as a public integration point. In Oracle EBS 12.1.1 and 12.2.2, such SWI packages sit between the OAF (Oracle Application Framework) or JSP-based self-service screens and the underlying dated APIs, translating UI-supplied parameters into the forms understood by the business APIs and returning structured status/version information.

Key Procedures and Functions

The documented specification exposes six procedures. The most prominent, and the one matching the search term, is APPLY_FOR_INTERNAL_VACANCY.

  • APPLY_FOR_INTERNAL_VACANCY — Self-service wrapper to hr_employee_api.apply_for_internal_vacancy. It creates an internal job application for an existing employee against a vacancy, deriving applicant number, object version numbers, assignment details, and effective dates. It returns a return status plus out parameters including application ID, assignment ID, assignment sequence, and object version numbers used for optimistic locking.
  • CREATE_EMPLOYEE — Wrapper supporting the creation of a new employee record from self-service flows, delegating the core insert logic to the employee API.
  • HIRE_INTO_JOB — Wrapper enabling hiring of a person into a defined job, invoking the corresponding hire business logic.
  • RE_HIRE_EX_EMPLOYEE — Wrapper to reinstate a previously terminated or ex-employee, re-establishing the person and assignment records.
  • CONVERT_TO_MANUAL_GEN_METHOD — Wrapper supporting conversion of an assignment's generation method to manual, affecting how the assignment is maintained thereafter.

All procedures follow the standard HR API pattern: a p_validate flag to run in validation-only mode, an effective date, output object version numbers, and a p_return_status that signals success or failure. This uniformity enforces consistent error handling and concurrency control across self-service transactions.

Tables Accessed

The documented tables referenced through APPS synonyms include:

  • PER_ALL_PEOPLE_F — The dated people table, which stores the person-level record (start/end dated) for the employee or applicant. It is read and written during employee creation, hiring, re-hire, and vacancy application to maintain effective-dated person rows.
  • HR_ORGANIZATION_INFORMATION — Stores organization-level descriptive and classification information, used to validate or derive organization context for the operations performed.

Because the wrapper delegates to hr_employee_api, it ultimately touches the assignment, application, and vacancy tables through that API, though only the two tables above are documented as direct references for this package.

Usage Notes

HR_EMPLOYEE_SWI is typically invoked indirectly from Oracle self-service components — OAF pages, the Employee Self-Service and Manager Self-Service responsibilities, or iRecruitment flows — rather than being called directly by end users. The APPLY_FOR_INTERNAL_VACANCY procedure, for example, backs internal vacancy application screens where an existing employee applies for a posted internal opening.

Because the specification is marked "Internal Development use only," custom code should treat this package as non-public and prefer the documented public API (HR_EMPLOYEE_API) for integrations. The package is referenced by zero other documented packages, reinforcing its role as a leaf-level UI adapter. Developers calling it must supply a valid effective date and respect returned object version numbers to avoid concurrency conflicts.