Search Results pay_core_utils
Overview
PAY_CORE_UTILS is a foundation utility package body in the Oracle Payroll (PAY) schema of Oracle E-Business Suite, owned by APPS and validated as of release 12.1.1 and 12.2.2. It performs the low-level plumbing work on which most payroll processing, element entry, assignment action, and payroll run logic depends. Rather than exposing a single business transaction, the package centralizes reusable services: cursor management for dynamic SQL, cached lookup of business group and legislation context, date and time period derivation, proration date calculation, identifier resolution for run results, and message/token emission for logging and user feedback.
The dependency footprint confirms its foundational role. ETRM documentation records that PAY_CORE_UTILS is referenced by 257 other packages, indicating it is called throughout payroll processing, costing, and legislative extensions. It is itself dependent on core payroll and HR tables plus DBMS_SQL, PLITBLM, FF_CONTEXTS, and HR_UTILITY. Its API classification is recorded as OTHER, reflecting that it is an internal utility rather than a public business API.
Key Procedures and Functions
Documented procedures number 44, including public and overloaded variants. The principal groups are:
- Dynamic SQL cursor handling — GET_SQL_CURSOR, CLOSE_SQL_CURSOR, and CLOSE_ALL_SQL_CURSORS open, track, and release dynamic cursors, and RESET_CACHED_VALUES clears the package's cached session values.
- Parameter management — GET_PARAMETER and REMOVE_PARAMETER read and remove entries in the package's internal parameter cache.
- Context and business group resolution — GET_BUSINESS_GROUP, GET_BUSINESS_GROUP_WITHBIND, and GET_DYT_BUSINESS_GROUP return business group identifiers (including a bind-variable and a "date you're thinking" variant), while GET_LEGISLATION_CODE derives the applicable legislation for the current context.
- Date and time derivation — GET_TIME_DEFINITION and GET_TIME_PERIOD_START resolve payroll time definitions and period start dates, and GET_ENTRY_END_DATE determines the closing date for an element entry.
- Proration — GET_PRORATED_DATES and SET_PRORATE_DATES compute and store proration boundaries used when entries are split across periods.
- Identifier lookup — GET_RR_ID, GET_AA_ID, and GET_RB_ID return run result, assignment action, and run balance identifiers respectively.
- Messaging — PUSH_MESSAGE and PUSH_TOKEN add lines and substitution tokens to the payroll message buffer for later retrieval by calling programs.
Tables Accessed
The package reads and writes the core payroll tables through APPS synonyms. Assignment action tables (PAY_ASSIGNMENT_ACTIONS, PAY_ASSIGNMENT_ACTIONS_S, PAY_ACTION_INTERLOCKS, PAY_ACTION_PARAMETERS) support action tracking and interlock checks. Element structures (PAY_ELEMENT_TYPES_F, PAY_ELEMENT_CLASSIFICATIONS, PAY_ELEMENT_CLASS_USAGES_F, PAY_ELEMENT_TYPE_USAGES_F, PAY_INPUT_VALUES_F, PAY_ELEMENT_ENTRIES_F, PAY_ELEMENT_ENTRY_VALUES_F) supply entry and classification data used in date and proration logic. Payroll and run objects (PAY_PAYROLLS_F, PAY_RUN_TYPES and _F, PAY_RUN_RESULTS and _S, PAY_RUN_BALANCES_S) support identifier resolution. Legislative and context tables (PAY_LEGISLATION_CONTEXTS, PAY_LEGISLATION_RULES, FF_CONTEXTS, PER_BUSINESS_GROUPS, PER_TIME_PERIODS, PER_ALL_ASSIGNMENTS_F) drive business group, legislation, and time period determination. Message output is staged in PAY_MESSAGE_LINES and PAY_MESSAGE_LINES_S. Additional references include PAY_COSTS, PAY_INTERPRETER_PKG, PAY_PROC_LOGGING, PAY_UPGRADE_* tables, and PAY_REPORT_FORMAT_* objects.
Usage Notes
Typical invocation occurs from payroll concurrent programs, element entry forms, assignment action processing, and legislative or customer extension code that needs cached context, consistent date calculation, or message output. Because the package maintains internal caches and open cursors, callers should invoke CLOSE_ALL_SQL_CURSORS and RESET_CACHED_VALUES at appropriate transaction boundaries to avoid stale values within a session. Customizations should favor the documented procedures over direct table access to preserve upgrade compatibility across 12.1.1 and 12.2.2.
-
PACKAGE BODY: APPS.PAY_CORE_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CORE_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PAY_CORE_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CORE_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PAY_CA_ARCHIVE_RULES
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CA_ARCHIVE_RULES, status:VALID,
-
PACKAGE BODY: APPS.PAY_CA_ARCHIVE_RULES
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CA_ARCHIVE_RULES, status:VALID,
-
PACKAGE BODY: APPS.PAY_US_REPORT_DATA_VALIDATION
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_US_REPORT_DATA_VALIDATION, status:VALID,
-
PACKAGE: APPS.PAY_AU_PAYMENT_SUMMARY_MAGTAPE
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PAY_AU_PAYMENT_SUMMARY_MAGTAPE, status:VALID,
-
SYNONYM: APPS.PAY_RUN_BALANCES_S
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PAY_RUN_BALANCES_S, status:VALID,
-
PACKAGE BODY: APPS.PAY_US_MMRF_SQWL_FORMAT_RECORD
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_US_MMRF_SQWL_FORMAT_RECORD, status:VALID,
-
TRIGGER: APPS.PAY_ACTION_PARAMETERS_ARI
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAY_ACTION_PARAMETERS_ARI, status:VALID,
-
TRIGGER: APPS.HR_PAY_IF_PERSON_ARU
12.2.2
owner:APPS, object_type:TRIGGER, object_name:HR_PAY_IF_PERSON_ARU, status:VALID,
-
PACKAGE: APPS.PAY_HK_IR56_MAGTAPE
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PAY_HK_IR56_MAGTAPE, status:VALID,
-
TRIGGER: APPS.PAY_ACTION_PARAMETERS_ARI
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAY_ACTION_PARAMETERS_ARI, status:VALID,
-
TRIGGER: APPS.HR_PAY_IF_ELE_ENT_ASD
12.1.1
owner:APPS, object_type:TRIGGER, object_name:HR_PAY_IF_ELE_ENT_ASD, status:VALID,
-
SYNONYM: APPS.PAY_LEGISLATION_CONTEXTS
12.1.1
owner:APPS, object_type:SYNONYM, object_name:PAY_LEGISLATION_CONTEXTS, status:VALID,
-
SYNONYM: APPS.PAY_RUN_BALANCES_S
12.1.1
owner:APPS, object_type:SYNONYM, object_name:PAY_RUN_BALANCES_S, status:VALID,
-
TRIGGER: APPS.HR_PAY_IF_PPM_BRD
12.2.2
owner:APPS, object_type:TRIGGER, object_name:HR_PAY_IF_PPM_BRD, status:VALID,
-
TRIGGER: APPS.PAYELEMENTTYPESF_44U_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYELEMENTTYPESF_44U_DYT, status:VALID,
-
PACKAGE: APPS.PAY_PROC_LOGGING
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PAY_PROC_LOGGING, status:VALID,
-
TRIGGER: APPS.PAYELEMENTLINKSF_43U_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYELEMENTLINKSF_43U_DYT, status:VALID,
-
TRIGGER: APPS.PAYPERSONALPAYMENTMETH_48I_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYPERSONALPAYMENTMETH_48I_DYT, status:VALID,
-
TRIGGER: APPS.PAYLINKINPUTVALUESF_46U_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAYLINKINPUTVALUESF_46U_DYT, status:VALID,
-
PACKAGE BODY: APPS.PAY_CA_EOY_RL1_AMEND_ARCH
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CA_EOY_RL1_AMEND_ARCH, status:VALID,
-
TRIGGER: APPS.PAYINPUTVALUESF_45U_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAYINPUTVALUESF_45U_DYT, status:VALID,
-
TRIGGER: APPS.PAYELEMENTTYPESF_44U_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAYELEMENTTYPESF_44U_DYT, status:VALID,
-
TRIGGER: APPS.PAYPERSONALPAYMENTMETH_47D_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAYPERSONALPAYMENTMETH_47D_DYT, status:VALID,
-
PACKAGE BODY: APPS.PAY_MAG_TAPE
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_MAG_TAPE, status:VALID,
-
PACKAGE BODY: APPS.PAY_CHQWRT_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CHQWRT_PKG, status:VALID,
-
PACKAGE BODY: APPS.PAY_US_MMRF_SQWL_FORMAT_RECORD
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_US_MMRF_SQWL_FORMAT_RECORD, status:VALID,
-
TRIGGER: APPS.HR_PAY_IF_PPM_NO_UPDATE_ARU
12.1.1
owner:APPS, object_type:TRIGGER, object_name:HR_PAY_IF_PPM_NO_UPDATE_ARU, status:VALID,
-
PACKAGE: APPS.PAY_SG_IRAS_MAGTAPE
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PAY_SG_IRAS_MAGTAPE, status:VALID,
-
PACKAGE BODY: APPS.PAY_US_MMRF_W2_FORMAT_RECORD
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_US_MMRF_W2_FORMAT_RECORD, status:VALID,
-
SYNONYM: APPS.PAY_LEGISLATION_CONTEXTS
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PAY_LEGISLATION_CONTEXTS, status:VALID,
-
PACKAGE BODY: APPS.PAY_US_MMRF2_W2C_FORMAT_RECORD
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_US_MMRF2_W2C_FORMAT_RECORD, status:VALID,
-
TRIGGER: APPS.PAYGRADERULESF_2130D_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYGRADERULESF_2130D_DYT, status:VALID,
-
PACKAGE BODY: APPS.PAY_CA_EOY_T4A_AMEND_ARCH
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CA_EOY_T4A_AMEND_ARCH, status:VALID,
-
TRIGGER: APPS.PERPAYPROPOSALS_117I_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PERPAYPROPOSALS_117I_DYT, status:VALID,
-
TRIGGER: APPS.PERASSIGNMENTEXTRAIN_1131D_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PERASSIGNMENTEXTRAIN_1131D_DYT, status:VALID,
-
TRIGGER: APPS.PERPAYPROPOSALS_118D_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PERPAYPROPOSALS_118D_DYT, status:VALID,
-
PACKAGE BODY: APPS.PAY_JP_BALANCE_VIEW_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_JP_BALANCE_VIEW_PKG, status:VALID,
-
PACKAGE BODY: APPS.PAY_SG_CPFLINE_BALANCES
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_SG_CPFLINE_BALANCES, status:VALID,
-
TRIGGER: APPS.PQPASSIGNMENTATTRIBU_2133D_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PQPASSIGNMENTATTRIBU_2133D_DYT, status:VALID,
-
PACKAGE BODY: APPS.PAY_KR_PAYKRYLG_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_KR_PAYKRYLG_PKG, status:VALID,
-
PACKAGE BODY: APPS.PAY_CA_EOY_RL2_AMEND_ARCH
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_CA_EOY_RL2_AMEND_ARCH, status:VALID,
-
PACKAGE BODY: APPS.PAY_ASG_PROCESS_GRP_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PAY_ASG_PROCESS_GRP_PKG, status:VALID,
-
TRIGGER: APPS.HR_PAY_IF_ASG_COST_BRD
12.2.2
owner:APPS, object_type:TRIGGER, object_name:HR_PAY_IF_ASG_COST_BRD, status:VALID,
-
TRIGGER: APPS.PAYPERSONALPAYMENTMETH_49U_DYT
12.1.1
owner:APPS, object_type:TRIGGER, object_name:PAYPERSONALPAYMENTMETH_49U_DYT, status:VALID,
-
TRIGGER: APPS.PAYPERSONALPAYMENTMETH_47D_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYPERSONALPAYMENTMETH_47D_DYT, status:VALID,
-
TRIGGER: APPS.PAYPERSONALPAYMENTMETH_49U_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYPERSONALPAYMENTMETH_49U_DYT, status:VALID,
-
TRIGGER: APPS.PAYLINKINPUTVALUESF_46U_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYLINKINPUTVALUESF_46U_DYT, status:VALID,
-
TRIGGER: APPS.PAYINPUTVALUESF_45U_DYT
12.2.2
owner:APPS, object_type:TRIGGER, object_name:PAYINPUTVALUESF_45U_DYT, status:VALID,