HCM – Basic Understanding of HDL – Worker.dat
HCM – Basic Understanding of HDL – Worker.dat
The following is intended to outline our general product direction. It is intended for information purposes only,
and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or
functionality, and should not be relied upon in making purchasing decisions. The development, release,
timing, and pricing of any features or functionality described for Oracle’s products may change and remains at the
sole discretion of Oracle Corporation.
1. Introduction of HDL
2. HDL keys
3. Loading of Worker data
4. Creation of Worker using Worker.dat
5. Correction of existing record on the data base.
6. Updating a new row for an existing person.
7. Troubleshooting HDL errors.
8. Q&A
✓ HCM Data Loader (HDL) supports a flexible, pipe-delimited file format that allows you to provide just the
business objects, components and component attributes that are required for your use case. Full sets of
data can be loaded, or just incremental changes. To achieve this flexibility, each file must specify which of
the business object components and attributes are included in the file.
✓ Oracle Cloud HCM business objects can be complex and are usually hierarchical, allowing for multiple child
records to be created for a business object, e.g., multiple phone numbers for a Person, or multiple valid
grades for a job.
❖ Doc Ref - Quick Start : The below document gives and idea on how to use/load using HDL
https://docs.oracle.com/pls/topic/lookup?ctx=fa-latest&id=HDLCF
https://docs.oracle.com/pls/topic/lookup?ctx=fa-latest&id=HDLNH
• Source key
• User key
➢ The Worker business object is complex with around 30 components in the object hierarchy.
➢ Reference : https://docs.oracle.com/pls/topic/lookup?ctx=falatest&id=s20057525
Note : All the attributes that are marked as required and marked For new records
need to be provided in the HDL file.
There are no results being fetched in the SQL below which shows that there are no manager related information
available for this employee.
METADATA|WorkTerms|EffectiveStartDate|EffectiveLatestChange|EffectiveSequence|EffectiveEndDate|ActionCod
e|LegalEmployerName|DateStart|WorkerType|PersonNumber|AssignmentNumber
MERGE|WorkTerms|2022/01/12|Y|1|4712/12/31|MANAGER_CHANGE|A*****1|2017/07/24|E|2000256|ET200
****
METADATA|Assignment|EffectiveStartDate|EffectiveSequence|EffectiveLatestChange|EffectiveEndDate|ActionCod
e|AssignmentNumber|WorkTermsNumber
MERGE|Assignment|2022/01/12|1|Y|4712/12/31|MANAGER_CHANGE|E200****|ET200****
METADATA|AssignmentSupervisor|EffectiveStartDate|EffectiveEndDate|AssignmentNumber|PrimaryFlag|Manage
rAssignmentNumber|ManagerType
MERGE|AssignmentSupervisor|2022/01/12|4712/12/31|E200****|Y|E30*****|LINE_MANAGER
When one tries to change the Hire Date of the Employee from UI/using HDL, and the new hire date is on or after the latest assignment record, the error occurs.
“Assignment records exist prior to the hire date. Either delete the assignment records or change the hire date.”
As per the error message and the suggestion, the action plan is to Delete the Assignment records that are existing between the current Hire Date and the
proposed Hire Date to resolve the reported error and allow one to change the Hire Date of the employee.
Steps to Resolve :
METADATA|WorkTerms|AssignmentId|ActionCode|EffectiveStartDate|EffectiveEndDate|EffectiveLatestChange|EffectiveSequence|PeriodOfServiceId
MERGE|WorkTerms|30000********|01_HIRE_PART_TIME|2022/10/01|4712/12/31|Y|3|30000*******30
METADATA|Assignment|AssignmentId|ActionCode|WorkTermsAssignmentId|EffectiveStartDate|EffectiveEndDate|EffectiveLatestChange|EffectiveSequence|Per
iodOfServiceId
MERGE|Assignment|30000********6|01_HIRE_PART_TIME|30000********|2022/10/01|4712/12/31|Y|3|30000*******30
SELECT * FROM PER_WORKING_HOUR_PATTERNS_F WHERE OBJECT_ID= 30000********6 –Object_id is the Assignment ID of the subject employee
If data exists, then use the below HDL to delete the data.
METADATA|WorkingHourPattern|WorkingHourPatternId|ObjectId|Object|WorkingHoursType|EffectiveStartDate|EffectiveEndDate
DELETE|WorkingHourPattern|300000******9| 30000********6|ASSIGNMENT|ORA_WORK_WEEK|2022/11/01|4712/12/31
➢ Once the above HDL is successful repeat Step 1.
➢ Once the file is loaded successfully load the file to change the Work-Relationship start date.
Sample:
METADATA|WorkRelationship|PersonNumber|LegalEmployerName|PrimaryFlag|DateStart|WorkerType|NewStartDate
MERGE|WorkRelationship|31000070|UM IN Legal Entity|Y|2022/10/01|E|2022/12/01
Reference :
Error Changing Hire Date: Assignment records exist prior to the hire date (Doc ID 2588832.1)
You Cannot Change the Legal Employer Hire or Start Date if Multiple Assignment Records Exist Error When Changing Hire Date
(Doc ID 2291238.1)
Fusion Global HR: When Can Hire Date Be Changed? (Doc ID 1969304.1)
This is to address cases when the employee has multiple work-relationship/single work-relationship with multiple assignments.
➢ Please run the Employment Diagnostic Master – Report Diagnostic, it will let you know if the person has the invalid Primary issue.
➢ Please run the Invalid Primary Flags – Report Diagnostic , it will let you know exact list of transactions that have overlapping
flags/invalid flags
➢ Then run the Multiple Overlapping Primary Work Relationships – Report Diagnostic, if the report shows no corruption, then follow
the below steps to correct the transactions having have overlapping flags/invalid flags from the Invalid Primary Flags – Report Diagnostic.
❑ Check for the conflicting transactions and ensure that only one of them is made primary, as per below flag guidelines.
It should be set to "Y" if the Work Terms row is the primary work term for its Work Relationship for this date effective record.
If not, it should be set to "N".
It should be set to "Y" if the Assignment row is the primary assignment for its Work Relationship for this date effective record.
If not, it should be set to "N".
It should be set to "Y" if the Assignment row is the primary assignment for its Work Relationship AND the said Work Relationship is the primary work relationship for
its Person for this date effective record. If not, it should be set to "N".
Note : Every Work-Relationship should have an assignment having the PrimaryFlag and Y if the work-relationship is primary
METADATA|WorkTerms|AssignmentId|ActionCode|WorkTermsAssignmentId|EffectiveStartDate|EffectiveEndDate|EffectiveLatestChange
|EffectiveSequence|PeriodOfServiceId|AssignmentStatusTypeCode|PrimaryWorkTermsFlag
METADATA|Assignment|AssignmentId|ActionCode|WorkTermsAssignmentId|EffectiveStartDate|EffectiveEndDate|EffectiveLatestChange
|EffectiveSequence|PeriodOfServiceId|AssignmentStatusTypeCode|PrimaryFlag|PrimaryAssignmentFlag
MERGE|Assignment|3000000*******2|ASG_CHANGE|3000********9|2018/09/22|2018/09/22|Y|1|3000000**********|ACTIVE_PROCESS|Y|Y