レート値計算
この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では入力変数を使用できません。
戻り変数
戻り変数には事前定義の名前を使用します。このタイプのFormulaでは、次のような戻り変数を利用できます。
戻り値 | データ型 | 必須 | 摘要 |
---|---|---|---|
L_RATE | 数値 | 必須 | 返還率 |
エラー
他の出力値が返された場合、加入プロセスはBEN_91329_FORMULA_RETURNでエラーになります。
サンプルFormula 1:
Formula名: BEN_RT_CALC
Formulaタイプ: レート値計算
説明: レート量は、息子と娘の数と配偶者に基づいて決定されます。
default for l_sons is 0
default for l_spouse is 0
default for l_daughters is 0
l_rate = 0
l_sons = ben_fn_get_char_value(
' PER_CONTACT_RELSHIPS_F'
, 'SON_COUNT'
,NULL
,NULL
, 'LEGISLATION_CODE' ,'US'
)
l_daughters = ben_fn_get_char_value(
' PER_CONTACT_RELSHIPS_F'
, 'DAUGHTER_COUNT'
,NULL
,NULL
, 'LEGISLATION_CODE' ,'US'
)
l_spouse = ben_fn_get_char_value(
' PER_CONTACT_RELSHIPS_F'
, 'SPOUSE_COUNT'
,NULL
,NULL
, 'LEGISLATION_CODE' ,'US'
)
if ( l_spouse = 0 and l_sons= 0 and l_daughters = 0 ) then l_rate = 80 )
if (l_spouse = 1 and l_sons= 0 and l_daughters = 0) then (l_rate = 100 )
if (l_spouse = 1 and (l_sons> 0 or l_daughters > 0)) then ( l_rate = 150 )
return l_rate
サンプルFormula 2:
Formula名: BEN_RT_CALC2
Formulaタイプ: レート値計算
説明: Formulaでは、プラン設計に基づいてレートが導出されます。
Default for BEN_PLN_NAME is 'ABC'
Default for BEN_OPT_NAME is 'ABC'
l_pl_name = BEN_PLN_NAME
l_opt_name = BEN_OPT_NAME
l_rate = 0
if ( l_pl_name = 'Aetna PPO' and l_opt_name = 'Employee Only' ) then ( l_rate = 50 )
if ( l_pl_name = 'Aetna PPO' and l_opt_name = 'Employee + Family' ) then ( l_rate = 100 )
if ( l_pl_name = 'Be Healthy HMO' and l_opt_name = 'Employee + Family' ) then ( l_rate = 110 )
if ( l_pl_name = 'Be Healthy HMO' and l_opt_name = 'Employee Only' ) then
( l_rate = 60 )
Else
( l_rate = 90 )
return l_rate
サンプルFormula 3:
Formulaタイプ: レート値計算
説明: 福利厚生バランスに基づいてレートを計算します。
DEFAULT_DATA_VALUE FOR BEN_PBB_BNFTS_BAL_NAME_TN IS 'XXX'
DEFAULT_DATA_VALUE FOR BEN_PBB_VAL_NN IS 0
Default for BEN_PBB_VAL is 0
l_BEN_PBB_VAL = 0
j=1
l_rate= 1062.32
WHILE (BEN_PBB_BNFTS_BAL_NAME_TN.EXISTS(j)) LOOP
(
IF (BEN_PBB_BNFTS_BAL_NAME_TN[j] = 'HEALTH_BAL') then
( l_BEN_PBB_VAL = BEN_PBB_VAL_NN[j] )
j=j+1
)
if (l_BEN_PBB_VAL = 2)
THEN
(
l_rate = l_rate + 25
)
return l_rate