Search Results create_ghr_errorlog




Overview

APPS.GHR_PROC_FUT_MT is a PL/SQL package body belonging to the Oracle E-Business Suite (EBS) Human Resources/Advanced Benefits product family, delivered under the APPS schema. Its header designation, ghprocmt.pkb, and its classification as an "OTHER" API in ETRM indicate that it is an internally consumed, multi-threaded processing engine rather than a public application programming interface. The package coordinates the batch execution of future-dated personnel actions (nature-of-action records) captured in the GHR (Government/HR) schema objects.

The central purpose of the package is described in its own inline comments: the EXECUTE_MT procedure "is called from concurrent program. This procedure will determine the batch size and call sub programs." Accordingly, the package decomposes a potentially large volume of future actions into manageable batches and threads, dispatching subordinate work to other routines. A documented global variable, g_futr_proc_name, stores a return code, and an associative-array type lt_request_ids (indexed by BINARY_INTEGER) is used to accumulate the request IDs of child concurrent requests generated during a run.

Key Procedures and Functions

  • EXECUTE_MT — The principal entry point, invoked by a concurrent program. It accepts a personnel office (POI), a batch size, and a thread size, then determines the batching strategy and calls the sub-programs. It opens a cursor over future actions filtered by effective date, approval state, notification status, and routing history, restricting results to the POI supplied via PER_POSITION_EXTRA_INFO.
  • SUB_PROC_FUTR_ACT — A subordinate procedure executed per batch, responsible for the actual processing of future actions identified by EXECUTE_MT.
  • CREATE_GHR_ERRORLOG — The error-logging routine. This is the procedure most directly relevant to the user's search term; it records failures encountered during future-action processing into the GHR processing log structures so that administrators can diagnose and re-drive problem records. Referenced tables include GHR_PROCESS_LOG and GHR_PROCESS_LOG_S.
  • ROUTE_ERRORED_SF52 — Handles the routing of records that failed under the SF52 business context, providing a remediation path for errored transactions.
  • VERIFY_355_BUSINESS_RULE — Validates the "355" business rule, serving as a pre-condition check within the processing flow.

Tables Accessed

The package reads and writes across the following documented tables (accessed through APPS synonyms):

  • GHR_PA_REQUESTS, GHR_PA_ROUTING_HISTORY, GHR_NATURE_OF_ACTIONS — the driving personnel-action request, routing, and nature-of-action data.
  • GHR_POIS and PER_POSITION_EXTRA_INFO — personnel office identification and the POI-to-position mapping used to constrain the cursor.
  • GHR_PROCESS_LOG and GHR_PROCESS_LOG_S — the logging tables written by CREATE_GHR_ERRORLOG.
  • PER_ALL_PEOPLE_F — effective-dated person records.
  • GHR_MTS_TEMP — likely a temporary staging structure for the multi-threaded run.
  • FND_SESSIONS, DUAL, DBMS_LOCK, PLITBLM — session/context lookups, lock management for thread control, and the standard PL/SQL table utility.

Usage Notes

GHR_PROC_FUT_MT is not intended for direct invocation from custom code. It executes from a concurrent program that supplies the POI, batch size, and thread size parameters. Because it relies on DBMS_LOCK and request-ID tracking, it is designed for parallel processing where thread safety is important. One other package references this body, confirming its role as a shared internal utility.

When errors occur, the log records written by CREATE_GHR_ERRORLOG into GHR_PROCESS_LOG are the primary diagnostic surface. The package is pre-12.2 in origin (header dated 2008) and remains available in 12.1.1 and 12.2.2 releases.