Search Results cf_payroll_actionformula




Overview

APPS.PAY_PYAULLAL_XMLP_PKG is the generated PL/SQL package body that supports the Oracle Payroll XML Publisher concurrent program PYAULLAL (Payroll Archive/Alteration Listing). It belongs to the Oracle HRMS/Payroll product family and is classified as an "OTHER" API, meaning it is not part of Oracle's public, supported integration surface but rather the report-local plumbing that BI Publisher invokes at runtime. The package's $Header directive (PYAULLALB.pls 120.0, dated 13-Dec-2007) confirms it is a report definition library compiled into the APPS schema on both EBS 12.1.1 and 12.2.2.

Functionally, the package performs three distinct roles: it initialises session and report-level globals in a before-report trigger, it derives display-friendly descriptions for report parameters, and it supplies the aggregate and lookup formulas embedded in the XML Publisher template. Currency handling is a notable concern — the before-report function determines the functional currency of the business group and formats amounts accordingly.

Key Procedures and Functions

  • BEFOREREPORT — The report entry point. It captures the concurrent request ID via FND_GLOBAL, then opens a cursor over FND_CURRENCIES restricted to the issuing territory of the business group (resolved through HR_ORGANIZATION_INFORMATION with the 'Business Group Information' context). It populates the package globals CP_CURRENCY_CODE, CP_CURRENCY_FORMAT and CP_PRECISION so downstream formulas can render currency correctly.
  • AFTERREPORT — A closing hook that simply returns TRUE; it provides the extension point for report-level cleanup without performing any work in the delivered version.
  • CF_TOTAL_VALUEFORMULA — An arithmetic formula accepting an entitlement value and an accrual value and returning their NVL-protected sum, so null components do not propagate into the total.
  • CF_BUSINESS_GROUP_IDFORMULA — Returns the business group name by delegating to HR_REPORTS.GET_BUSINESS_GROUP for the bound business group ID parameter.
  • CF_PAYROLL_ACTIONFORMULA — Resolves the payroll action ID into a readable label of the form 'DD-MON-YYYY (action_id)', sourced from PAY_PAYROLL_ACTIONS.
  • CF_PAYROLLFORMULA — Derives the payroll name/description shown on the report header from the payroll context.
  • CF_COST_CENTREFORMULA — The cost centre formula the user searched for. It resolves and formats the cost centre value for each report line, drawing on the payroll cost allocation key flexfield structure so the printed cost centre reflects the key flexfield segment values rather than a raw concatenated ID.
  • CP_CURRENCY_FORMAT_P, CP_CURRENCY_CODE_P, CP_PRECISION_P — Package-level global variables (not callable units) holding the currency format mask, currency code and precision set by BEFOREREPORT and consumed by the XML template.

Tables Accessed

  • FND_CURRENCIES — Read to obtain the currency code and precision for the business group's issuing territory.
  • HR_ORGANIZATION_INFORMATION — Read to translate the business group organisation ID into its issuing territory code via ORG_INFORMATION9.
  • HR_ALL_ORGANIZATION_UNITS — Referenced for the business group name data type and descriptive lookup.
  • PAY_PAYROLL_ACTIONS — Read to build the payroll action description from effective date and action ID.
  • PAY_COST_ALLOCATION_KEYFLEX — Read by the cost centre formula to resolve the cost allocation key flexfield segments displayed on the output.

Usage Notes

This package is never invoked directly by customer code. It is executed exclusively by the XML Publisher engine when the PYAULLAL concurrent program runs: BEFOREREPORT fires before data extraction, the CF_* formulas are called from within the RTF/XML template as field-level expressions, and AFTERREPORT fires at completion. Because it is registered as an OTHER API with zero referencing packages, it carries no upgrade guarantee and should not be called from custom PL/SQL. Users searching for "cf_cost_centreformula" are typically troubleshooting why the cost centre prints blank or incorrectly — the usual causes are an unconfigured cost allocation key flexfield on the assignment or payroll, or a business group whose currency setup prevents the global precision variables from being populated. Extensions should be made by copying the report definition, not by modifying this package.