項目Formulaタイプ
総合報酬項目Formulaは、その他の事前定義項目ソース・タイプに格納されていない報酬情報を決定します。
このFormulaは、「報酬項目の作成」または「報酬項目の編集」ページで報酬項目を管理するときに選択します。 文書を生成する前に、「検証」ボタンをクリックして報酬項目に対する期待を検証してください。
このタイプのFormulaでは、次のようなコンテキストを利用できます。
-
DATE_EARNED
-
EFFECTIVE_DATE
-
END_DATE
-
START_DATE
-
HR_ASSIGNMENT_ID
-
HR_TERM_ID
-
JOB_ID
-
LEGISLATIVE_DATA_GROUP_ID
-
COMPENSATION_RECORD_TYPE
-
ORGANIZATION_ID
-
PAYROLL_ASSIGNMENT_ID
-
PAYROLL_RELATIONSHIP_ID
-
PAYROLL_TERM_ID
-
PERSON_ID
個人、アサイメント、給与、エレメント・エントリ、報酬レコード、開始日、および終了日に関係するデータベース・アイテムは、このタイプのFormulaで使用できます。
このタイプのFormulaでは、次のような入力変数を利用できます。
入力パラメータ |
データ型 |
必須 |
説明 |
---|---|---|---|
CMP_IV_PERIOD_ID |
文字 |
Y |
期間ID |
CMP_IV_PERIOD_START_DATE |
日付 |
Y |
文書期間開始日 |
CMP_IV_PERIOD_END_DATE |
日付 |
Y |
文書期間終了日 |
このタイプのFormulaでは、次のような戻り変数を利用できます。
戻り値 |
データ型 |
必須 |
説明 |
---|---|---|---|
COMPENSATION_DATES |
日付 |
Y |
セミコロンで区切られた1~15個のトランザクション日。最大250文字。 |
VALUES |
文字 |
Y |
セミコロンで区切られた1~15個のトランザクション値。最大250文字。 値と日付は同じ個数でなければならない。 |
ASSIGNMENTS |
文字 |
N |
セミコロンで区切られた1~15個のトランザクション・アサイメント。最大250文字。 アサイメントと日付は同じ個数でなければならない。 区切り文字を「; ;」のように使用して、スペースを返すことができる。 |
LEGALEMPLOYERS |
文字 |
N |
セミコロンで区切られた1~15個の法的雇用主ID。最大250文字。 アサイメントと日付は同じ個数でなければならない。 区切り文字を「; ;」のように使用して、スペースを返すことができる。 |
UNIT | 文字 | N | 各値に4つのオプション変数が用意されています。各変数は";"で区切られた複数の値を持つことができます。 通貨コードは通貨ユニットから返すことができます。 |
COMPENSATION_DATES1 |
日付 |
Y |
トランザクション日の2つ目の変数で、250文字の上限を超えた場合の16~30個めの変数。 |
VALUES1 |
文字 |
Y |
トランザクション値の2つ目の変数で、250文字の上限を超えた場合の16~30個めの変数。 |
ASSIGNMENTS1 |
文字 |
N |
トランザクション・アサイメントの2つ目の変数で、250文字の上限を超えた場合の16~30個めの変数。 |
LEGALEMPLOYERS1 |
文字 |
N |
法的雇用主IDの2つ目の変数で、250文字の上限を超えた場合の16~30個めの変数。 |
UNIT1 | 文字 | N | 各値に4つのオプション変数が用意されています。各変数は";"で区切られた複数の値を持つことができます。 通貨コードは通貨ユニットから返すことができます。 |
COMPENSATION_DATES2 |
日付 |
Y |
31~45個めのトランザクション日。 |
VALUES2 |
文字 |
Y |
31~45個めのトランザクション値。 |
ASSIGNMENTS2 |
文字 |
N |
31~45個めのトランザクション・アサイメント。 |
LEGALEMPLOYERS2 |
文字 |
N |
31~45個めの法的雇用主。 |
UNIT2 | 文字 | N | 各値に4つのオプション変数が用意されています。各変数は";"で区切られた複数の値を持つことができます。 通貨コードは通貨ユニットから返すことができます。 |
COMPENSATION_DATES3 |
日付 |
Y |
46~60個めのトランザクション日。 |
VALUES3 |
文字 |
Y |
46~60個めのトランザクション値。 |
ASSIGNMENTS3 |
文字 |
N |
46~60個めのトランザクション・アサイメント。 |
LEGALEMPLOYERS3 |
文字 |
N |
46~60個めの法的雇用主。 |
UNIT3 | 文字 | N | 各値に4つのオプション変数が用意されています。各変数は";"で区切られた複数の値を持つことができます。 通貨コードは通貨ユニットから返すことができます。 |
このサンプルFormulaは、就業者IDに基づいて日付を1つと値を1つ返します。
/*******************************************************************
FORMULA NAME : Total Compensation Simple Item Formula
FORMULA TYPE : Total Compensation Item
DESCRIPTION : Returns one date and one value.
*******************************************************************/
/*=========== INPUT VALUES DEFAULTS BEGIN =====================*/
INPUTS ARE CMP_IV_PERSON_ID (text), CMP_IV_PERIOD_START_DATE (date), CMP_IV_PERIOD_END_DATE (date)
DEFAULT FOR CMP_IV_PERSON_ID IS '-1'
DEFAULT FOR CMP_IV_PERIOD_START_DATE IS '4712/12/31' (date)
DEFAULT FOR CMP_IV_PERIOD_END_DATE IS '4712/12/31' (date)
/*============ INPUT VALUES DEFAULTS ENDS =====================*/
/*=================== FORMULA SECTION BEGIN =================*/
COMPENSATION_DATES = '2005/01/01'
VALUES = '500.00'
ASSIGNMENTS = to_char(get_context(HR_ASSIGNMENT_ID,-1))
RETURN COMPENSATION_DATES, VALUES, ASSIGNMENTS
/*================ FORMULA SECTION END =======================*/
このサンプルFormulaは複数の変数を返します。
/*******************************************************************
FORMULA NAME : Total Compensation Multi Item Formula
FORMULA TYPE : Total Compensation Item
DESCRIPTION : Returns multiple variables.
*******************************************************************/
/*=========== INPUT VALUES DEFAULTS BEGIN =====================*/
INPUTS ARE CMP_IV_PERSON_ID (text), CMP_IV_PERIOD_START_DATE (date) , CMP_IV_PERIOD_END_DATE (date)
/*=========== INPUT VALUES DEFAULTS ENDS =====================*/
/*================= FORMULA SECTION BEGIN =================*/
COMPENSATION_DATES = '2009/01/01;2009/02/01;2009/03/01'
COMPENSATION_DATES1 = '2009/07/01;2009/08/01;2009/09/01'
COMPENSATION_DATES2 = '2009/10/01;2009/11/01;2009/12/01'
COMPENSATION_DATES3 = '2009/10/01;2009/11/01;2009/12/01'
VALUES = '200.00;200.00;300.00'
VALUES1 = '300.00;500.00;500.00'
VALUES2 = '500.00;500.00;600.00'
VALUES3 = '600.00;600.00;700.00'
/* Returns only first two assignment */
ASSIGNMENTS = ';1234567890;1234567890'
ASSIGNMENTS1 = '1234567890;1234567890;1234567890'
/* Returns last two assignments */
ASSIGNMENTS2 = ';1234567890;1234567890'
/* Returns first and last assignments */
ASSIGNMENTS3 = '1234567890;;1234567890'
LEGALEMPLOYERS = '0123456789;;0123456789'
LEGALEMPLOYERS1 = '0123456789;0123456789;0123456789'
LEGALEMPLOYERS2 = '0123456789;0123456789;0123456789'
LEGALEMPLOYERS3 = '0123456789;0123456789'
UNIT = 'USD'
UNIT1 = 'EUR'
UNIT2 = 'AUD'
UNIT3 = 'CAD'
RETURN COMPENSATION_DATES,VALUES,COMPENSATION_DATES1,VALUES1,COMPENSATION_DATES2,VALUES2,COMPENSATION_DATES3,VALUES3,ASSIGNMENTS,ASSIGNMENTS1,ASSIGNMENTS2,ASSIGNMENTS3,L
GALEMPLOYERS,LEGALEMPLOYERS1,LEGALEMPLOYERS2,LEGALEMPLOYERS3,UNIT,UNIT1,UNIT2,UNIT3
/*================ FORMULA SECTION END =======================*/