報酬計算
このFormulaタイプを使用して、資格、補償範囲または福利厚生、およびレート計算に使用する総合報酬額を決定できます。
コンテキスト
このタイプのFormulaでは、次のようなコンテキストを利用できます。
- BUSINESS_GROUP_ID ( ENTERPRISE_ID)
- EFFECTIVE_DATE
- HR_ASSIGNMENT_ID
- PERSON_ID
- LER_ID
- ORGANIZATION_ID
- JURISDICTION_CODE
- PGM_ID
- PL_ID
- PL_TYP_ID
- OPT_ID
- LER_ID
データベース・アイテム
このタイプのFormulaで使用可能な次のデータベース・アイテムのみを使用します。
- 表の属性列を除くすべての列: ben_ler_f、ben_pgm_f、ben_pl_f、ben_opt_f、ben_pl_typ_f
- 個人のアサイメントに基づくデータベース・アイテム- HR_ASSIGNMENT_IDおよびPERSON_ID。
入力変数
このタイプのFormulaでは、入力変数を使用できます。
入力 | データ型 | 必須 | 摘要 |
---|---|---|---|
PERSON_ID | 数値 | 入力値としてのPerson ID |
戻り変数
戻り変数には事前定義の名前を使用します。このタイプのFormulaでは、次のような戻り変数を利用できます。
戻り値 | データ型 | 必須 | 摘要 |
---|---|---|---|
L_OUTPUT | 数値 | 必須 | 戻り変数 |
エラー
他の出力値が返された場合、加入プロセスはBEN_91329_FORMULA_RETURNでエラーになります。
サンプルFormula 1:
Formula名: BEN_COMP_CALC
Formulaタイプ: 報酬計算
説明: 総年俸を計算します。
DEFAULT for CMP_ASSIGNMENT_SALARY_AMOUNT is 0
DEFAULT for CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR is 0
l_output = 0
l_sal = CMP_ASSIGNMENT_SALARY_AMOUNT
l_ann_fctr = CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR
l_output = l_sal * l_ann_fctr
Return l_output
サンプルFormula 2:
Formula名: BEN_COMP_CALC_BAR_UNIT
Formulaタイプ: 報酬計算
説明: 交渉団体に基づいて総年間給与を計算します。
DEFAULT for CMP_ASSIGNMENT_SALARY_AMOUNT is 0
DEFAULT for CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR is 0 DEFAULT for PER_ASG_BARGAINING_UNIT_CODE is ‘xyz’
l_output = 0
l_sal = CMP_ASSIGNMENT_SALARY_AMOUNT
l_ann_fctr = CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR l_unit = PER_ASG_BARGAINING_UNIT_CODE
if (l_unit = ‘Technical Unit’ or l_unit = ‘Service Unit’) then l_output = (l_sal * l_ann_fctr ) * 1.1 else
l_output = (l_sal * l_ann_fctr ) * 1.05
Return l_output
サンプルFormula 3:
Formulaタイプ: 報酬計算
DEFAULT FOR PER_ASG_FTE_VALUE IS 0
DEFAULT FOR CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR IS 0
DEFAULT FOR CMP_ASSIGNMENT_SALARY_AMOUNT IS 0
l_cmp_amt = CMP_ASSIGNMENT_SALARY_AMOUNT
l_ann_sal= 0
l_ann_fctr = CMP_ASSIGNMENT_SALARY_ANNUALIZATION_FACTOR
l_fte = PER_ASG_FTE_VALUE
IF (l_ann_fctr > 1) THEN
(
l_ann_sal=(l_cmp_amt * l_fte * l_ann_fctr)
)
ELSE
(
l_ann_sal=(l_cmp_amt * l_ann_fctr)
)
RETURN l_ann_sal
サンプルFormula 4:
Formulaタイプ: 報酬計算
説明: 役員は、福利厚生バランスから報酬を選択します(すでに定義されている場合)。
DEFAULT FOR CMP_ASSIGNMENT_SALARY_ANNUAL_AMOUNT IS 0
DEFAULT_DATA_VALUE FOR BEN_PBB_BNFTS_BAL_NAME_TN IS 'NA'
DEFAULT_DATA_VALUE FOR BEN_PBB_VAL_NN IS 0
DEFAULT FOR BEN_PIL_LF_EVT_OCRD_DT IS '1951/01/01 00:00:00' (date)
l_ann_sal = CMP_ASSIGNMENT_SALARY_ANNUAL_AMOUNT
l_lf_evt_ocrd_dt = BEN_PIL_LF_EVT_OCRD_DT
i=1
l_bal = 0
l_val = 0
while BEN_PBB_BNFTS_BAL_NAME_TN.exists(i)
loop
(
IF BEN_PBB_BNFTS_BAL_NAME_TN[i] = 'Executive Salary' THEN
(
l_bal = BEN_PBB_VAL_NN[i]
exit
)
i=i+1
) /* end while */
l_val = l_bal/12
IF l_val = 0 THEN
( l_val = l_ann_sal/12)
RETURN l_val