3 データ・ファイルの命令および提供
この章の内容は次のとおりです。
HCMデータ・ローダー・データおよび.zipファイル: 説明
HCMデータ・ローダーは、.zipファイルからデータをロードします。各.zipファイルには、1つ以上のデータ(.dat)ファイルを含めることができます。各データ・ファイルには、事業所、等級、就業者、給与などの単一のビジネス・オブジェクトに関するデータが含まれます。データ・ファイルの名前は、Job.datやWorker.datなど、HCMデータ・ローダーでサポートされるビジネス・オブジェクトの名前になります。データ・ファイルの名前はHCMデータ・ローダーによって指定されます。.zipファイルでは、ロードするビジネス・オブジェクトに対してのみデータ・ファイルを提供します。
次の図は、.zipファイルの構造の例を示しています。.zipファイルには、データ(.dat)ファイルを格納するフォルダはありません。

英数字のみ(a-z、A-Zおよび0-9)で、.zipファイルの名前を定義します。.zipファイル全体を暗号化できますが、HCMデータ・ローダーでは、個々のデータ・ファイルの暗号化はサポートされていません。
.zipファイル内のBlobFilesとClobFilesのフォルダ
.zipファイルに含まれる2つのフォルダは、次のとおりです。
-
BlobFiles (バイナリ・ラージ・オブジェクト用)
-
ClobFiles (キャラクタ・ラージ・オブジェクト用)
これらのフォルダには、添付ファイルとして、またはラージ・オブジェクトに、ロードするファイルを配置します。これらの添付ファイルまたはイメージのファイル名は、英数字のみ(a-z、A-Zおよび0-9)で構成される必要があります。添付ファイルまたはラージ・オブジェクト・データのロードに使用される属性のデータ型によって、使用するフォルダが決まります。たとえば、文書レコード・オブジェクトの「ファイル」属性は、添付ファイルのロードに使用され、BLOBのデータ型を持ちます。したがって、添付ファイルとして文書レコードにロードされるファイルをBlobFilesフォルダに配置します。
次の図は、添付ファイルが含まれている場合の.zipファイルの構造の例を示しています。

この例のBlobFilesフォルダのコンテンツは、次の図に示すとおりです。

データ・ファイル
HCMデータ・ローダーの各データ・ファイルは、ビジネス・オブジェクトに固有です。ビジネス・オブジェクト階層にロードするすべてのコンポーネントを同じデータ・ファイルに提供します。たとえば、ジョブ、ジョブ有効等級、ジョブ難易度、ジョブその他情報およびジョブ国別仕様その他情報のコンポーネントをJob.datに提供します。このアプローチによって、ビジネス・オブジェクトのすべてのデータを表示できるようになります。また、このアプローチは、すべての子コンポーネントでの親参照の検証をサポートします。また、これによって個々のディレクトリが不要になり、生成する必要があるデータ・ファイルが少なくなるため、.zipファイルの構成が簡素化されます。
ファイル行命令およびファイル弁別子: 説明
データ・ファイルの各行は命令で開始し、ほとんどの行にファイル弁別子が含まれます。このトピックでは、使用可能な命令について紹介し、ファイル弁別子について説明します。
ファイル行命令
次の表は、HCMデータ・ローダーのデータ・ファイルに含めることができる命令を示しています。
命令 | 行タイプ | 説明 |
---|---|---|
METADATA |
定義 |
ビジネス・オブジェクト・コンポーネントと、データ・ファイルに値を含めるそのコンポーネントの属性を識別します |
MERGE |
データ |
Oracle HCM Cloudにマージするデータを提供します |
DELETE |
データ |
Oracle HCM Cloudからパージするビジネス・オブジェクト・コンポーネントを識別します |
SET |
制御 |
ファイルのデフォルト処理の側面を上書きします |
COMMENT |
コメント |
データ・ファイルにコメントを追加します |
ファイル弁別子
METADATA、MERGEおよびDELETEの行には、命令の適用先となるビジネス・オブジェクト・コンポーネントを識別するファイル弁別子の値が含まれる必要があります。たとえば、ジョブ・ビジネス・オブジェクトに使用可能なファイル弁別子を次の表に示します。
ビジネス・オブジェクト・コンポーネント | ファイル弁別子 |
---|---|
ジョブ |
Job |
ジョブ有効等級 |
JobValidGrade |
ジョブ難易度 |
JobEvaluation |
ジョブその他情報 |
JobExtraInfo |
ジョブ国別仕様その他情報 |
JobLegislative |
ファイル弁別子は、ファイル行の命令の直後に出現します。ビジネス・オブジェクトのHCMデータ・ローダー・テンプレートには、オブジェクトの各コンポーネントのファイル弁別子が含まれます。次の例は、ジョブ・ビジネス・オブジェクトの命令、ファイル弁別子、属性名および属性値を示しています。
METADATA|Job|EffectiveStartDate|EffectiveEndDate|SetCode|JobCode|Name
MERGE|Job|1950/01/01|4712/12/31|COMMON|CFO|Chief Financial Officer
MERGE|Job|1950/01/01|2013/01/01|COMMON|PM|Manager Projects
MERGE|Job|2013/01/02|4712/12/31|COMMON|PM|Manager Projects
MERGE|Job|1950/01/01|4712/12/31|COMMON|VP_OF_HR|VP Human Resources
MERGE|Job|1950/01/01|4712/12/31|COMMON|PROG_MGR|Program Manager
この例の場合:
-
命令METADATAまたはMERGEは、行の先頭に出現します。
-
すべての行の弁別子はJobです。
-
属性名は、METADATA行のJob弁別子の後に出現し、縦棒文字(|)で区切られます。
-
属性値は、MERGE行のJob弁別子の後に出現し、縦棒文字(|)で区切られます。
METADATA命令: 説明
HCMデータ・ローダーのデータ・ファイルのMETADATA命令は、ビジネス・オブジェクト・コンポーネントとその属性を識別します。属性は、データ・ファイルに値を含めるものです。
命令の形式
METADATA行の形式は、次のとおりです。
METADATA|<DISCRIMINATOR>|<ATTRIBUTE 1>|<ATTRIBUTE 2>|<ATTRIBUTE n>
次に例を示します。
METADATA|Job|SetCode|JobCode|JobFamilyName|JobName|EffectiveStartDate|EffectiveEndDate
制限
METADATA命令には、次の制限が適用されます。
-
METADATA行は、関連するMERGEデータ行またはDELETEデータ行の前に配置する必要があります。
-
単一のデータ・ファイルに複数のMETADATA行を含めることができます。ただし、行ごとに異なるビジネス・オブジェクト・コンポーネントを対象としている必要があります。たとえば、1つのJob.datファイルに、ジョブとジョブ有効等級のコンポーネントに対するMETADATA行を含めることができます。ただし、ジョブのMETADATA行を2つ含めることはできません。
検証
各METADATA行は、次の条件を満たしている必要があります。
-
データ・ファイル名で識別されるオブジェクトの有効な弁別子を含む。たとえば、Job.datファイルでは、METADATA行にJob、JobGrade、JobEvaluation、JobExtrainfoおよびJobLegislativeの弁別子のうちの1つが含まれる必要があります。
-
ファイル内で一意である。つまり、単一のデータ・ファイルでは、同じ弁別子の複数のMETADATA行は指定できません。
たとえば、同じデータ・ファイル内でJobGrade弁別子に2つのMETADATA行を指定すると、無効になります。
-
弁別子の有効な属性のみを含む。属性名は大/小文字が区別されますが、任意の順序で出現します。
-
1つ以上のサポートされているキー・タイプに対する属性を含む。たとえば、レコードを一意に識別するソース・キーを使用している場合は、METADATA行にSourceSystemOwnerとSourceSystemIdの属性を含める必要があります。
HCMデータ・ローダーのビジネス・オブジェクト・テンプレートには、ビジネス・オブジェクトの各コンポーネントに使用できるすべての属性が指定されたMETADATA行が含まれます。
MERGE命令: 説明
MERGE命令は、データ行を識別します。オブジェクトを作成または更新する場合はMERGE命令を使用します。HCMデータ・ローダーで適切な処理が示されます。
MERGE命令を使用する場合は、オブジェクトの一部を指定することも、全体を指定することもできます。MERGE行に指定されたデータは、既存のOracle HCM Cloudデータにマージされます。MERGE行に指定する順序は、必ずしもHCMデータ・ローダーでの処理順序と同じとはかぎりません。
命令の形式
MERGE行の形式は、次のとおりです。
MERGE|<DISCRIMINATOR>|<ATTRIBUTE 1>|<ATTRIBUTE 2>|<ATTRIBUTE n>
次に例を示します。
MERGE|Job|SE|Software Engineer|Common|2015/01/01|4712/12/31
制限
MERGE行には、次の制限が適用されます。
-
オブジェクトが有効日である場合を除いて、単一のデータ・ファイルで、同じコンポーネントに対して複数のMERGE行を指定しないでください。たとえば、同じデータ・ファイルでは、個人エスニシティ・コンポーネントを作成するMERGE行と更新するMERGE行の2つは指定できません。コンポーネントが有効日ではない場合、データは、これらの命令によって、更新されるのではなく、訂正されます。このような場合、現在のデータのみを指定できます。または、あるデータ・ファイルにレコードを作成して、別のデータ・ファイルで更新できます。
注意: HCMデータ・ローダーでは、個々のファイル行ではなく、グループ関連の行が処理されます。ファイル行は有効開始日の順序で処理されるため、このグループ化は有効日レコードに対して機能します。 -
同じファイルにMERGE命令とDELETE命令を含めることができますが、これらの対象を同じ論理レコードにすることはできません。たとえば、MERGE命令とDELETE命令を同時に使用する場合は、単一ジョブなどの同じコンポーネントの複数の有効日レコードをロードできません。ただし、単一の論理オブジェクトのコンポーネントには、MERGE命令とDELETE命令の両方を指定できます。たとえば、次を指定できます。
-
就業者と個人名に対するMERGE命令
-
同じ就業者オブジェクトの個人Eメールと個人電話番号のコンポーネントに対するDELETE命令
-
検証
各MERGE行は、次の条件を満たしている必要があります。
-
同じ弁別子のMETADATA行の後に指定されている。
-
関連するMETADATA行と同じ属性を同じ順序で含む。
-
METADATA行にない属性の値は含まない。
-
いずれかのサポートされているキー・タイプを使用した、それ自体の一意の識別子を含む。また、子コンポーネントの各データ行には、その親に対する一意の参照が含まれる必要があります。たとえば、GradeRateValueには、その関連するGradeRateに対する一意の参照が含まれる必要があります。
DELETE命令: 説明
DELETE命令は、Oracle HCM Cloudからパージするビジネス・オブジェクト・コンポーネントを識別します。コンポーネントは、HCMデータ・ローダーを使用して事前にロードされている必要はありません。
命令の形式
DELETE命令の形式は、次のとおりです。
DELETE|<DISCRIMINATOR>|<ATTRIBUTE 1>|<ATTRIBUTE 2>|ATTRIBUTE n>
次に例を示します。
METADATA|JobFamily|EffectiveStartDate|EffectiveEndDate|JobFamilyName
DELETE|JobFamily|2012/10/01|4712/12/31|Sales01
制限
DELETE命令には、次の制限が適用されます。
-
ビジネス・オブジェクトまたはビジネス・オブジェクトのコンポーネントを削除できます。ただし、個々の有効日レコードは削除できません。
-
単一のデータ・ファイルでは、同じレコードに対するMERGE命令とDELETE命令は指定できません。HCMデータ・ローダーで命令が処理される順序は、予測できません。
-
削除されたレコードはリカバリできません。したがって、データを削除して再作成するよりも、訂正を試みてください。
-
すべてのビジネス・オブジェクト・コンポーネントを削除できるわけではありません。削除のサポートの詳細は、「データ交換」作業領域の「データ・ロードの開始」ページで入手できるビジネス・オブジェクトの詳細を参照してください。
SET命令
SET命令は.datファイルではオプションとなり、弁別子がありません。SET命令を使用して、これらの命令が含まれるファイルのデフォルト処理を変更します。任意の数のSET命令を.datファイルに含めることができますが、最初のMETADATA行の前に配置する必要があります。このトピックでは、どのようなときにSET命令を使用するかについて説明します。
次の表では、すべての.datファイルに含めることができるSET命令について説明しています。
命令 | デフォルト値 |
---|---|
|
|
|
縦棒( |
|
バックスラッシュ( |
|
|
次の表では、Worker.datにのみ含めることができるSET命令について説明しています。
命令 | デフォルト値 |
---|---|
|
|
|
|
|
該当なし |
|
|
- SET CALCULATE_FTE
-
Worker.datファイル内のすべての就業者アサイメントについて常勤換算(FTE)値の自動計算を要求するには、
SET CALCULATE_FTE
命令を含めます。次に例を示します。SET CALCULATE_FTE Y
- SET CREATE_DEFAULT_WORKING_HOUR_PATTERN
-
Worker.datファイル内のすべての就業者アサイメントについてデフォルトの勤務時間パターンの自動作成を要求するには、
SET CREATE_DEFAULT_WORKING_HOUR_PATTERN
命令を含めます。次に例を示します。SET CREATE_DEFAULT_WORKING_HOUR_PATTERN Y
- SET DISABLE_POST_PROCESS_TASKS
-
デフォルトでは、これらのプロセスは、就業者をロードした後に自動的に実行されます。
-
マネージャ階層のリフレッシュ
-
個人検索キーワードの更新
「マネージャ階層のリフレッシュ」が自動的に実行されないようにするには、Worker.datファイルにこのSET命令を含めます。
SET DISABLE_POST_PROCESS_TASKS RefreshManagerHierarchy
「個人検索キーワードの更新」が自動的に実行されないようにするには、Worker.datファイルにこのSET命令を含めます。
SET DISABLE_POST_PROCESS_TASKS UpdatePersonSearchKeywords
ヒント: 両方のプロセスが自動的に実行されないようにするには、SET INVOKE_POST_PROCESS
命令を使用します。 -
- SET FILE_DELIMITER
-
この命令を使用して、デフォルトのファイル・デリミタである縦棒(|)を変更します。たとえば、これをカンマに変更するには、次の命令を含めます。
SET FILE_DELIMITER ,
最大で10文字の新しい値を指定できます。
- SET FILE_ESCAPE
-
この命令を使用して、デフォルトのファイル・エスケープ文字であるバックスラッシュ(|)を変更します。たとえば、これを等号(=)に変更するには、次の命令を含めます。
SET FILE_ESCAPE =
最大で10文字の新しい値を指定できます。
- SET FILE_NEWLINE
-
この命令を使用して、デフォルトのファイル改行文字である
n
を変更します。たとえば、これを文字列newline
に変更するには、次の命令を含めます。SET FILE_NEW_LINE newline
最大で10文字の新しい値を指定できます。
- SET INVOKE_POST_PROCESS
-
デフォルトでは、これらのプロセスは、就業者をロードした後に自動的に実行されます。
-
マネージャ階層のリフレッシュ
-
個人検索キーワードの更新
両方のプロセスが自動的に実行されないようにするには、Worker.datファイルにこのSET命令を含めます。
SET INVOKE_POST_PROCESS N
-
- SET PURGE_FUTURE_CHANGES
-
有効日コンポーネントを含むビジネス・オブジェクトを作成する場合は、この命令をファイルの先頭に含めます。
SET PURGE_FUTURE_CHANGES Y
この命令により、有効日メンテナンス・モードが「置換」に設定されます。デフォルト・モードであるこのモードでは、既存のすべてのデータが.datファイルの内容に置き換えられます。
有効日コンポーネントを含むビジネス・オブジェクトを更新する場合は、この命令をファイルの先頭に含めます。
SET PURGE_FUTURE_CHANGES N
この命令により、有効日メンテナンス・モードが保持に設定されます。このモードでは、既存の先日付の変更がすべて保持されます。
SET命令の説明
この項では、すべてのSET命令とその説明をアルファベット順のリストで示します。
テンプレート・ファイルの生成および使用方法: 手順
HCMデータ・ローダーでは、サポートされるビジネス・オブジェクト階層ごとにテンプレート・ファイルが提供されます。テンプレートには次が含まれます。
-
ビジネス・オブジェクトとそのバージョンおよびファイルの作成日を示すCOMMENT行。
-
ビジネス・オブジェクトに対してロードできる、ビジネス・オブジェクト階層の各コンポーネントのMETADATA行。このMETADATA行には、環境固有の構成済フレックスフィールド属性を含む、コンポーネントのすべての属性が含まれます。
独自のデータ・ファイルを基礎として、テンプレート・ファイルを生成して使用できます。このトピックでは、テンプレート・ファイルを生成して使用する方法について説明します。
単一のテンプレート・ファイルの生成
次の手順に従います。
-
「データ交換」作業領域を開き、「タスク」パネル・タブで「データ・ロードの開始」タスクを選択します。
デフォルトでは、「データ・ロードの開始」ページに、HCMデータ・ローダーでサポートされるすべてのビジネス・オブジェクトがリストされます。ロード順序またはオブジェクト名で、リストをソートできます。また、特定のオブジェクトの名前を「ビジネス・オブジェクト」列の検索フィールドに入力し、[Enter]を押して、該当オブジェクトを取得することもできます。
-
ビジネス・オブジェクト表でオブジェクト行を選択し、「テンプレートの生成」をクリックします。
-
「スケジュール」ページで、「送信」をクリックします。「OK」をクリックして、「確認」ダイアログ・ボックスを閉じます。
「送信」をクリックすると、ビジネス・オブジェクトのシェイプを識別してテンプレート・ファイルを生成するプロセスが開始します。「データ・ロードの開始」ページの「プロセス」タブで、進捗を監視できます。
-
「ビジネス・オブジェクト」タブで、「リフレッシュ」アイコンをクリックします。
テンプレートが存在するようになると、「ファイル」列にアイコンが表示されて、「最終生成」列にタイム・スタンプが表示されます。
-
「ファイルのダウンロード」アイコンをクリックして、テンプレートをダウンロードします。
すべてのビジネス・オブジェクトのテンプレート・ファイルの生成
次の手順に従います。
-
「データ・ロードの開始」ページで、「テンプレートの生成」ボタンをクリックします。
-
「スケジュール」ページで、「送信」をクリックします。
-
生成プロセスが完了すると、テンプレートを個別にダウンロードできます。「データ・ロードの開始」ページの「ビジネス・オブジェクト」タブで、オブジェクトに対して「ファイルのダウンロード」アイコンをクリックします。または、次の手順に従って、生成したテンプレートを含む単一の.zipファイルをダウンロードします。
-
「データ・ロードの開始」ページで「プロセス」タブを選択します。
-
プロセスに対して「ファイルのダウンロード」アイコンをクリックします。
-
テンプレート・ファイルの使用方法
テンプレート・ファイルによって、フレックスフィールド・セグメントなどの環境固有の属性の名前を含む、ビジネス・オブジェクトのすべての使用可能な属性の名前が識別されます。テンプレート・ファイルからMETADATA行を単純にコピーして独自のデータ・ファイルで使用しないでください。かわりに、次のものをデータ・ファイルに含めます。
-
ロードするコンポーネントのMETADATA行
-
指定する値の属性名
データを指定する対象の属性のみを宣言することで、インポート・プロセスとロード・プロセスの速度と効率性を改善できます。使用しないMETADATA行と属性名を削除します。
HCMデータ・ローダーでは、すべてのMETADATA行のすべての属性名が検証されます。また、METADATAに指定された属性のレビューにより、同じ.zipファイルの他のビジネス・オブジェクトへの潜在的な依存性も特定されます。たとえば、Job.datファイルには、「等級ID」属性を持つジョブ有効等級コンポーネントに対するMETADATA行が含まれる場合があります。この場合、HCMデータ・ローダーで、Job.datファイルに等級への潜在的な依存性があるとみなされます。
データ・ファイルの命令および提供に関するFAQ
オブジェクトの作成時にデータを提供するには、どうすればよいですか。
.zipファイルごとに1つのオブジェクトを提供します。たとえば、.zipファイルをジョブに対して1つ、就業者に対して1つ、などのように作成します。「データ・ロードの開始」ページで推奨ロード順序をレビューして、その順序でオブジェクトをロードします。データ参照エラーを回避するために、次のオブジェクトをロードする前に、すべてのエラーを修正します。
増分更新のデータを提供するには、どうすればよいですか。
変更された属性値と必須の属性値のみを指定します。同じ.zipファイルで、すべてのビジネス・オブジェクト・ファイルを提供します。HCMデータ・ローダーによってそれらが正しい順序で処理され、参照データが、それを参照するデータの前にロードされます。
.datファイルにコメントを含めることができますか。
はい。COMMENT命令を使用して、.datファイルにコメントを追加します。
次に例を示します。
COMMENT Data for Business Object: Job Version: V2 Created on: 25-03-2017
COMMENT命令はファイル内の任意の場所に任意の数含めることができます。処理に影響を与えることはありません。