Search Results reverse_terminate_employee




Overview

APPS.HR_EX_EMPLOYEE_BK4 is a generated PL/SQL package body in Oracle E-Business Suite 12.1.1 and 12.2.2 that participates in the Oracle HRMS API Hook architecture for employee termination reversal. The package name follows the HRMS API Hook Pre-processor convention, where the _BK suffix designates a business logic hook layer that is generated automatically from the corresponding business event and application programming interface definitions. The header comment identifies the source as peexeapi.pkb, confirming that the package is regenerated as part of the HRMS API generation cycle and should therefore never be modified manually; all changes are overwritten on the next generation run.

The business function performed by this package is to provide the pre-processing and hook entry points invoked when an employee termination is reversed through the standard HRMS API. In EBS, reverse termination is a corrected or delayed transaction used when a termination has been entered in error, when rehire processing requires the original termination to be undone, or when a person's assignment must be restored to active status. The _BK4 package forms part of a numbered set of hook bodies (_BK1 through _BK4) that interleave customer extensions, application business logic, and legislation-specific validation.

Key Procedures and Functions

Two procedures are documented in the package body metadata.

  • REVERSE_TERMINATE_EMPLOYEE_A — The "A" (application or after) hook procedure. It records the current commit unit via hr_api.return_commit_unit, conditionally calls the application-level hook body HR_EX_EMPLOYEE_BE4.REVERSE_TERMINATE_EMPLOYEE_A when hr_api.call_app_hooks returns true, ends the current multi-message validation set, and then calls hr_api.validate_commit_unit with the mode indicator 'AP'. This procedure is the vehicle through which customer application hooks registered against reverse termination are executed.
  • REVERSE_TERMINATE_EMPLOYEE_B — The "B" (before or business/legislation) hook procedure. It captures the commit unit, and when hr_api.call_leg_hooks returns true it resolves the legislation code for the person through per_per_bus.return_legislation_code. For United Kingdom legislation (GB) it delegates to PER_GB_REVERSE_TERM_RULES.VALIDATE_REVERSE_TERMINATION, applying country-specific statutory validation rules for reversing a termination. It concludes with hr_api.validate_commit_unit using the mode indicator 'BP'.

Tables Accessed

The ETRM metadata does not list any base tables directly referenced through APPS synonyms within this hook body. This is consistent with the generated hook pattern: the package primarily orchestrates calls into other packages rather than issuing DML. The underlying data manipulation against PER_ALL_PEOPLE_F, PER_ALL_ASSIGNMENTS_F, and related date-tracked HR tables is performed by the business event package (HR_EX_EMPLOYEE_BE4), the core API, and legislation routines, while this hook body limits itself to control flow, legislation resolution, and validation-set and commit-unit bookkeeping.

Usage Notes

This package is not intended to be called directly by custom code. It is invoked automatically by the HRMS API framework when the reverse termination business process executes. The framework determines, through hr_api.call_app_hooks and hr_api.call_leg_hooks, whether extension hooks and legislation hooks are active for the session, and it sequences the numbered hook bodies accordingly. Typical entry points into the overall flow include the People form (reverse termination or correction of a termination), the Rehire and Termination concurrent processes, and any custom or third-party code that calls the corresponding HRMS business process API for reverse termination rather than the _BK4 package itself. The parameter set surfaces P_PERSON_ID, P_ACTUAL_TERMINATION_DATE, and P_CLEAR_DETAILS, which is the same signature propagated to downstream hook packages. The package body is referenced by at least one other package in the EBS data model, confirming its role as a link in the generated hook chain rather than a standalone utility.