レート値計算

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