報酬計算

この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