Professional Documents
Culture Documents
Contents
Contents ........................................................................................................................................ 2
Preface .......................................................................................................................................... 3
Disclaimer ....................................................................................................................................................................... 3
Intended Audience .......................................................................................................................................................... 3
Introduction .................................................................................................................................. 4
What is File Based Loader? .............................................................................................................................................. 4
What is Data File Validator? ............................................................................................................................................ 4
Preface
Disclaimer
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, and timing of any features or functionality described for Oracles
products remains at the sole discretion of Oracle.
Intended Audience
Welcome to the white paper on Data File Validator for File Based Loader utility
This guide assumes you have knowledge of the following:
Oracle Fusion HCM File Based Loader
Introduction
This document provides details on the Data File Validator for File Based Loader and the steps required
installing and configuring it. It also provides information on the various configuration options, reviewing
validation errors, and steps for extending the validation routines.
The DAT files that contain the data provided by the users are validated and loaded on to the
Fusion HCM system using FBL. FBL performs a two-stage process to load the data to Fusion.
Load HCM Data (Import) - In this stage, the data is read from the DAT files and populated into a
set of staging tables. This process performs key resolutions such as cross reference id resolution
and foreign key resolutions and basic data validations on the file formats.
Load Batch Data(Load) - In this stage the data is read from the staging tables and validated against
the business rules validation in the web service. Users can view the validation errors in the user
interface and correct the errors and reload the data.
Note: Oracle recommends you to run this utility on the zip file you have generated prior to the
actual load to minimize data validation errors.
Objectives
Data File Validator enables users the:
Column value Comparisons - Compare two attributes in an entity, e.g Start Date < End Date
Complex Validations using Groovy - Any multi-attribute procedural code, e.g. Conditional
mandatory checks, Attribute Combination validation etc
Leverage the existing validations that exist in Business Rule validations.
In the sample, each business object validation is defined within a <business-entity> tag. <attribute>
indicates the various fields in the DAT file for the Business Object.
Type of Validation
Example Format
Data Type
<business-entity name="POSITION">
<attribute name="POSITION_ID" data-type="GUID" mandatory="true"/>
Mandatory Check
<business-entity name="POSITION">
<attribute name="POSITION_ID" data-type="GUID" mandatory="true"/>
Range Validation
List Validation
Regular Expression
Validation
Lookup Validation
Groovy Validation
<groovy-validation description="Legal Entity is mandatory for person type other than EMP,
APL and CWK">
<code>
<![CDATA[ if (SYSTEM_PERSON_TYPE.equals("EMP") ||
SYSTEM_PERSON_TYPE.equals("APL") || SYSTEM_PERSON_TYPE.equals("CWK")) {
if (LEGAL_ENTITY_ID == null)
return true;
else
return false;
}
return true;
]]>
</code>
</groovy-validation>
Use the Configure Lookup Validation window to select the lookup file.
Select the Do not validate lookups option, if you do not want to validate the data.
Select the Use Lookup File to validate the data option and select the lookup.txt file to validate
the data.
You can either choose to create the lookup file based on the format given below or you can use the SQL
query given below to run it against the Fusion database to generate the lookup.txt file from the Fusion
system.
Lookup file format:
<Lookup Type><tab><Lookup Code>
For example:
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
BLOOD_TYPE
ADDRESS_TYPE
ADDRESS_TYPE
ADDRESS_TYPE
ADDRESS_TYPE
ADDRESS_TYPE
.
A+
AAB+
ABB+
BO+
O1
2
3
HOME
IAT
lookup_type
,lookup_code
FROM
fnd_lookup_values_vl
WHERE
lookup_type IN ('ADDRESS_TYPE','BARGAINING_UNIT_CODE','CMP_PROPOSAL_REASON'
,'BLOOD_TYPE','CMP_SALARY_BASIS','CONTACT'
,'CONTRACT_TYPE','EMAIL_TYPE','EMPLOYEE_CATG'
,'EMP_CAT','FREQUENCY','GRADE_PAY_RATE_TYPE'
,'HIRING_STATUS','HONORS','HOURLY_SALARIED_CODE'
,'HRT_CONTENT_SUPP_CODE','JOB_FUNCTION_CODE','MANAGER_LEVEL'
,'MARITAL_STATUS','MILITARY_RANK','NAME_TYPE'
,'ORG_TYPE','PAY_CREATOR_TYPE','PAY_ENTRY_TYPE'
,'PER_CITIZENSHIP_STATUS','PER_DUTIES_TYPE','PER_ETHNICITY'
,'PER_HIGHEST_EDUCATION_LEVEL','PER_LINKAGE_TYPE','PER_NATIONAL_IDENTIFIER_TYPE'
,'PER_PASSPORT_TYPE','PER_RELIGION','PER_SUPERVISOR_TYPE'
,'PER_VISA_PERMIT_STATUS','PER_VISA_PERMIT_TYPE','PHONE_TYPE'
,'PROBATION_PERIOD','QUALIFYING_UNITS','SECURITY_CLEARANCE'
,'SEX','SYSTEM_PERSON_TYPE','TITLE'
,'UNITS')
AND
enabled_flag = 'Y'
AND
sysdate BETWEEN start_date_active
AND
end_date_active
ORDER BY lookup_type
,lookup_code
The HTML report of the utility displays the summary of each of the business objects being processed and
also provides a summary of the validation errors.
The output validation report is generated in the current folder. The report has two sections:
1. Detail section
2. Summary Section
You can view the validation errors highlighted in red color in the Details section as indicated below:
You can view the consolidated list of validation errors in the Summary section.
</xsd:complexType>
</xsd:element>
<xsd:element name="list-validation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="list-value" type="xsd:string" minOccurs="1"
maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="description" type="xsd:string" use="optional"/>
<xsd:attribute name="disabled" type="xsd:boolean" use="optional"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="compare-validation">
<xsd:complexType>
<xsd:sequence/>
<xsd:attribute name="description" type="xsd:string" use="optional"/>
<xsd:attribute name="attribute1" type="xsd:string" use="required"/>
<xsd:attribute name="attribute2" type="xsd:string" use="required"/>
<xsd:attribute name="condition" type="CompareCondition"
use="required"/>
<xsd:attribute name="disabled" type="xsd:boolean" use="optional"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="groovy-validation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="code" type="xsd:string" minOccurs="1"
maxOccurs="1"/>
</xsd:sequence>
<xsd:attribute name="description" type="xsd:string" use="required"/>
<xsd:attribute name="disabled" type="xsd:boolean" use="optional"/>
</xsd:complexType>
</xsd:element>
<xsd:simpleType name="CompareCondition">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="GT"/>
<xsd:enumeration value="GE"/>
<xsd:enumeration value="LT"/>
<xsd:enumeration value="LE"/>
<xsd:enumeration value="EQ"/>
<xsd:enumeration value="NE"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="DataType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="NUMERIC"/>
<xsd:enumeration value="DECIMAL"/>
<xsd:enumeration value="VARCHAR"/>
<xsd:enumeration value="DATE"/>
<xsd:enumeration value="GUID"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
September 2013
Author: Vinod Viswanathan
Ullas Bhat
Swathi Mathur
Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
Copyright 2013, 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
not be 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.
oracle.com