ORA_WFM_TCR_THRESHOLD_WITH_EVENT_CHANGES_MSR_AP FastFormula
このサンプルFastFormulaは、日次レポート時間を更新して超過勤務入力を含めるかどうかを決定します。その場合、既存のレポート時間が割当レコードに保存されている値に更新されます。
このFormulaの場合、割当値はOT時間しきい値という付加フレックスフィールドです。OT時間しきい値は割当Attribute2にマップされ、PER_ASG_ATTRIBUTE2データベース・アイテムから初期値を取得し、ASS_ATTRIBUTE2からイベントを取得します。また、このFormulaによって、残りのレポート時間を含む超過勤務入力が追加されます。格納された値がタイム・カード期間の途中で変更された場合、Formulaでは新しい格納された値を使用して、後続の日の超過勤務が計算されます。保存されている超過勤務値が変更されているかどうかをチェックするために、イベント・データベース・アイテムでは、タイム・カード個人、タイム・カード期間およびアサイメントOT時間しきい値フィールドにPerson IDが使用されます。このFormulaでは、配列を使用して時間データを処理します。
パラメータ
名前 | タイプ | 摘要 |
---|---|---|
WORKED_TIME_CONDITION | 時間カテゴリ | しきい値を下回る時間および超過時間の決定に使用する時間入力を識別する時間カテゴリ |
DEFAULT_HOURS_BEFORE_OVERTIME | 固定数 | デフォルト時間制限。初期割当およびイベントしきい値がNullの場合に使用されます。 |
出力
名前 | 出力グループ | 時間属性 | 摘要 |
---|---|---|---|
OUT_GRP1_MEASURE_UNDER | 1 | メジャー | 日次しきい値を下回る計算済時間数 |
OUT_GRP1_START_TIME_UNDER | 1 | StartTime | 日次しきい値での開始時間 |
OUT_GRP1_STOP_TIME_UNDER | 1 | StopTime | 日次しきい値未満の停止時間 |
OUT_GRP2_MEASURE_OVER | 2 | メジャー | 日次しきい値を超える計算済時間数 |
OUT_GRP2_START_TIME_OVER | 2 | StartTime | 日次しきい値を超える開始時間 |
OUT_GRP2_STOP_TIME_OVER | 2 | StopTime | 日次しきい値を超える停止時間 |
関数
このFormulaは、割当レコードに格納されているルール入力を使用して日次超過勤務を計算します。入力はタイム・カード期間にわたって変更される可能性があるため、このFormulaを使用して各日の正しい値を取得します。このようにして、日次超過勤務の計算結果が常に正確になります。
このFormulaは、WORKED_TIME_CONDITIONで識別される日次時間入力を合計し、指定された超過勤務しきい値を使用して日次超過勤務を計算します。
- 割当OT時間しきい値付加フレックスフィールドがNullの場合、FormulaではDEFAULT_HOURS_BEFORE_OVERTIME値が使用されます。
- フレックスフィールドの値がNullでない場合、Formulaは、PER_ASG_ASSIGNMENT_DETAILS Route (PER_ALL_ASSIGNMENTS_M table)のPER_ASG_ATTRIBUTE2データベース・アイテム値を超過勤務しきい値に使用します。
イベント表から「OT時間しきい値」フィールドへの変更を取得するために、FormulaではORA_HWM_PROCESS_EVENTS_CHG_RNルート・データベース・アイテムが使用されます。
例
シナリオ: 超過勤務しきい値を超過勤務時間しきい値付加フレックスフィールドに格納します。週に40時間勤務するChrisの初期しきい値は8ですが、水曜日に10に変更されます。
例: デフォルトの日次しきい値が8時間であるテンプレートを使用してルールを作成します。時間カテゴリは「All Payroll Time Types」であり、しきい値を超える計算済時間の給与時間タイプは「超過勤務」です。
曜日 | 給与時間タイプ | レポート済時間 | 計算済時間 |
---|---|---|---|
月曜日 | 通常勤務 | 10h | 8h |
超過勤務 | 0h | 2h | |
火曜日 | 通常勤務 | 10h | 8h |
超過勤務 | 0h | 2h | |
水曜日 | 通常勤務 | 10h | 8h 2h |
木曜日 | 通常勤務 | 12h | 10h |
超過勤務 | 0h | 2h |