グローバル有給休暇累積マトリックスFormula
グローバル有給休暇マトリックスFastFormulaは、有給休暇マトリックスとともに使用して、区分変更日割、常勤換算日割などの要件を実装できます。
組織によっては、プランに登録された従業員が等級に基づいて毎年日数を累計できる休暇プランを設定する場合があります。 等級が期間中に変更された場合、就業者が各区分で費やした時間に基づいて合計有給休暇を按分する必要があります。 これを行うには、等級に基づく有給休暇マトリックスを定義し、有給休暇イベントFormulaと有給休暇マトリックスFormulaの組合せを使用します。
HCM Cloudの構成ポイント
このFormulaを作成した場合は、このFormulaを休暇欠勤プラン定義に関連付けることができます。
ナビゲーション
- 「休暇欠勤管理」作業領域で、「休暇欠勤プラン」をクリックして「休暇欠勤プラン」ページを開きます。
- 「検索結果」セクションのツールバーで、「作成」をクリックして「休暇欠勤プランの作成」ダイアログ・ボックスを開きます。
- 「プラン・タイプ」フィールドで、「有給休暇」を選択します。
- 「続行」をクリックします。
- 「休暇欠勤プランの編集」ページの「有給休暇」タブには、「有給休暇マトリックス」セクションに表があります。
- 表の「有給休暇Formula」列で定義済のFormulaを選択します。
コンテキスト
このFormulaタイプでは、次のコンテキストを使用できます。
コンテキスト名 | データ型 |
---|---|
ABSENCE_ENTRY_ID | 数値 |
ABSENCE_TYPE_ID | 数値 |
ACCRUAL_PLAN_ID | 数値 |
DATE_EARNED | 日付 |
EFFECTIVE_DATE | 日付 |
END_DATE | 日付 |
ENTERPRISE_ID | 数値 |
HR_ASSIGNMENT_ID | 数値 |
HR_RELATIONSHIP_ID | 数値 |
HR_TERM_ID | 数値 |
JOB_ID | 数値 |
LEGAL_EMPLOYER_ID | 数値 |
LEGISLATIVE_DATA_GROUP_ID | 数値 |
ORGANIZATION_ID | 数値 |
PAYROLL_ASSIGNMENT_ID | 数値 |
PAYROLL_ID | 数値 |
PAYROLL_RELATIONSHIP_ID | 数値 |
PAYROLL_TERM_ID | 数値 |
PERSON_ID | 数値 |
START_DATE | 日付 |
入力値
変数名 | データ型 | 摘要 |
---|---|---|
IV_ACCRUAL | 数値 | 有給休暇マトリックスから受け取った有給休暇値。 |
IV_CARRYOVER | 数値 | 有給休暇マトリックスから受け取った繰越限度。 |
IV_CEILING | 数値 | 有給休暇マトリックスから受け取った上限。 |
IV_ACCRUALPERIODSTARTDATE | 日付 | 有給休暇期間の開始日。 |
IV_ACCRUALPERIODENDDATE | 日付 | 有給休暇期間の終了日。 |
IV_CALEDARSTARTDATE | 日付 | 有給休暇カレンダ年の開始日。 |
IV_CALEDARENDDATE | 日付 | 有給休暇カレンダ年の終了日。 |
IV_PLANENROLLMENTSTARTDATE | 日付 | 登録の開始日。 |
IV_PLANENROLLMENTENDDATE | 日付 | 登録の終了日。 |
IV_BAND_CHG_DT1* | 日付 | 有給休暇マトリックス区分定義が勤続期間または年齢の等級または導出要因で構成されている場合、この入力値では、期間内のこれらの要因のいずれかで就業者が変更した日付がフェッチされます。 |
IV_BAND_CHG_BEFVAL1* | 数値 | IV_BAND_CHG_DT1より前のマトリックスに基づく有給休暇値。 |
IV_BAND_CHG_AFTVAL1* | 数値 | IV_BAND_CHG_DT1の後のマトリックスに基づく有給休暇値。 |
IV_EVENT_DATES | Date_Number | 有給休暇イベントFormulaによって返される日付の配列。 |
IV_ACCRUAL_VALUES | Number_Number | 有給休暇イベント日付配列に含まれる日付時点で有給休暇マトリックスからフェッチされた有給休暇値の配列。 |
IV_ACCRUAL_CEILING | 数値 | 有給休暇マトリックスからの年間有給休暇限度。 |
戻り変数
変数名 | データ型 | 摘要 |
---|---|---|
accrual | 数値 | 特定の期間に就業者が累積できる有給休暇の金額。 |
ceiling | 数値 | 就業者が累積できる最大時間。 |
carryover | 数値 | 次の有給休暇期間に移動できる最大未使用時間。 |
adjustmentvalues |
Number_Number | Formulaから戻された場合に有給休暇プラン登録に適用されるバランス調整の配列。 |
adjustmentdates |
Date_Number | バランス調整値の配列に関連付けられた日付の配列で、各バランス調整を適用する必要がある日付を指定します。 |
adjustmenttypes |
Text_Number | バランス調整に使用される修正事由の配列。 |
absvalues |
Number_Number | 有給休暇プラン登録に適用できる有給休暇使用の配列。 休暇欠勤エントリ自体がGlobal Absence Managementで取得されず、他のモジュール(給与エレメント・エントリなど)やサード・パーティ・システム、および有給休暇プランに対する休暇欠勤控除がHCM Cloudで発生する必要がある場合に便利です。 これを使用する場合は、同じ日付に対して休暇欠勤エントリを作成しないように注意してください。 |
absdates |
Date_Number | 控除が適用される有給休暇使用に関連付けられた日付の配列です。 |
accrualCeiling | 数値 | 就業者が累積できる最大時間 |
サンプルFormula
要件: 組織には、休暇の有給休暇プランがあり、その場合、従業員は、現在の等級レベルに応じて毎年一定の日数を累積します。 従業員が1年以内に等級を変更する場合、各等級に費やされた日数に応じて有給休暇を按分する必要があります。 また、合計有給休暇の値は、FTEで按分して小数第2位に端数処理する必要があります。
解決策: 次のようなグローバル有給休暇マトリックスFormulaを使用できます。
Formula名: ANC_ACCMAT
Formulaタイプ: グローバル有給休暇累積マトリックスFormula
説明: このFormulaは、区分変更日割を伴う休暇プランの按分済有給休暇値を返します。
DEFAULT FOR IV_CALEDARSTARTDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_CALEDARENDDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_EVENT_DATES IS EMPTY_DATE_NUMBER
DEFAULT FOR IV_ACCRUAL_VALUES IS EMPTY_NUMBER_NUMBER
DEFAULT FOR PER_ASG_FTE_VALUE IS 1
INPUTS ARE IV_ACCRUAL, IV_EVENT_DATES, IV_ACCRUAL_VALUES, IV_CALEDARSTARTDATE (date), IV_CALEDARENDDATE (date)
i = 1
j = 2
ln_accrual_total = 0
WHILE IV_EVENT_DATES.EXISTS(j)
LOOP
(
ln_accrual_total = ln_accrual_total + ( (DAYS_BETWEEN(IV_EVENT_DATES[j], IV_EVENT_DATES[i]) + 1) * IV_ACCRUAL_VALUES[i] )
i = i+1
j = j+1
)
ln_term_duration = DAYS_BETWEEN(IV_CALEDARENDDATE, IV_CALEDARSTARTDATE) + 1
ln_accrual = PER_ASG_FTE_VALUE * (ln_accrual_total / ln_term_duration)
accrual = ROUND(ln_accrual, 2)
RETURN accrual