Results for “generate_special”
8 results
AI-generated from documented ETRM metadata — verify critical details on the linked pages.
Overview
APPS.HXT_TIME_DETAIL is the PL/SQL package body at the core of the Oracle E-Business Suite timecard calculation and element-generation engine. In Oracle EBS 12.1.1 and 12.2.2, HXT (Oracle Time and Labor / OTL) uses this package to translate detailed hours-worked records into the earnings and payroll elements that downstream Oracle Payroll processing requires. The package encapsulates the business rules by which recorded timecard entries — start time, stop time, assignment, earnings policy, shift, and premium conditions — are expanded into the correct set of element entries, rates, and amounts.
The body is highly stateful. It declares an extensive block of global package variables (for example g_person_id, g_assignment_id, g_date_worked, g_hours, g_time_in, g_time_out, g_element_type_id, g_rate_multiple, g_hourly_rate, g_amount, g_project_id, g_pay_status, and g_pa_status) that carry the parameters and derived attributes of a single timecard processing invocation across its internal routines. This pattern allows the package to accumulate context as it evaluates earning rules, shift premiums, hour deduction rules, and cost allocation without repeatedly re-querying the source records.
Lineage markers in the header comment (for example SIR132, RETROPAY, PROJACCT, and ZEROHRS) show that the package has absorbed multiple product enhancements and bug fixes over the years, making it the de facto engine for earning generation in Oracle Time and Labor.
Key Procedures and Functions
ETRM documents a single public routine for this object:
- GENERATE_SPECIAL — The documented entry point that drives special earning and element generation. It is responsible for applying earning-policy logic to a timecard detail record and producing the resulting element entries, commonly used for non-standard or exception-based earnings that fall outside the routine ordinary-time calculation path. Its internal logic relies on the global variable context described above rather than an extended public parameter list.
All remaining logic in the body is private (local) to the package and is not exposed for direct invocation.
Tables Accessed
The package reads and writes a broad set of HXT and Oracle Payroll tables through APPS synonyms, reflecting its role as the bridge between timecard capture and payroll processing:
- HXT_DET_HOURS_WORKED_F — Detail hours-worked records that the package expands into earnings.
- HXT_TIMECARDS_F — The originating timecards supplying header context.
- HXT_EARNING_POLICIES, HXT_EARNING_RULES, HXT_EARN_GROUPS, HXT_EARN_GROUP_TYPES — Configuration that governs how hours map to earnings and elements.
- HXT_HOUR_DEDUCTION_RULES — Rules for reducing or offsetting hours against other earning categories.
- HXT_ROTATION_SCHEDULES, HXT_SHIFTS, HXT_WORK_SHIFTS, HXT_SHIFT_DIFF_RULES — Shift and rotation definitions used to resolve shift differentials and premium conditions.
- HXT_SUM_HOURS_WORKED_F — Aggregated hours totals supporting summarized calculations.
- HXT_ADD_ELEM_INFO_F — Additional element information used when constructing element entries.
- PAY_ELEMENT_TYPES_F — Payroll element definitions to which generated entries are linked.
- PLITBLM — The PL/SQL index-by table type used to pass collections of records through the API layer.
Usage Notes
HXT_TIME_DETAIL is not intended for standalone execution by end users; it is invoked indirectly by the Oracle Time and Labor timecard validation and element-generation processing, including concurrent programs and form-driven actions that submit timecards for payroll, and by other packages that require earning calculation. The provided ETRM metadata notes that it is referenced by three other packages, confirming its role as a shared library in the HXT stack. Customizations in 12.1.1 and 12.2.2 should avoid direct calls to its private routines and should instead integrate through the supported OTL APIs, since the global variable design assumes controlled invocation by the calling framework and does not guarantee a reentrant or stateless contract.