Search Results validate_separate_chk_flg
Overview
HXT_TIM_COL_UTIL is a public utility package in the Application Object Library (APPS) schema that supports the Oracle Time and Labor (OTL) collection and validation architecture. Its name reflects its role as a "time collection utility" — a centralized library of lookup, validation, and resolution routines invoked by the higher-level OTL timecard processing engines. Rather than enforcing business transactions itself, HXT_TIM_COL_UTIL resolves surrogate keys and validates cross-reference relationships that time collection programs require before payroll or project costing can be applied.
The package declares AUTHID CURRENT_USER, meaning it executes with the privileges of the calling schema. It anchors declarations to hxt_projects_v.project_id and hxt_earning_policies.id, and defines lookup constants g_orcl_tm_app_id_cons := 808 (Oracle Time Management) and g_orcl_hr_app_id_cons := 800 (Oracle HRMS). These constants identify the application context under which element and lookup resolution occurs. ETRM 12.2.2 classification records the package as a UTIL-type API with 17 documented functions and references from 6 other packages, indicating wide internal reuse across the OTL module.
Key Procedures and Functions
The documented functions fall into functional groups:
- Person and time resolution:
GET_PERSON_IDconverts an employee number into a person identifier, returning name attributes;DETERMINE_PAY_DATEderives the applicable date worked from shift start and end times;GET_SESSION_DATEandRETURN_SESSION_DATEretrieve and return the FND session date used for effective-dating logic. - Element and earning policy resolution:
GET_ELEMENT_TYPE_IDresolves an element name to its element type identifier;CHK_ELEMENT_LINK— the object in the user's search — validates whether an element is linked to a given assignment as of a date worked;GET_EARN_POL_IDresolves an earning policy name or assignment to its earning policy identifier. - Assignment attribute resolution:
GET_TASK_ID,GET_GRADE_ID,GET_LOCATION_ID, andGET_PROJECT_IDeach resolve a business identifier (task number, grade name, location code, project) into its primary key within the context of a business group and date worked. - Validation routines:
VALIDATE_SEPARATE_CHK_FLG,VALIDATE_EARN_REASON_CODE,VALIDATE_TIME_SUMMARY_ID,VALIDATE_COST_CENTER_ID,VALIDATE_TIMECARD_SOURCE, andVALIDATE_WAGE_CODEeach confirm that a supplied timecard attribute is valid and effective for the assignment and date in question.
All functions use a common convention: inputs describe the identifier, date, and business group, while outputs are returned through OUT NOCOPY parameters, with the function return value indicating success or a status code.
Tables Accessed
Through APPS synonyms, the package reads the following:
- PER_ALL_ASSIGNMENTS_F — primary source for assignment-level validation and person/assignment context.
- PAY_ELEMENT_TYPES_F and PAY_ELEMENT_TYPES_F_TL — element type definitions and translated names for
GET_ELEMENT_TYPE_ID. - PAY_ELEMENT_LINKS_F and PAY_ASSIGNMENT_LINK_USAGES_F — the effective-dated element-to-assignment linking structures consulted by
CHK_ELEMENT_LINK. - HXT_EARNING_POLICIES — earning policy definitions for
GET_EARN_POL_ID. - HXT_PREV_WAGE_BASE — prior wage basis data used in wage code validation.
- PAY_COST_ALLOCATION_KEYFLEX — cost allocation key flexfield for cost center validation.
- PER_GRADES — grade definitions for
GET_GRADE_ID. - FND_SESSIONS — session date retrieval.
- PLITBLM — PL/SQL index-by table for bulk lookup operations.
Usage Notes
HXT_TIM_COL_UTIL is an internal utility API, not designed for direct end-user invocation. It is called by the OTL time collection forms and by the BEE (Batch Element Entry) and timecard validation concurrent programs whenever an employee's timecard entries must be translated into payroll element entries. CHK_ELEMENT_LINK in particular is invoked during timecard submission to confirm that the element being applied is validly linked to the assignment, preventing payroll processing of unlinked elements.
Because the package is referenced by 6 other packages and is not documented as an open interface, customization should be avoided; callers should preserve expected parameter conventions and treat return codes as status indicators. Any client extension should invoke the package from custom PL/SQL or a wrapper, respecting the effective-date and business-group parameters, and should not modify the package body in a production instance.