Search Results get_elements_frm_udt
Overview
APPS.PQP_GB_T1_PENSION_EXTRACTS is a legislative extract package within the Oracle E-Business Suite Oracle Payroll module, purpose-built for United Kingdom payroll processing. Its primary business function is to assemble the data required for the United Kingdom Type 1 pension extract, which supports pension reporting obligations applicable to Great Britain. The package is hard-coded to the GB legislation through the global variable g_legislation_code, which is initialised to 'GB', confirming its country-specific scope.
In Oracle EBS releases 12.1.1 and 12.2.2, the package operates as an OTHER-classified API rather than a fully published public interface. It acts as a specialised extraction engine: it evaluates assignment-level payroll data, derives annual and part-time salary figures, resolves balance identifiers for salary, absence, and other rates, and writes structured extract records into the benefit extract tables. Much of its internal state is held in global PL/SQL variables (business group, effective dates, pension year boundaries, establishment number, originator's title, reporting mode, and various rate-type globals), reflecting a batch-oriented design.
Key Procedures and Functions
The documented interface exposes sixty-six procedures and functions. Principal groups include:
- User-defined table (UDT) handling: GET_ELEMENTS_FRM_UDT, GET_UDT_DATA, and GET_UDT_VALUE retrieve element and criteria definitions defined through a user-defined table, driving which elements and balances feed the extract.
- Element and balance resolution: PROCESS_ELEMENT, GET_PAY_BAL_ID, GET_PAY_ELE_IDS_FROM_BAL, and RATES_HISTORY resolve element entries and balance type identifiers relevant to pensionable pay calculations.
- Salary and absence calculation: CALC_ANNUAL_SAL_RATE, GET_ANNUAL_SAL_RATE_DATE, CALC_PART_TIME_SAL, GET_PART_TIME_SAL_DATE, CALC_DAYS_WORKED, GET_DAYS_ABSENT, and GET_DAYS_EXCLUDED_DATE derive annualised salary, part-time salary, days worked, and absence periods.
- Exclusion logic: GET_FT_DAYS_EXCLUDED and GET_PT_DAYS_EXCLUDED compute full-time and part-time days excluded from qualifying pensionable service.
- Employee and assignment data: GET_EEV_INFO, GET_EET_INFO, GET_SAFEGUARDED_INFO, and GET_TRANSLATE_ASG_EMP_CAT_CODE retrieve employee, assignment, and safeguarded information and translate assignment employment categories.
Tables Accessed
The package references several documented tables through APPS synonyms. Benefit extract tables — BEN_EXT_DFN, BEN_EXT_RCD, BEN_EXT_RCD_IN_FILE, and BEN_EXT_RSLT_DTL — hold the extract definition metadata and the resulting records written by the package. Concurrent program metadata is read from FND_CONCURRENT_PROGRAMS and FND_CONCURRENT_REQUESTS to associate extract output with the requesting concurrent process.
Payroll calculation data is drawn from PAY_ASSIGNMENT_ACTIONS, PAY_ELEMENT_ENTRIES_F, PAY_ELEMENT_ENTRY_VALUES_F, PAY_ELEMENT_LINKS_F, PAY_BALANCE_FEEDS_F, PAY_BALANCE_DIMENSIONS, PAY_BALANCE_TYPES, and PAY_DEFINED_BALANCES. These support element entry retrieval, balance definition lookup, and the rate and balance derivation performed by the calculation routines. HR_ORGANIZATION_INFORMATION supplies legislative and organisation-level parameters used to determine business group and establishment context.
Usage Notes
PQP_GB_T1_PENSION_EXTRACTS is typically invoked from a concurrent program during the payroll extract run rather than directly from a form. Because its global variables are deliberately initialised to NULL (notably g_business_group_id, retained with the comment "IMPORTANT TO KEEP NULL"), callers must not pre-populate package state; the package manages business group and effective date resolution internally for each run.
Four other packages reference this package, indicating it is a dependency within the GB payroll and pension extract stack. Custom extensions should treat it as an internal engine and drive it through the standard concurrent request, supplying the extract type, criteria location code, reporting mode, and effective run date that the package expects. The presence of g_extract_udt_name and dedicated pension-year start and end globals confirms the package is designed primarily for the Type 1 pension extract variant, with classification markers such as "Introduced for Type 1 only" documenting incremental enhancements.