給与変換Formulaの操作
変換Formulaは、入力データを処理するために必要な様々なコンポーネントを導出するために複数回起動されます。
この表は、Formulaで行うことができる各種の操作について説明しています。
操作タイプ |
戻り値 |
例 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
デリミタ
値を区切るデフォルトのデリミタは、パイプ文字です。 ファイルで異なるデリミタが使用されている場合は、そのデリミタをFormulaで設定する必要があります。
次の例では、デリミタとしてカンマが指定されています。
/* Calculations */
IF OPERATION='FILETYPE' THEN
OUTPUTVALUE='DELIMITED'
ELSE IF OPERATION='DELIMITER' THEN
OUTPUTVALUE=','
MAP
MAP操作は、特定のオブジェクトに関連する戻り値を定義します。 この戻り値は、アプリケーションでそのオブジェクトに指定されている属性と同じ名前である必要があります。
たとえば、次のRETURN値を使用して、エレメント・エントリのdatファイルを生成できます。
RETURN BusinessOperation,FileDiscriminator,FileName,AssignmentId,AssignmentNumber,CreatorType,DateEarned,EffectiveEndDate,EffectiveStartDate,ElementEntryId,ElementName,ElementTypeId,EntryType,GUID,LegislativeDataGroupId,LegislativeDataGroupName,MultipleEntryCount,Reason,SourceSystemId,SourceSystemOwner,Subpriority
ここで、BusinessOperation
はMERGEに設定され、BusinessObject
はエレメント・エントリに設定されています。
METADATALINEINFORMATION
値をMETADATALINEINFORMATION
に指定したかどうかにより、すべての定義済属性を使用して、または指定した属性のみを使用してファイルが生成されます。
-
METADATALINEINFORMATION
の値を指定しない場合、ビジネス・オブジェクトのすべての定義済属性を使用して、変換済ファイルにMETADATLINE
が生成されます。 -
値を指定すると、変換済ファイルには指定した属性のみが含まれます。
METADATALINEINFORMATION
操作の場合は、Formulaで処理されるビジネス・オブジェクトごとに配列を指定します。 配列の数は、NUMBEROFBUSINESSOBJECTS
操作で指定した数と一致する必要があります。 配列の名前は、番号がサフィクスとなっているMETADATA
でなければなりません。 たとえば、NUMBEROFBUSINESSOBJECTS
が2の場合は、RETURN METADATA1
, METADATA2
です。
ノート: 配列内の最初の2つのエントリは、ビジネス・オブジェクトのFileName
およびFileDiscriminator
を指定するために予約されています。
また、METADATALINEINFORMATION
には、そのビジネス・オブジェクト用に特殊文字を含む属性を指定できます。
この例では、BalAdjBatchId(SourceSystemId)
にカッコが付いています。
ファイルにフレックスフィールド参照またはSourceSystem参照が含まれている場合、アプリケーションでは出力パラメータ名と属性のデフォルト・マッピングを解決できません。
構文jobEffSegment1(PER_JOBS_EIT_EFF=context)
について考えてみましょう。 この構造がHCMデータ・ローダー・ファイルで生成されるようにするには、変換FormulaでMETADATA
行を定義します。 出力に出現するビジネス・オブジェクトごとに、配列でMETADATA
コンテンツを定義する必要があります。
例:
METADATA2[1] = 'Job' /*FileName*/
METADATA2[2] = 'JobExtraInfo' /*FileDiscriminator*/
METADATA2[3] = 'EffectiveStartDate'
METADATA2[4] = 'EffectiveEndDate'
METADATA2[5] = 'JobCode'
METADATA2[6] = 'SetCode'
METADATA2[7] = 'FLEX:PER_JOBS_EIT_EFF'
METADATA2[8] = 'EFF_CATEGORY_CODE'
METADATA2[9] = 'InformationType'
METADATA2[10] = 'JeiInformationCategory'
METADATA2[11] = 'LegislationCode'
METADATA2[12]= 'SequenceNumber'
METADATA2[13]= 'jobEffSegment1(PER_JOBS_EIT_EFF=job-eff-context)'
生成されたHCMデータ・ローダー・ファイルは次のようになります。
METADATA|JobExtraInfo|EffectiveStartDate|EffectiveEndDate|JobCode|SetCode|FLEX:PER_JOBS_EIT_EFF|EFF_CATEGORY_CODE|InformationType|JeiInformationCategory|LegislationCode|SequenceNumber|jobEffSegment1(PER_JOBS_EIT_EFF=job-eff-context)
NUMBEROFBUSINESSOBJECTS
この操作は、Formulaで処理されるビジネス・オブジェクトの数を示します。