Search Results hr_api_params
Overview
APPS.HR_API_PARAMS is a utility package body in the Oracle E-Business Suite (available in both 12.1.1 and 12.2.2) that provides runtime introspection of stored PL/SQL procedures. Its principal business function is to support Oracle HRMS forms and routines that need to discover, at runtime, the parameter signature of an API — such as its argument names, datatypes, default values, and IN/OUT modes — without the parameter list being hard-coded. This capability underpins generic API invocation screens, where the calling form queries the database for the structure of a target procedure before presenting entry fields to the user and building the corresponding call dynamically.
The package achieves this by wrapping the Oracle-supplied DBMS_DESCRIBE package. It calls DBMS_DESCRIBE.DESCRIBE_PROCEDURE against a supplied package and procedure name, then caches the returned metadata in global PL/SQL tables so that it can be retrieved in a controlled, position-by-position manner by the consuming code.
Key Procedures and Functions
The documented interface comprises two procedures. The ETRM metadata lists SETUP_PARAM_INFO and RETRIEVE_PARAM_DETAILS (with the header comment also referencing the internal helper describe logic invoked via DBMS_DESCRIBE).
- SETUP_PARAM_INFO — Establishes and loads the global parameter information for a named package and procedure. It invokes
DBMS_DESCRIBE.DESCRIBE_PROCEDUREto obtain the procedure's parameter details and stores the resulting arrays in the package globals (theg_overload,g_position,g_level,g_argument_name,g_datatype,g_default,g_in_out,g_length,g_precision,g_scale,g_radix, andg_sparetables). If the package or procedure does not exist, the routine sets an existence indicator accordingly rather than raising an unhandled error. It is called from the form before parameter details are retrieved. - RETRIEVE_PARAM_DETAILS — Returns the stored details for a parameter, allowing the caller to walk through the cached globals one entry at a time. The global
g_last(a NUMBER declared as a count of "the number of table entries already gone through") drives this sequential iteration, whileg_overload_ind(initialised to −1) tracks overload resolution across the cached result set.
Tables Accessed
The package references DBMS_DESCRIBE through APPS synonyms, as reported in the ETRM metadata. It does not read or write application data tables directly. Instead it depends on the DBMS_DESCRIBE PL/SQL-supplied package, specifically its NUMBER_TABLE and VARCHAR2_TABLE collection types, which are declared as the package-level globals and mirror the structure of the arrays returned by DESCRIBE_PROCEDURE. All persistence is therefore in-memory (session-level PL/SQL state), and no DML against HRMS or other schema tables is performed.
Usage Notes
HR_API_PARAMS is a supporting component rather than a business API, and the ETRM metadata records it as referenced by zero other packages, indicating that its callers are external — typically Oracle Forms and custom code rather than server-side PL/SQL APIs. The header comment states it is "called from the form, prior to attempting to retrieve parameter details," confirming the standard invocation sequence: the form first calls SETUP_PARAM_INFO to load the selected procedure's signature, then calls RETRIEVE_PARAM_DETAILS repeatedly to enumerate each parameter. Because the metadata is held in package globals, a session must call SETUP_PARAM_INFO before RETRIEVE_PARAM_DETAILS for any given procedure, and re-call it whenever a different procedure is selected. Custom developers extending HRMS generic-API screens use the same pattern. The package is not intended for direct business-data processing and should not be invoked without first ensuring the target package and procedure exist, since existence checking is delegated to SETUP_PARAM_INFO.
-
PACKAGE BODY: APPS.HR_API_PARAMS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:HR_API_PARAMS, status:VALID,
-
PACKAGE BODY: APPS.HR_API_PARAMS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:HR_API_PARAMS, status:VALID,
-
PACKAGE: APPS.HR_API_PARAMS
12.1.1
owner:APPS, object_type:PACKAGE, object_name:HR_API_PARAMS, status:VALID,
-
PACKAGE: APPS.HR_API_PARAMS
12.2.2
owner:APPS, object_type:PACKAGE, object_name:HR_API_PARAMS, status:VALID,
-
SYNONYM: PUBLIC.DBMS_DESCRIBE
12.2.2
owner:PUBLIC, object_type:SYNONYM, object_name:DBMS_DESCRIBE, status:VALID,
-
SYNONYM: PUBLIC.DBMS_DESCRIBE
12.1.1
owner:PUBLIC, object_type:SYNONYM, object_name:DBMS_DESCRIBE, status:VALID,
-
PACKAGE: APPS.HR_API_PARAMS
12.1.1
-
PACKAGE: APPS.HR_API_PARAMS
12.2.2
-
APPS.HR_API_PARAMS dependencies on HR_API_PARAMS
12.1.1
-
APPS.HR_API_PARAMS dependencies on HR_API_PARAMS
12.2.2
-
PACKAGE BODY: APPS.HR_API_PARAMS
12.2.2
-
PACKAGE BODY: APPS.HR_API_PARAMS
12.1.1
-
PACKAGE: APPS.HR_GENERAL
12.2.2
owner:APPS, object_type:PACKAGE, object_name:HR_GENERAL, status:VALID,
-
PACKAGE: APPS.HR_GENERAL
12.1.1
owner:APPS, object_type:PACKAGE, object_name:HR_GENERAL, status:VALID,
-
12.2.2 DBA Data
12.2.2
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.1.1 DBA Data
12.1.1
-
PACKAGE: APPS.FND_MESSAGE
12.2.2
owner:APPS, object_type:PACKAGE, object_name:FND_MESSAGE, status:VALID,
-
PACKAGE: APPS.FND_MESSAGE
12.1.1
owner:APPS, object_type:PACKAGE, object_name:FND_MESSAGE, status:VALID,
-
PACKAGE: SYS.STANDARD
12.1.1
owner:SYS, object_type:PACKAGE, object_name:STANDARD, status:VALID,