Professional Documents
Culture Documents
Understanding Data Loading and Extraction
Understanding Data Loading and Extraction
and Extraction
DISCLAIMER
This document in any form, software or printed matter, contains proprietary information that is the
exclusive property ofOracle. Your access to and use of this confidential material is subject to the terms
and conditions of your Oracle softwarelicense and service agreement, which has been executed and
with which you agree to comply. This document and information contained herein may not be
disclosed, copied, reproduced or distributed to anyone outside Oracle without prior written consent of
Oracle. This document is not part of your license agreement nor can it be incorporated into any
contractual agreement with Oracle or its subsidiaries or affiliates.
This document is for informational purposes only and is intended solely to assist you in planning for
the implementationand upgrade of the product features described. It is not a commitment to deliver
any material, code, or functionality, andshould not be relied upon in making purchasing decisions.
The development, release, and timing of any features or functionality described in this document
remains at the sole discretion of Oracle.
Due to the nature of the product architecture, it may not be possible to safely include all features
described in this documentwithout risking significant destabilization of the code.
Contents
PURPOSE STATEMENT .............................................................................................................................................2
DISCLAIMER ...............................................................................................................................................................2
Document Control .......................................................................................................................................................5
HCM DATA LOADER (HDL) OVERVIEW ...................................................................................................................6
PREREQUISITE ..........................................................................................................................................................6
HCM DATA LOADER PROCESS..................................................................................................................................6
Key Types ................................................................................................................................................ 6
Supported Key Types ................................................................................................................................. 6
Source Keys .............................................................................................................................................. 7
User Keys ................................................................................................................................................. 7
Oracle Fusion GUIDs................................................................................................................................... 7
Oracle Fusion Surrogate IDs........................................................................................................................ 7
Business-Object Structure .......................................................................................................................... 8
Example Formats ....................................................................................................................................... 8
Learning HDL Business Objects .................................................................................................................... 9
PREREQUISITE
You must have the Human Capital Management Integration Specialist job role or privileges to access
HCM Data Loader. Refer to the Human Capital Management Data loader User guide prior to reviewing
this document.
Tip: You can also correct load errors interactively on the HCM Data Loader interface and resubmit any
corrected data from there.
Key Types
When planning to integrate data from one system to another, you must determine the key types that will be
used to identifyunique records. In HCM Data Loader, use these keys to identify the record that you're
creating or updating, and the parent records of the record you're creating or updating. The parent record
may be in the same data file being created, or it may have already been created and already exists in
Oracle Learning Cloud.
For example, if you supply both a GUID and a source key, then the GUID is used and the source key is
Source Keys
A source key is the ID that identifies a business object in its source system. You can use source keys when
creating or updating business objects. The best practice is to use source keys for all implementations, but
particularly for ongoingintegrations where data is maintained in the source system.
Source-Key Structure
A source key has two components:
⚫ Source-System Owner - Identifies where the data originated.
⚫ Source-System ID – The ID used in the source system. The ID must be unique for the business-
object componentand source-system owner.
User Keys
Regardless of whether they're enabled for integration, most Oracle HCM Cloud business objects have one
or more attributesthat make up a user key. The user key (also known as a natural key) is always visible on
the user interface. For example, on the Course and Offering detail pages there is a Learning Item ID that
is displayed that represents a User Key for these objects. When loading the offering, it should contain a
user key for the course, as the course learning item ID is mandatory for creating the offering.
User keys are part of the business object definition. They are always required when you create a logical
object, regardless ofhow you create it. User keys are recommended when:
⚫ You're referencing or maintaining an object that wasn't created with a source key.
⚫ The source-key value is unknown.
⚫ When a business object is bound by another, the user key must include the user key for its parent.
Business-Object Structure
Each Oracle HCM Cloud business object is a hierarchy of business-object components. At the top of the
hierarchy is the parent component, and beneath it may be child and grandchild components. Each
business-object component has multipleattributes. For example, “course” is the parent object and it has
course number, while “offering” (its child object) contains a course number along with offering number.
Example Formats
METADATA|COURSE|ATTRIBUTE 1|ATTRIBUTE2|ATTRIBUTE3.
(Metadata line) MERGE|COURSE|
VALUEATTRIBUTE1|VALUEATTRIBUTE2|VALUEATTRIBUTE3 (Merge
line)
Before you begin working on HDL items, review all available business objects on the View Business
Objects page. There could be changes to HDL business objects between updates, so it’s important to
ensure that you are getting the most up–to-date information. Refreshing ensures that the business object
information is updated in the customer pod, and when you view information about the object, it’s the
latest information for the version of software that the pod is on. To initiate this refresh, click Refresh All
Objects, and then select the Learning Cloud product area. A job runs to update the objects based on the
version of the pod.
To get information about the business structure and attribute definitions, click the object link. The object
component details display, listing information about the learning object. There is also a tree structure in
the upper left-hand corner that defines all the other objects that have a relationship to this object.
Classroom Resource
This object creates a classroom, which is a location where an on-site instructor led activity takes place.
To download the .dat file for this business object, search under View Business Objects > Search for
“Classroom Resource” > Click the download icon. Once a classroom resource is loaded successfully, you
can verify it from the following the location in Oracle Learning Cloud:
My Client Groups > Learning > Catalog
Instructor Resource
An instructor is a person who teaches a group of people how to achieve learning outcomes associated to
a course. To download the .dat file for this business object, search under View Business Objects > Search
for “Instructor Resource” > Clickthe download icon. Once an instructor is loaded, you can verify it by
following location in Oracle Learning Cloud:
My Client Groups > Learning > Catalog Resources
> Instructors.General Attribute Validations
⚫ On Create PersonId cannot null!
⚫ On Create InstructorResource object already exists for PersonId = <PersonId>
⚫ On Create Provided InstructorResourceNumber is not valid!
⚫ On Create PersonId cannot null!
⚫ On Create OwnedByPersonId cannot null!
⚫ Person object not found for PersonId = <PersonId>
⚫ Person object not found for PersonId = <OwnedByPersonId>
⚫ InstructorResource object already exists for PersonId = <PersonId>
⚫ PersonId cannot be updated!
Course
A course is instruction for an individual subject that has specific outcomes. A course has an offering or
list of offerings thatlearners can take to achieve the course outcomes, which could be skills and
qualifications. To download the .dat file for this business object, search under View Business Objects >
Search for “Course” > Click the download icon. You can load courses, offerings, activities, and reservations
through this file. Once a course file is loaded successfully, you can verify it by followinglocation in Oracle
Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course.
The Course HDL object has the following Hierarchy and processing order
associated with it:ClassroomResource (Processing Order: 106030)
ClassroomResourceTranslation
(Processing Order 106031)Course
(Processing Order 106060)
a. Offering (Child of Course)
i. InstructorLedActivity (Child of Offering)
1.) ClassroomReservation (Child of
InstructorLedActivity)2.)
InstructorReservation (Child of
InstructorLedActivity) 3.)
AdhocResource (Child of
InstuctorLedActivity)
ii. SelfPacedActivity (Child of Offering)
iii. Offering Default Access (Child of Offering)
b. Course Default
Access CourseTranslation
(Processing Order: 106061)
OfferingTranslation
(Processing Order:
106062)
InstructorLedActivityTranslation
(Processing Order 106064)
SelfPacedActivityTranslation
(Processing Order 106065)
CourseOfferingPricingDefaults
(Processing Order 106070)
c. CourseOfferingPricingComponent(Child of
CourseOfferingPricingDefaults)OfferingCustomPricing
(Processing Order 106075)
d. OfferingCustomPricingComponent (Child of OfferingCustomPricing)
The course object has some different characteristics than other objects. A course file can have a syllabus
description that is in rich text format, and it can also have cover art associated with it. If a customer wants
to load in rich text, they need to reference a rich text file name (like an html file) in the syllabus attribute of
the course .dat file. They would need to load inthese rich text files, called Clob files, by zipping them up in a
This object loads the default access properties for the course that apply to all learners accessing courses,
prior to having an access group, or an assignment.
To download the .dat file for this business object, search under View Business Objects > Search for “Course” > Click
the download icon. Once a course file is loaded successfully you can verify the course access from the following
location in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course > Manage Default Access
Course Translation
This object loads the translation of the courses to the other languages installed in the application. A
course should exist before loading its translation. To download the .dat file for this business object,
search under View Business Objects > Search for “Course Translation”> Click the download icon. Once a
course file is loaded successfully, you can verify it after changing the application language and then
accessing the object from the following location in the Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course
Offering
You can load self-paced, ILT or blended offerings through this file. A course must exist before loading the
offering. Todownload the .dat file for this business object, search under View Business Objects > Search
for “Course” > Click thedownload icon. Once the course .dat file is loaded successfully, you can verify it
from the following locations in Oracle Learning Cloud:
⚫ My Client Groups > Learning > Learning Catalog > Offerings
⚫ My Client Groups > Learning > Learning Catalog > Course
> Offering Info tileGeneral Attribute Validations
⚫ On Create PersonId cannot null!
To download the .dat file for this business object, search under View Business Objects > Search for “Course” > Click
the download icon. Once a course file is loaded successfully you can verify the offering access from the following
location in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Offering > Manage Default Access
ILT Activity
An ILT offering should exist before loading the ILT activity. To download the .dat file for this business
object, search under View Business Objects > Search for “Course” > Click the download icon. Once the
course file is loaded successfully, you canverify it by following locations in Oracle Learning Cloud:
⚫ My Client Groups > Learning > Learning Catalog > Offerings > Edit > Activities
⚫ My Client Groups > Learning > Learning Catalog > Course > Offering Info tile > Edit > Activities
Ad Hoc Resources
Ad hoc resources are unplanned teaching resources used for an on-site instructor led activity. Examples
of unplanned resources are flip charts, projectors, pens, and other such items. An ILT activity should
already exist before loading the Adhoc Resources data. To download the .dat file for this business object,
search under View Business Objects > search for
“Course” > Click the download icon. Once the course file is loaded successfully, you can verify it from the
following locationsin Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course > Offering Info tile > Edit > Activities > Edit the
Activity > See Other Resources Section
Classroom Reservation
Classroom reservations are classrooms reserved for instructor led activities. An ILT activity should
already exist before loading a classroom reservation. To download the .dat file for this business object,
search under View Business Objects > Search for “Course” > Click the download icon. Once Course file is
loaded successfully, you can verify it from the followinglocation in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course > Offering Info tile > Edit > Activities > Edit the
Activity > See Classrooms Section
Instructor Reservation
An Instructor is the person reserved for an instructor-led training (ILT) activity. An ILT activity should
already exist beforeloading instructor reservations. To download the .dat file for this business object,
search under View Business Objects > Search for “Course” > Click the download icon. Once the course
My Client Groups > Learning > Learning Catalog > Course > Offering Info tile > Edit > Activities > Edit
the Activity > See Instructors Section
CourseOfferingPricingDefaults
Pricing rule defaults and pricing components for offerings, set at the course level. To download the .dat file
for this business object, search under View Business Objects > Search for “Course Offering Pricing
Defaults” > Click the download icon. Once the file is loaded successfully, you can verify it by following
location in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Course
Specialization
A specialization contains multiple courses grouped together as a single entity, to help learners achieve
goals that a single course cannot address. To download the .dat file for this business object, search under
View Business Objects > Search for“Specialization” > Click the download icon. Once the file is loaded
successfully, you can verify it from the following location inOracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Specialization
Like the course object, the specialization object also has a hierarchy associated with it. The Specialization
HDL object has thefollowing hierarchy and processing order:
1. Specialization (Processing Order: 106080)
a. SpecializationSection (Child of Specialization)
i. SpecializationSectionActivity (Child of Specialization Section)
19 Understanding Data Loading and Extraction
Copyright © 2021, Oracle and/or its affiliates | Confidential – Public
b. SpecializationDefaultAccess (Child of Specialization)
2. SpecializationTranslation (Processing Order: 106081)
3. SpecializationSectionTranslation (Processing Order: 106082
This object loads the default access properties for the specialization that apply to all learners accessing
specializations, prior to having an access group, or an assignment.
To download the .dat file for this business object, search under View Business Objects > Search for “Specialization” >
Click the download icon. Once a Specialization file is loaded successfully you can verify the specialization access
from the following location in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Specialization > Manage Default Access
Specialization Translation
This object loads the translations for specializations. A specialization must exist before loading the
specialization translation. To download the .dat file for this business object, search under View Business
Objects > Search for “Specialization Translation” > Click the download icon. Once the file is loaded
successfully, you can verify it after changingthe application language and then accessing the object from
the following location in Oracle Learning Cloud:
My Client Groups > Learning > Learning Catalog > Specializations
Learning Record
A learning record is the assignment of a specified learning item made to an individual learner. To
download the .dat file forthis business object, search under View Business Objects > Search for “Learning
Record’ > Click the download icon. Once thefile is loaded successfully, you can verify it from the following
locations in Oracle Learning Cloud:
⚫ My Client Groups > Learning > Learners
⚫ My Client Groups > Learning > Learning Catalog > Course/Offering > Learners info tile
In HCM Data Loader, Learning Record status are only allowed to be created and updated into certain
values. The table belowdefines what these supported values are for each type of learning item and type of
learning assignment.
COMPLETE TO DELETE
WITHDRAWN TO DELETE
COMPLETE TO DELETE
WITHDRAWN TO DELETE
ACTIVE TO DELETE
WITHDRAWN TO DELETE
COMPLETE TO DELETE
ACTIVE TO DELETE
WITHDRAWN TO DELETE
COMPLETE TO DELETE
ACTIVE TO DELETE
WITHDRAWN To DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
ACTIVE TO DELETE
WITHDRAWN TO DELETE
COMPLETE TO DELETE
WITHDRAWN TO DELETE
ACTIVE TO DELETE
WITHDRAWN TO DELETE
In the user interface, there are two ways that an assignment can be marked as complete:
⚫ Learner (completing manually)
⚫ Specialist (bypass complete)
If completions are loaded in HDL as if completed by a Specialist, the status will be stored as Bypass
Complete, just like it is inthe user interface. You can also include a reason code, comments, and actual
effort for the specialist HDL completions.
A course will not be allowed to go from Complete -> Delete, Withdraw -> Delete when there is an Offering in
Complete state. It is not possible to get into this state in from the UI so this will cause data corruption if
allowed. If you need to move a coursefrom Complete to Delete, then you need to make sure the offering
assignment is taken care of in HDL before the course can be moved from Complete - > Delete. This
means that the offering assignment needs to be moved to Deleted before you canmove a course
assignment from Completed to Deleted, which is now supported.
A specialization assignment can only go from completed to deleted if the specialization assignment
completion resultedfrom a bypass complete on the specialization assignment, or from a course bypass
LearningRecord Status Create and Update Possibilities for Legacy Learning Items
Loading in Offering Assignment Completions and activity details. In most cases, you may just
want to migrate over course assignment completions and have these display on the learner transcripts.
However, you may also want to includeoffering assignment completions with activity completions.
Follow below steps for loading offering and activity completions along with course completion.
1. Load an Offering learning record in Active status. This step would automatically create a
course learning record in Active status.
2. Load LearningRecordActivityAttempt object to mark offering activities Completed. For more
details on this object please refer Learning Record Activity Attempt object section
3. Once all offering activities are marked completed using LearningRecordActivityAttempt
object, offering learning record status would get updated to Completed. Offering Completion
would then roll up to Course and mark the Course Learning Records as Completed.
AssignmentAttributionCode This is the attribution lookup code for the assignment. This defines the
group that is requesting the assignment.
Lookup Value in the product: ORA_WLF_ASSIGN_ATTR_LOOKUP
AssignmentAttributionType The attribution type for the assignment, this defines how the assignment
was made. For example, the assignment could be made by a Learner, or
Specialist. Currently, the only supported lookup values areORA_PERSON,
ORA_SPECIALIST.
Lookup Value in the product: ORA_WLF_ATTRIBUTION_TYPE
AssignmentSubType This is the assignment subtype in the Oracle Fusion system. The value
defines who initiated the assignment and is at a lower level from
assignment type. A person may have made the assignment, but that
person could be a learner or an administrator. Currently the only
supported lookup values are ORA_EVT_SUBT_ADMIN and
ORA_EVT_SUBT_SELF. Future: ORA_EVT_SUBT_MANAGER
ORA_EVT_SUBT_PEER
Lookup Value in the product: ORA_WLF_ASSIGN_REC_SUBTYPE
AssignmentType The type of assignment. For example, the assignment could be a required,
voluntary, recommended assignment. Currently, the only supported lookup
values are ORA_JOIN_ASSIGNMENT,
ORA_RECOMMEND_ASSIGNMENT and
ORA_REQUIRE_ASSIGNMENT.
Lookup Value in the product: ORA_WLF_ASSIGN_REC_TYPE
LearningItemType The learning item type, such as legacy, course, offering, specialization,
video or tutorial. Valid values are ORA_LEGACY, ORA_COURSE,
ORA_SPECIALIZATION, ORA_CLASS, ORA_VIDEO,ORA_TUTORIAL
andORA_NONCATALOG
Lookup Value in the product: ORA_WLF_LEARNING_ITEM_TYPE
LearningRecordStatus The status of the learning record. Currently, the only supported lookup
values are ORA_ASSN_REC_ACTIVE, ORA_ASSN_REC_COMPLETE,
ORA_ASSN_REC_WITHDRAWN and ORA_ASSN_REC_DELETED.
Lookup Value in the product: ORA_WLF_ASSIGN_RECORD_STATUS
LearningRecordReasonCode The reason code that is associated to the learning record when it has
been completed, withdrawn or deleted.
Supported Lookup Types:
ORA_WLF_COMPLT_RSN_SPEC (Specialist moving to Completed)
ORA_WLF_WITHD_RSN_SS (Learner moving to Withdrawn)
ORA_WLF_WITHD_RSN_SPEC(Specialist moving to Withdrawn)
Date Validations
1. EffectiveStartDate cannot be after today's date.
2. EffectiveEndDate cannot be before today's date.
3. EffectiveEndDate cannot be before LearningRecordDueDate.
4. EffectiveStartDate and EffectiveEndDate cannot be same.
5. EffectiveStartDate cannot be after LearningRecordStartDate.
6. LearningRecordStartDate cannot be after LearningRecordDueDate.
26 Understanding Data Loading and Extraction
Copyright © 2021, Oracle and/or its affiliates | Confidential – Public
7. LearningRecordStartDate cannot be after LearningRecordWithdrawnDate.
8. LearningRecordDueDate cannot be null or empty
when AssignmentType is
Required(ORA_REQUIRE_ASSIGNMENT)
9. LearningRecordCompletionDate cannot be after today’s date
When LearningRecordStatus is Required Complete (ORA_ASSN_REC_COMPLETE)
10. LearningRecordStartDate cannot be after today’s date
11. When LearningRecordStatus is Required Complete
(ORA_ASSN_REC_COMPLETE)
LearningRecordCompletionDate cannot be null.
12. When LearningRecordStatus is Required Withdrawn
(ORA_ASSN_REC_WITHDRAWN)
LearningRecordWithdrawnDate cannot be null.
13. When LearningRecordStatus is Required Deleted (ORA_ASSN_REC_DELETED)
LearningRecordDeletedDatecannot be null.
14. When LearningRecordStatus is Required Complete (ORA_ASSN_REC_COMPLETE)
and AssignmentType isRequired Assignment (ORA_REQUIRE_ASSIGNMENT),
LearningRecordValidFromDate is mandatory.
15. When LearningRecordStatus is Complete (ORA_ASSN_REC_COMPLETE) and
AssignmentType is RequiredAssignment (ORA_REQUIRE_ASSIGNMENT) and
RENEWAL OPTION is enabled at Advanced Rules LearningRecordExpiryDate is
mandatory.
16. When AssignmentType is Required Assignment
(ORA_REQUIRE_ASSIGNMENT),
LearningRecordCompletionDate cannot be after
LearningRecordExpiryDate
17. When AssignmentType is Required Assignment
(ORA_REQUIRE_ASSIGNMENT),
LearningRecordWithdrawnDate cannot be after
LearningRecordExpiryDate
18. LearningRecord EffectiveStartDate and EffectiveEndDate should be in
between LearningItemEffectiveStartDate and EffectiveEndDate
Midstream Assignments
Your legacy Learning Management System (LMS) may have historical data containing future-dated
renewals, future-datedassignments, or renewal assignments that were in progress or not yet started.
Previously, it wasn’t possible to recreate thesescenarios in Oracle Learning Cloud based on how Learning
Steps to Enable
You don't need to do anything to enable this feature.
MERGE|LearningRecord||2020/01/27||LRNRaviMidComp4a|OLC22274002|ORA_COURSE|DSS-COURSE-
WLF794-070801-
HDL|ORA_REQUIRE_ASSIGNMENT|ORA_EVT_SUBT_ADMIN||||10034|ORA_SPECIALIST|10034|ORA_WLF_CE
O_OFFICE|10
045|ORA_ASSN_REC_COMPLETE||||2019/01/07|2019/05/01|||2019/04/10|2019/01/07|2019/05/01|10|ORA_DUR_HOUR||
|||ORA_SPEC_COMPLT_ELSEWHERE|comments
MERGE|LearningRecord||2020/01/27||LRNRaviMidCurr4a|OLC22274002|ORA_COURSE|DSS-COURSE-
WLF794-070801-
HDL|ORA_REQUIRE_ASSIGNMENT|ORA_EVT_SUBT_ADMIN||||10034|ORA_SPECIALIST|10034|ORA_WLF_CE
O_OFFICE|10
045|ORA_ASSN_REC_ACTIVE||||2019/05/01|2020/12/01||||||10|ORA_DUR_HOUR||||||
MERGE|LearningRecord||2020/01/27||LRNKlausMidCurr4a|OLC22274002|ORA_COURSE|DSS-COURSE-
WLF794-070801-
HDL|ORA_REQUIRE_ASSIGNMENT|ORA_EVT_SUBT_ADMIN||||10034|ORA_SPECIALIST|10034|ORA_WLF_CE
O_OFFICE|10
046|ORA_ASSN_REC_ACTIVE||||2019/05/01|2020/05/01||||||10|ORA_DUR_HOUR||||||
Step 3: Load the LearningRecord.dat HDL file. We recommend loading the historical data assignments in
Complete statusfirst, and then loading in the midstream assignments in progress (Active) or future dated
(Not Started).
Step 4: Add a valid destination object to the initiative and ensure that the learners that have midstream
assignments are alsopart of this destination. If they are not, the reconciliation jobs will withdraw these
midstream learning assignments due to the edit. To get around this bug you can update the filters on the
existing analysis object.
When a learner that has a midstream assignment completes the assignment, the initiative renewal rules
are evaluated, andan assignment is created based on the initiative renewal rules.
1.Create an initiative on the course with a dummy destination object. Follow the steps as mentioned in
Step#1 of section Migrating Midstream Assignments from Legacy System.
2. Prepare LearningRecord.dat file for historical course completions as mentioned in Step#2 of section
Migrating Midstream Assignments from Legacy System. However, in this case, do not include the last or
latest completion in the .DAT file. For instance, if a learner has past completions on a course for years
2018, 2019 and 2020. Prepare the LearningRecord.dat file with completions for year 2018 and 2019 but
do not include the completion for year 2020. The reason to exclude the last completion (year 2020) is that
we do not want it to be created in Bypass completed status.
METADATA|LearningRecord|LearningRecordId|LearningRecordEffectiveStartDate|LearningRecordEffecti
veEndDate|LearningRecordNumber|AssignmentNumber|LearningItemType|LearningItemNumber|Assign
mentType|AssignmentSubType|AssignedByPersonNumber|AssignmentAttributionType|AssignmentAttribu
3.For the last completion (Year 2020 completion in the example given in Step#2), first load the course
learning record in Active status. Course learning record will be created in No Offering Selected sub
status.
METADATA|LearningRecord|LearningRecordId|LearningRecordEffectiveStartDate|LearningRecordEffecti
veEndDate|LearningRecordNumber|AssignmentNumber|LearningItemType|LearningItemNumber|Assign
mentType|AssignmentSubType|AssignedByPersonNumber|AssignmentAttributionType|AssignmentAttribu
tionNumber|AssignmentAttributionCode|LearnerNumber|LearningRecordStatus|LearningRecordStartDate
|LearningRecordDueDate|LearningRecordWithdrawnDate|LearningRecordDeletedDate|LearningRecordC
ompletionDate|LearningRecordValidFromDate|LearningRecordExpiryDate|LearningRecordTotalActualEff
ort|LearningRecordTotalActualEffortUOM|LearningRecordReasonCode|LearningRecordComments
MERGE|LearningRecord||2017/01/01||LRN_MF_07042018|OLC928002|ORA_COURSE|HDL_CRS_0704
|ORA_REQUIRE_ASSIGNMENT|ORA_EVT_SUBT_ADMIN|8153756|ORA_SPECIALIST|8153756|ORA_
WLF_CEO_OFFICE|8153756|ORA_ASSN_REC_ACTIVE|2020/03/01|2020/03/30|||||||||
4. Load offering learning record for the learner in Active status. This offering learning record will be
associated to the Active course learning record created in Step#3. Course learning record sub status will
be updated to Not Started.
METADATA|LearningRecord|LearningRecordId|LearningRecordEffectiveStartDate|LearningRecordEffecti
veEndDate|LearningRecordNumber|AssignmentNumber|LearningItemType|LearningItemNumber|Assign
mentType|AssignmentSubType|AssignedByPersonNumber|AssignmentAttributionType|AssignmentAttribu
tionNumber|AssignmentAttributionCode|LearnerNumber|LearningRecordStatus|LearningRecordStartDate
|LearningRecordDueDate|LearningRecordWithdrawnDate|LearningRecordDeletedDate|LearningRecordC
ompletionDate|LearningRecordValidFromDate|LearningRecordExpiryDate|LearningRecordTotalActualEff
ort|LearningRecordTotalActualEffortUOM|LearningRecordReasonCode|LearningRecordComments
MERGE|LearningRecord||2017/01/01||LRN_MF_07042027|AN_MF_07042027|ORA_CLASS|HDL_CRS_
0704_OF1|ORA_REQUIRE_ASSIGNMENT|ORA_EVT_SUBT_ADMIN|8153756|ORA_SPECIALIST|8153
756|ORA_WLF_CEO_OFFICE|8153756|ORA_ASSN_REC_ACTIVE|2020/03/01|2020/03/30|||||||||
5.Prepare and load LearningRecordActivityAttempt.dat file with Completed status mark the offering
activities complete. Provide the Course completion date for ActivityAttemptDate attribute.
METADATA|LearningRecordActivityAttempt|ActivityAttemptId|LearningRecordId|LearningRecordNumber|
ActivityId|ActivityNumber|ActivityAttemptStatus|ActivityAttemptDate|ActivityAttemptReasonCode|ActivityAt
temptActualScore|ActivityAttemptActualEffort|ActivityAttemptNoteMERGE|LearningRecordActivityAttempt
|||LRN_MF_07042027||HDL_CRS_0704_OF1_A1|ORA_ASSN_TASK_COMPLETED|2020/03/09||||
After the load is successful, Offering learning record will be marked as completed which in turn would roll
up to the Course and mark the course learning record as Completed.
A new course learning record will be created in No Offering Selected Sub status as per the renewal rules
configuration of the initiative.
Starting from release 21C, we are providing the ability to purge or permanently delete learning records
that are present in the system in Deleted status. Learning Records in any status other than Deleted can't
be purged.
Please note that the purged learning records are permanently deleted from the database and are
not recoverable.
Purging of learning records is supported for all learning item types - Course, Offering, Specialization,
Legacy, Non-Catalog learning items and Self-Service learning items.
When LearningRecord object is used to purge a Deleted learning record, some if its related data is also
purged. Below is a list of what all data will be purged from the system:
1. Complete date effective history of the learning record.
2. Event Assignment Profile including Request Details and Assignment Rules data for the learning
record - provided the Assignment Profile is linked to only current learning record. If other learning
records are linked, Assignment Profile data will not be purged.
3. Assignment tasks related data for the learning record.
4. In case of Course learning record purge, offering learning records and their related data will be
purged. This is only in case the Course and Offering learning records are eligible for purge and
are in Deleted status.
Recommendation: If you are planning to PURGE both Course and Offering LearningRecords, it is
recommended to purge the Course LearningRecord directly as Course LearningRecord PURGE will
recursively PURGE all child offering learning records as well provided they are in Deleted status.
• When a course learning record is associated with multiple offering learning records, purge of a
Course learning record, will also purge the child offering learning records along with all their
related data provided ALL offering records are also in Deleted status.
• When a course learning record is associated with multiple offering learning records, purge of a
Course learning record, will result in an error if any one of the child offering learning records is
NOT in Deleted status. Ensure that all Offering learning records must first be moved to Deleted
status.
• When Course learning record being purged is associated with a learning initiative, other learning
records linked to the initiative will remain unaffected.
Community Relation
There is an HDL object called Community Relation that lets you associate learning items to a community.
You can use thecommunity number to associate a community to multiple learning item numbers in the
catalog. After the Community Relations HDL load, in Learning Cloud you will see the list of learning
items (specializations, courses, and communities) associated to the community.
To download the .dat file for this business object: search under View Business Objects > search for
“Community Relation” and click the download icon.
You can use TalentProfile object to perform above steps. To download the .dat file for TalentProfile navigate to My
Client Groups -> Data Exchange -> View Business Objects. Search for “Talent Profile” and click the download icon.
For example, If a course needs to have a prerequisite of English language, you need to create a
TalentProfile object with ProfileUsageCode of PR and a child ProfileItem object with content
type of language.
Sample Data
Below is the sample .dat files for creating Learning Prerequisite for the example above.
TalentProfile.dat
COMMENT Create Profile Item for Prerequisite profile with Language= English
METADATA|ProfileItem|ContentItemId|ContentTypeId|CountryId|DateFrom|DateTo|Importance|InterestLevel|ItemDat
e1|It
emDate10|ItemDate2|ItemDate3|ItemDate4|ItemDate5|ItemDate6|ItemDate7|ItemDate8|ItemDate9|ItemDecimal1|ItemDeci
mal2|ItemDecimal3|ItemDecimal4|ItemDecimal5|ItemNumber1|ItemNumber10|ItemNumber2|ItemNumber3|ItemNumber4|
ItemNumber5|ItemNumber6|ItemNumber7|ItemNumber8|ItemNumber9|ItemText20001|ItemText20002|ItemText20003|It
36 Understanding Data Loading and Extraction
Copyright © 2021, Oracle and/or its affiliates | Confidential – Public
emText20004|ItemText20005|ItemText2401|ItemText24010|ItemText24011|ItemText24012|ItemText24013|ItemText24014|
ItemText24015|ItemText2402|ItemText2403|ItemText2404|ItemText2405|ItemText2406|ItemText2407|ItemText2408|Ite
mText2409|ItemText301|ItemText3010|ItemText3011|ItemText3012|ItemText3013|ItemText3014|ItemText3015|ItemText30
2
|ItemText303|ItemText304|ItemText305|ItemText306|ItemText307|ItemText308|ItemText309|Mandatory|Pa
rentProfileIte
mId|ProfileId(SourceSystemId)|ProfileItemId|QualifierId1|QualifierId2|RatingLevelId1|RatingLevelId2|Ra
tingLevelId3|Ratin
gModelId1|RatingModelId2|RatingModelId3|SourceId|SourceKey1|SourceKey2|SourceKey3|SourceType|State
ProvinceId|Sec tionId|SourceSystemOwner|SourceSystemId
MERGE|ProfileItem|109000016|109||2000/01/01||2|||||||||||||||||||||||||||||||||||||||||||||||||||||||Y|Y||||||Y||
TPPR050420211||||8002|8001|8003|8|8|8|||||||9903|HCMQA-001|PIPR050420211
For ProfileItem creation, we can use this document to understand what attributes need to be updated for a
particularcontent type.
The SourceSystemId of TalentProfile object acts a parent (ProfileId) for ProfileItem object.
Below is the sample .dat files for creating Learning outcomes similar to Prerequisite.
Effective Dating
It’s important to think through what effective dates to use when loading using HCM Data Loader. The
Effective Start andEffective End dates you choose can have large effects on how the Learning Cloud
features work.
A common issue that arises with effective dating is sometimes child objects have effective start dates that
are not within the bounds of the parent object effective start dates. The child object effective start date
(ESD) must be inside the bounds of the parent object effective start dates. It is also important to note that
when a user updates an object in the user interface, theeffective dates change for this object. This can also
cause problems with HDL loads after updates are made on the object.
Let’s look at a simple scenario to see how effective dates change in the backend on Course A: Course A
was entered into thesystem on 01/01/2020 via HDL with an ESD of 01/01/2020 and an EED of end of
time. Then on 01/10/2020 Course A wasupdated in the User Interface by User A. You can see the impact
of the updated by User A in the second table, the records split, and you now have two records for
Course A in the backend.
HDL Load (Create 01/01/2020 01/01/2020 (Populated InHDL End of Time (Populated in HDL
Course A) file) file)
UI Update 01/10/2020
Now let’s say that on 02/10/2020 Course A was updated by HDL with an effective start date of 02/10/2020.
A new record is created with this new record. HDL Update. Please note when the same Effective Start /
End Date used on a record that exitsin the system for Course A, the record will not split, and it will update
the row. If the user provides an Effective Start Date post current Effective start date it will split the
record.
01/10/2020 02/09/2020
State of Course A
What would happen if Offering Z that is associated to Course A was now loaded into the system? It
would be important to understand what the effective date bounds are for the parent object, in this case
Course A. To determine the parent boundsyou would find the earliest effective start date from all the
splits and the latest effective end date from al the rows. This would be effective start date = 01/01/2020
(Earliest Effective Start Date) and effective end date = End of Time (Latest Effective End Date).
BI CLOUD CONNECTOR
The BI Cloud Connector console can be used to extract data in bulk and store it in a shared resource
like the Fusion SaaSbuilt-in UCM server or a Storage Cloud. The data is extracted in CSV format and can
be downloaded from the cloud storageto local resources. It can be then processed and transformed as
desired before being loaded into Data Warehouses or otherdatabases.
The high-level architecture of BICC is shown below:
Access Provisioning
In order to extract data using BICC user should have access to the BICC console.
ORA_ASM_APPLICATION_IMPLEMENTATION_ADMIN_ABSTRACT role should be granted for
access to offerings and datastores. ESS Administrator Role is needed to create and manage extract
schedules. If UCM is configured as the external storage, additional access is required to view and
download the extracted data files generated by BICC in the UCM server
Refer to online documentation for more information:
https://docs.oracle.com/en/cloud/saas/applications-common/20d/biacc/get-
started.html#provision-access
Extraction Process
Below is a high-level diagram depicting the extraction process.
Business Intelligence data can be extracted by the using Public View Objects. These are called data
stores. BICC design supports replication of View Objects to csv data file with column selections and basic
filtering support. If the data needs to beextracted from multiple VO's, it is to be noted that there is no join
condition between the VO's. therefore, you will need to create a program to transform the data from
multiple VO’s, if this is your desired outcome.
2. In the Data Stores for offering page, click on add data store button.
4. Click on Select Columns in next screen to select the columns for extraction along with Primary
key and IncrementalKey for incremental loads.
Incremental Key
EventAttemptPEOLastUpdateDate
Workforce HcmTopModelAnalyticsGlobalAM.ContentAM.LearningItemContentPVO
Learning -
Learning Content Primary Key
Items Real Time LearningItemDEOLearningItemId
LearningItemDEOEffectiveStartDate
LearningItemDEOEffectiveEndDate
Incremental Key
LearningItemDEOLastUpdateDate
Incremental Key
LearningItemDEOLastUpdateDate
Incremental Key
AssignmentRecordDEOLastUpdateDate
Incremental Key
AsignRecDEOLastUpdateDate
Incremental Key
lastUpdateDate
Note: You should not use custom BIP reports when using BICC with OLC.
There are dependencies between learning objects when an object is created via HDL. You need to make
sure that objects thathave associations to other objects exist before the object is loaded. For example, you
would not be able to load in a Learning Record (assignment) without a Learner Person already existing, a
learning item, and the person that is performing the assignment. Therefore, it is important to understand the
processing order to ensure that a child object does not fail because there is missing parent data.
On the View Business Objects page there is a column called Load Order. The number in this column
represents the order inwhich the learning object should be loaded in the system. All of the Learning HDL
objects begin with 1060XX. The ten digit and the ones digit are the values that we use to keep a logical
order. Notice that the order in the numbering system jumps by10.This is done to organize items by
grouping them together.
13 REST: Load the rich media bits of an OLC REST 6-3 Months 4,7 14
Content Item to the OLC Akamai POD Service prior to go-
live
Overview
This section explains the known limitations in the Oracle Learning Cloud HDL functionality. Oracle
Learning Cloud is a new product and has been releasing functionality frequently; components like HDL,
OTBI generally trail the UI releases becausethe functionality needs to be there before you can act on it
from an HDL or OTBI standpoint. The current HDL limitations will continue to be trued up in each
update.
Updating Attributes
The following attributes can’t be created or updated via a learning record update load:
⚫ With this Note
⚫ Name
⚫ Description
⚫ Pending PreReq
⚫ Attachment
Course Limitations
Offering Limitations
Attachments
Currently, there is no support for associating attachments to an offering activity.
Activity Updates
If an Administrator updates the actual effort on the activity level for a learner’s assignment (without
changing the status) inthe User Interface, then this is also updated and shows at both course and
offering level. If this update on the activity is performed using HDL this rollup does not happen at the
course or offering level.
Resources Limitations
Instructor Resources
⚫ Unable to Associate training supplier to an instructor
⚫ Unable to Associate attachments to an instructor
⚫ Unable to Associate WebEx account to an instructor
Specialization Limitations
Deleting Specialization
Currently, deleting the specialization and the child objects (specialization section, activities) associated to a
course isn’tsupported.
TROUBLESHOOTING BASICS
When you submit an HDL ticket, include the following items for troubleshooting by Support and Development:
1. The name of the Business Object and .dat file or .zip file with the data set used for load.
2. The Content ID and the Process ID from the load in error. (This is needed to run queries
to pull additional datarelated to the failed load).
3. Indicate whether you validated the file before loading.
Note: The tool and instructions to run are available in the MOS document called Data File
Validator Tool for theHCM Data Loader (DOC ID 2022617.1).
4. Provide the Diagnostic Report called HCM Data Loader Data Set Status Diagnostic, which is
available for you to runin the Diagnostic Framework.
Troubleshooting Suggestions
Handling Import Errors
• Verify the error message to see if it is related to Number of Columns mismatch in Merge and
Metadata files andcorrect it accordingly.
• Other errors occur when the business object names doesn’t match the delivered object name. For
example, an errordisplays if a business object name is passed on “COURSES” instead of
“COURSE”.
• Make sure you upload the .dat file with exact business name, and not with your own file name.
(The zip file namecan be anything.)
• Do not pass multiple business objects in same file if they have different .dat files available for them.
Legacy Learning HDL File the load is successful, but I am unable to see the loaded record from UI
or in Learner Transcript.
Make sure to leave Effective End Date of the learning record blank to view this in a learner’s transcript.
Also, make sure that the Learning Record’s Effective Start .date is later than its respective legacy learning
Record’s EffectiveStart .date.
Couldn't Create AccessControl Object for Course!’ error while loading Course through
HDL
This happens because of missing configuration in manage setup. Go to My Client Groups > Learning >
Setup > LearningItem Default Attributes and set the attributes. After above step, reload the same file again.
Course Syllabus Loaded through HDL Displaying Weird Character for Apostrophe in Text
⚫ Update the format of the text file referenced within the Syllabus Attribute within Course. .dat from
ANSI to UTF-8, andreplace the ANSI apostrophe with UTF-8 apostrophe within the word (Example -
'month’s')
⚫ Create a ClobFiles folder and place the same (or revised file name) text file within this folder.
⚫ Zip both Course .dat as well as Clob Files Folder, and load within the Data Exchange UI.
⚫ Confirm the changes in UI.
Is it possible to update course offering with their DFF values using HDL or spreadsheet loader?
Yes, it is possible to update DFFs using HDL or Spreadsheet for the Flex Fields created on
Course/Offering Page. If any newDFF is created, refresh HDL business object to reflect the newly created
DFF in the .dat file.”
Is it Possible to Update the Learning Assignment of an Offering with their DFF Values using HDL
or spreadsheet loader?
Currently, Flexfield support is not available for learning assignments.
facebook.com/oracle
twitter.com/oracle
Copyright © 2021, Oracle and/or its affiliates. All rights reserved. This document is provided for
information purposes only, and the contents hereof are subject to change without notice. This
document is not warranted to be error-free, nor subject to any other warranties or conditions,
whether expressed orally or implied in law, including implied warranties and conditions of
merchantability or fitness for a particular purpose. We specifically disclaim any liability with respect
to this document, and no contractual obligations are formed either directly or indirectly by this
document. This document may notbe reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without our prior written permission.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC
trademarks are used underlicense and are trademarks or registered trademarks of SPARC
International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or
registered trademarks of Advanced Micro Devices. UNIX is a registered trademark ofThe Open
Group. 0120
Understanding Data Loading and Extraction
July 2021