JinJin48
JinJin48
SAP Consultant | BTP · S/4HANA · US Global Rollout
· 19 min read

SAP SF ワークスケジュール

勤務スケジュールは、特定の従業員セグメントに対して、毎週繰り返される勤務時間パターン(どの曜日が勤務日で、各曜日に何時間割り当てられるか)を定義し、そのパターンを1つの休日カレンダーに正確に紐付けることで、非稼働日を自動的に除外するマスタデータオブジェクトです。これは、フェーズ2(権限&システム設定)の時間設定チェーンの2番目かつ最後のオブジェクトです。休日カレンダー(SF-A03-03)がスケジュールに関わらず常に非稼働日となる日付を提供するのに対し、勤務スケジュールは、それらの日付が差し引かれる実際の週次勤務時間テンプレートを提供します。そして、その組み合わせ結果が、従業員割り当て用のタイムプロファイルバンドルの入力となります。この記事では、勤務スケジュールの定義、週次パターンのバリエーション(標準フルタイム、シフト/交代制、パートタイム、国固有)、同じランドスケープゾーン内で並行する権限管理チェーンや勤務種別チェーンとの関係、そしてAdmin Centerコンサルタントが設定するすべてのフィールドについて説明します。


パート1: 作業計画 — 中核概念(全モジュール共通)

1.1 勤務スケジュールとは

ハブアンドスポーク図: 中央に勤務スケジュール、それに接続される休日カレンダー、時間プロファイル、およびタイムシート/休暇ランタイムプロセス

勤務スケジュールはクライアントレベルの設定オブジェクトであり、2つの情報を同時に保持します。すなわち、週単位の曜日ごとの勤務時間パターンと、そのパターンから差し引かれる日付を持つ休日カレンダーへの必須参照です。どちらか一方だけでは意味を成しません。紐づくカレンダーがない週間パターンは、実際にどの曜日が休日かを知る方法がなく、また、それを参照する勤務スケジュールがない休日カレンダーは、どの処理からも読み取られることがありません。この2つが組み合わさることで、時間プロファイル、タイムシート、休暇管理が、特定の従業員にとって特定の日付が勤務予定日であるかどうかを判断するための唯一の信頼できる情報源となります。

項目詳細
役割再利用可能な週次勤務時間パターン(曜日ごとの勤務/非勤務フラグと予定時間)を定義し、1つの休日カレンダーにバインドされて、最終的な予定勤務日セットを決定します。
使用するモジュールEmployee Central Time Management 設定(管理センター)が所有し、Time Profile によって直接消費されます。Time Profileは、従業員割り当てのために勤務スケジュールと勤務時間アカウントタイプをバンドルします。また、Time Profileを通じて、Time Sheet(実績勤務時間の記録と残業ベースライン)および Time Off(休暇枠と休日給の計算)によっても消費されます。
トランザクション管理センター → “Time Off” → “Manage Work Schedules”(勤務スケジュールの週次勤務時間パターンとバインドされた休日カレンダーの作成/編集)。複数のスケジュールバリアントを一括ロードするには、通常、各スケジュールを対話的に作成するのではなく、“Import and Export Data"ツールと勤務スケジュール汎用オブジェクトテンプレートを使用します。
主要テーブル従来のABAPテーブルはありません。勤務スケジュールとその曜日別パターンの詳細は、汎用メタデータフレームワーク(MDF)オブジェクトとして保存されます。これは、専用のレガシーテーブルではなく、休日カレンダー(SF-A03-03)と同じ基本メカニズムです。
S/4HANAに関する注意事項SuccessFactorsの勤務スケジュールとオンプレミスのS/4HANAオブジェクトとの間で、提供されている同期機能はありません。最も緩やかな概念上の類似物は、従来のSAP HCM / S/4HANA Time Managementにおける勤務スケジュールルール(Time Management infotype 0007、トランザクションPT01)であり、これもスケジュールIDの下で週次勤務時間パターンを定義します。しかし、これら2つは構造的に関連性のないクラウド概念とオンプレミス概念であり、システム的にリンクされることは決してありません。

1.2 勤務スケジュールパターンバリアント

勤務スケジュールパターンバリアントの比較グリッド:標準フルタイムパターン、交代制/シフトパターン、パートタイム/短時間パターン、国固有バリアント

すべての従業員セグメントが同じ週次リズムに従うわけではなく、その差異を、個別の目的に特化した勤務スケジュールではなく、一つの過負荷なスケジュールとしてモデル化することは、最初は説明不能な残業やタイムシート差異として現れる、誤った予定労働時間ベースラインの一般的な原因です。

パターンコードユースケース主要な動作
標準フルタイムパターン週労働時間 = 40(例:月~金、8時間/日)ほとんどのオフィス勤務のフルタイム従業員の基準となる週労働時間すべての暦上の平日を作業日としてフラグ付けし、5日間に均等に時間を配分します。バインドされた休日カレンダーと組み合わせて、パターンから国民の祝日を除外します。
交代制/シフトパターン週労働時間がローテーションサイクルによって変動交代制の日勤/夜勤またはA/Bシフトサイクルで勤務する製造業や小売業の従業員パターン内の個々の平日に、ローテーション全体を通じて異なる作業日フラグまたは時間数を設定できます。均一な5日間テンプレートではありません。
パートタイム/短時間勤務パターン週労働時間が標準未満(例:20時間、週3日)パートタイムまたは短時間勤務の雇用形態にある従業員スケジュールされた日数と時間は、合意された取り決めに比例して削減されますが、パターンはフルタイムのスケジュールと同じ国の休日カレンダーを参照します。
国/地域固有バリアント国ごとに個別の勤務スケジュールインスタンス従業員が複数の国にまたがり、標準的な週労働時間の基準が異なる場合(例:日本の月~金 vs. 地域によっては日~木の週)各国/地域の組み合わせに対して、対応する休日カレンダーにバインドされた独自の勤務スケジュールオブジェクトを取得します。これは、SF-A03-03の「地域ごとに1つの休日カレンダー」という規則を反映しています。

設計原則: 勤務スケジュールは、個々の従業員を中心に構築するのではなく、真に明確な週間労働時間テンプレートを中心に構築します。これは再利用可能なパターンであり、割り当てレコードではありません。個人レベルのバリエーション(従業員が今日どのスケジュールに該当するか)は、勤務プロファイルと職務情報に属するものであり、スケジュール自体の使い捨てコピーに属するものではありません。


1.3 組織レベルとデータ階層

SuccessFactorsマスタデータランドスケープからのゾーン切り抜き。タイムコンフィギュレーションチェーンの2番目のノードとしてゾーンC(勤務スケジュール)を示し、休日カレンダーからの実線コネクタとタイムプロファイルからの受信参照を示す

具体的な例を用いたデータ階層

勤務スケジュールは、SuccessFactors マスタデータランドスケープの同一テナントレベルの「権限と時間」ゾーンに位置し、権限グループ/権限ロール(SF-A03-01/02)およびその上流の入力である休日カレンダー(SF-A03-03)と同じゾーンに属します。このゾーンには、3つの並行かつ独立したクライアントレベルの設定チェーンがバンドルされています(権限管理、休日カレンダー→勤務スケジュール、時間タイプ→時間勘定タイプ。これらは時間プロファイルで結び付けられます)。本記事の対象オブジェクトは、時間設定チェーンの2番目かつ最後のノードです。他の2つのチェーンは同じランドスケープゾーンに存在しますが、別の記事に属します。

Client (SuccessFactors Instance)
   │
   ├── Permission Group "PG_Manager" — Managers, Direct Reports  (see SF-A03-01)
   │      │
   │      └── Permission Role "PR_ESS" — Employee Self-Service, of PG_Manager  (see SF-A03-02)
   │
   ├── Holiday Calendar "HC_JP2024" — Japan 2024, 16 holidays  (see SF-A03-03)
   │      │
   │      └── Work Schedule "WS_JP_Std" — JP Standard, 40H/week, of HC_JP2024
   │
   └── Time Type "TT_Annual" — Annual Leave, category  (Time Configuration chain, see SF-A03-05)
          │
          └── Time Account Type "TAT_Annual" — 20 days, 5-day carryover, of TT_Annual

Time Profile "TP_JP_Std" — JP Standard, Work Schedule + Time Account Type bundle  (see SF-A03-06)
   ├── assigned to ──> Work Schedule "WS_JP_Std"
   └── assigned to ──> Time Account Type "TAT_Annual"

【必須】ランドスケープ検証に関する注意事項: モジュールMaster.mdのER図では、休日カレンダー → 勤務スケジュールの関係を明示的に「1:N」とラベル付けしています。つまり、1つの休日カレンダーは、多くの勤務スケジュールから参照されることができ、実際にそうであるのが一般的です(例:日本にいる従業員をカバーするすべてのスケジュールバリアントは、同じ「HC_JP2024」カレンダーを共有します)。逆の関係は決してありません。公開されているSuccessFactorsマスタデータランドスケープ(sf-a01/images/04-sf-a01-master-landscape.html、ゾーンC)では、これを単一の実線の親子コネクタ(HC_JP2024 → WS_JP_Std)として描画しており、これはその1:N関係の1つのインスタンスを表すものであり、1つのカレンダーが正確に1つのスケジュールを所有するという主張ではありません(休日カレンダー側からの同様の注意事項については、SF-A03-03のセクション1.3を参照)。下流側では、ER図は勤務スケジュールからタイムプロファイルへの単純な矢印(勤務スケジュール → タイムプロファイル ←── 勤務時間タイプ)を示しており、ランドスケープではこれをTP_JP_StdからWS_JP_Stdへ向かう紫色の破線の「割り当て先」矢印として描画しています。タイムプロファイルは必須入力として1つの勤務スケジュールを参照し、同じ勤務スケジュールは同じ週次パターンをカバーする多くのタイムプロファイル間で日常的に再利用されます。両方向の再利用が実際にどのように機能するかについては、セクション1.4および2.4を参照してください。

設計原則: 作業スケジュールは、時間設定の上流にある2つのチェーンが1つの使用可能なパターンに収束するオブジェクトです。それ自体に組織的な下位レベルはなく、その構造的な複雑さはすべて、自身のフィールド設定(バインドされたカレンダーと曜日ごとの時間パターン、パート2)に存在し、追加の階層ネストには存在しません。


1.4 他のマスタデータオブジェクトとの統合

ハブアンドスポーク図:中央に勤務スケジュール、それに接続される休日カレンダー、時間プロファイル、タイムシート/休暇ランタイムプロセス、および法的エンティティ/ロケーションの国スコープ

作業スケジュールは、勤怠管理設定チェーンにおける中核的な要素です。入力側で休日カレンダーを消費し、「この日付は計画された就業日か」を把握する必要がある下流のすべてのオブジェクトは、直接または勤怠プロファイルを介して、この作業スケジュールに遡って解決されます。

オブジェクト関係性実務上の注意点
休日カレンダー消費 (N:1) — 勤務スケジュールは、自身の週次勤務時間パターンとともに、必須入力として1つの休日カレンダーを正確に参照するここでの再利用は逆方向に発生します。多くの勤務スケジュールが同じカレンダー (SF-A03-03) を共有することは一般的ですが、個々のスケジュールが同時に参照できるカレンダーは常に1つだけです。バインドされたカレンダーを交換することは、週次パターンを再構築せずにスケジュールを国間で移動させる標準的な方法です。
タイムプロファイル参照される (1:N) — タイムプロファイルは、2つの必須入力として、正確に1つの勤務スケジュールと1つの勤怠勘定タイプをバンドルする同じ勤務スケジュールインスタンスは、週次パターンは同じだが勤怠勘定タイプが異なる多くのタイムプロファイル間で日常的に再利用されます(例:休暇権利レベルごとに1つのタイムプロファイルがあり、すべてが同じ「WS_JP_Std」を参照する)。タイムプロファイルオブジェクト自体についてはSF-A03-06を参照。
タイムシート / 休暇 (SF-B03 勤怠・給与プロセス)参照される (ランタイム、トランザクション、タイムプロファイル経由)バインドされたカレンダーの除外日を差し引いた、スケジュールの曜日別勤務時間は、実際に記録されたタイムシート時間と比較される期待される予定勤務時間ベースラインを形成し、残業代や休日手当の計算に直接影響を与えます。
法的エンティティ / ロケーション(国設定)整合 (設計上の慣例、システム参照ではない)ベストプラクティスは、勤務スケジュールの週次パターンを、そのスケジュールが適用される従業員が所属する法的エンティティまたはロケーションの国/地域の標準に合わせることです。これは、バインドされた休日カレンダー (SF-A03-03) と同じ整合の慣例です。オブジェクト自体はこれを強制しないため、不一致はシステムエラーではなく、設定レビュー項目となります。

パート 2: SF 固有のフィールド詳細

2.0 SFの所有範囲

チェックリスト:勤務スケジュールデータセクション全体における管理センター/エンプロイーセントラルタイム管理の完全な所有権を示します:スケジュール定義、休日カレンダー割当、週間勤務時間パターン、タイムプロファイル割当での使用

データセクションSF 関与備考
スケジュール定義(コア識別)◎ オーナースケジュールID、スケジュール名、説明、ステータス
休日カレンダー紐付け◎ オーナー紐付ける休日カレンダーの参照、国別整合性
週次勤務時間パターン◎ オーナー曜日ごとの勤務/非勤務フラグ、1日あたりの予定勤務時間
タイムプロファイル割当での使用◎ オーナースケジュールがタイムプロファイルの必須入力としてどのように紐付けられるか

凡例: ◎ = オーナー / クリティカル、○ = 直接関与


2.1 スケジュール定義(コア識別)

主要な勤務スケジュールコア識別フィールドのチェックリスト: スケジュールID、スケジュール名、説明、ステータス

スケジュール定義は、勤務スケジュールが存在するために必要な最小限のレコードです。これは、すべてのタイムプロファイルのスケジュールピッカー、およびシステム内の他の場所でスケジュールを参照するすべてのものが、最終的に解決される対象です。

フィールド説明実務上の使用例
スケジュール ID勤務スケジュールの一意の識別子(外部コード)すべてのタイムプロファイルの勤務スケジュールバインディングが参照するキー値です。本稼働前に、国とパターンタイプをエンコードした命名規則(例:WS_JP_Std)を合意しておいてください。これにより、同じスケジュール(2.4)を再利用する多数のタイムプロファイルの監査が一目で容易になります。
スケジュール名「勤務スケジュール管理」およびタイムプロファイル設定内のスケジュールピッカーに表示される表示名一般的なラベルではなく、パターンと対象範囲を明確に説明する必要があります(例:「日本標準 40H、月~金」)。クライアントが複数の国やシフトにわたって複数の週次パターンを運用する場合、通常、複数のスケジュールバリアントが共存します。
説明スケジュールの対象従業員とパターンの根拠に関する自由記述の説明特定のバリアントが存在する理由(例:特定のプラント向けに構築されたシフトローテーションパターン)を文書化するのに役立ちます。これは、新しいタイムプロファイルを構築する際に、コンサルタントが既存のスケジュールが適合するか、新しいものが必要かを判断する必要がある場合の、一般的なアクセスレビューおよび設定監査の質問です。
ステータスアクティブ / 非アクティブ非アクティブなスケジュールは、新しいタイムプロファイルバインディング用のピッカーから除外されますが、すでにそれを参照しているタイムプロファイルから自動的に削除されるわけではありません。現在使用中のスケジュールを非アクティブ化する前に、それらのタイムプロファイルを監査し、再ポイントしてください。

2.2 休日カレンダーのバインディング

スタック階層図による勤務スケジュール休日カレンダーのバインディングフィールドのグループ化: バインドされた休日カレンダー、国/地域の割り当て、有効日範囲、スケジュール間での再利用

休日カレンダバインディングは、勤務スケジュール独自の週間パターンを、除外すべき日付のセットに接続するフィールドグループです。ここに有効なバインディングがない場合、セクション2.3の週間パターンは、実際にどの曜日が休日であるかを認識する方法がありません。

フィールド説明実務上の使用例
バインドされた休日カレンダーこの勤務スケジュールが必須設定入力として参照する単一の休日カレンダー (SF-A03-03)勤務スケジュールは、バインドされたアクティブな休日カレンダーなしでは有効化できません。スケジュール設定を開始する前に、常に対象のカレンダーが存在することを確認してください(後からではなく)。
国/地域の整合性バインドされたカレンダー自身の国/地域フィールド (SF-A03-03, セクション 2.2) から説明的に継承されるものであり、スケジュール上で個別に設定されるものではありませんコンサルタントは、バインドされたカレンダーの国を、構築目的上のスケジュールの有効国として扱います。スケジュール自身の命名規則を、それがバインドするカレンダーと一貫性のあるものに保つことで、不一致がスケジュール一覧で即座に確認できるようにします。
有効日付範囲特定のカレンダーバインディングがアクティブになる期間を指定する、オプションの開始日/終了日クライアントが、勤務スケジュールオブジェクトを新規に作成することなく、時間の経過とともにスケジュールが参照する休日カレンダーを変更する場合(例:新しい法定休日セットを採用する場合)に使用します。
スケジュール間での再利用(カレンダー側)同じ休日カレンダーが、同一の国をカバーする複数の勤務スケジュールにバインドされることが一般的ですこれは、セクション 1.3 で示された「休日カレンダー — 1:N — 勤務スケジュール」のカーディナリティの実践的な表現です。共有カレンダーを終了日設定する前に、変更のきっかけとなったスケジュールだけでなく、それにバインドされているすべての勤務スケジュールを確認してください。

2.3 週間勤務時間パターン

曜日ごとの週間勤務時間パターンフィールドのチェックリスト: 曜日、就業日区分、1日あたりの予定時間、開始/終了時刻

週間勤務時間パターンは、勤務スケジュールの実際のペイロードです。これは曜日ごとのテンプレートであり、バインドされたカレンダーの除外日と組み合わさることで、最終的なスケジュール勤務時間の結果を生成します。この結果は、タイムシートと休暇申請の両方が参照します。

フィールド説明実務上の使用例
曜日7つの各曜日(月曜~日曜)を個別に設定テンプレートは「5日間」のような一括設定ではなく、曜日ごとに構築されます。これにより、シフトパターンやパートタイムパターン(セクション1.2)が、均一な月曜~金曜のテンプレートと異なる設定が可能になります。
就業日区分該当する曜日がスケジュールされた就業日であるかどうかを示すYes/Noフラグ標準パターンでは、週末はデフォルトでNoにフラグ設定されるのが一般的ですが、このフラグが実際にその動作を制御します。週末に誤ってYesを設定すると、そのスケジュールに従うすべての従業員のスケジュール時間ベースラインが黙って増加してしまいます。
1日あたりの予定時間数就業日としてフラグ設定された曜日に予定される労働時間数タイムシートが実際の記録時間と比較して時間外労働を計算する際の基準となるコア値です。1つの曜日でもこの値を誤ると、修正されるまで、すべての給与期間の基準が誤ったものになります。
開始/終了時刻(任意)就業日の具体的な出勤/退勤時刻。クライアントのタイムシート設定が、時間合計のみの入力ではなく、時刻を追跡する場合に使用時間ベースの入力ではなく、時刻ベースのタイムシート記録を使用するクライアントにのみ関連します。この詳細レベルを維持する必要があるかどうかを判断する前に、クライアントがどのタイムシートモードを使用しているか(SF-B03)を確認してください。

前提条件: 週間勤務時間パターンは、有効かつアクティブな休日カレンダーのバインディング(セクション2.2)と組み合わせて初めて正しい結果を生成するため、曜日ごとの時間を確定する前に、必ずカレンダーバインディングを構築して検証してください。バインディングされていない、または誤ったカレンダーに対してパターンをテストすると、予定時間の結果はもっともに見えますが、休日付で黙って誤った値になります。


2.4 時間プロファイル割当での使用

Time Profile BindingとTime Profiles間の再利用の2列比較(両方とも勤務スケジュール割当から取得)

作業スケジュール自体は従業員レベルの計算を実行しません。これは、勤務時間アカウントタイプとともに勤務時間プロファイルにバインドされて初めて意味を持ちます。このセクションでは、そのバインドの仕組みと、最も一般的なメンテナンスのギャップが発生する箇所について説明します。

フィールド説明実務上の使用例
勤務スケジュールのバインディングタイムプロファイルが、2つの必須設定入力の1つとして参照する単一の勤務スケジュール(もう1つは勤務勘定タイプ)タイムプロファイルは、バインドされたアクティブな勤務スケジュールなしでは有効化できません。タイムプロファイルの設定を開始する前に(SF-A03-06)、必ずスケジュールが存在し、その週間パターンが確定していることを確認してください。後から確認するのではありません。
タイムプロファイル間での再利用同じ勤務スケジュールは、複数のタイムプロファイル(同じ週間パターンだが異なる勤務勘定タイプをカバーするもの)から参照されることができ、通常は参照されます。この多対1の再利用は、セクション1.3/1.4で示された「勤務スケジュール — 1:N — タイムプロファイル」関係の実務上の表現です。スケジュールの週間パターンやバインドされたカレンダーを実質的に編集する前に、変更のきっかけとなったタイムプロファイルだけでなく、現在それを参照しているすべてのタイムプロファイルを確認してください。
予定勤務時間への実質的な影響スケジュールの曜日別勤務時間が、バインドされた休日カレンダーの除外日とどのように組み合わさって、割り当てられた従業員が目にする最終的な日別予定勤務時間の結果を生成するか。通常の予定勤務日がカレンダーの休日でもある場合、休日設定はその日付の週間パターンを上書きします。すでに週間パターンで非稼働日としてフラグが立てられている日付に、重複するカレンダーの休日が重なっても、その日はそもそも勤務予定ではなかったため、何も変わりません。
既存の割当への変更の影響すでにアクティブなタイムプロファイルや従業員割当によって参照されている勤務スケジュールを編集すると、予定勤務時間の結果が遡及的に変更されるのか、それとも将来に向けてのみ変更されるのか。稼働中のスケジュールに対する週間パターンまたはカレンダーバインディングの変更は、それを参照するすべてのタイムプロファイルに現在割り当てられているすべての従業員に影響します。パターンの編集は、ルーチン的な微調整としてではなく、給与に影響を与える設定変更と同じレビュー規律を必要とする、発効日ベースの変更として扱ってください。

次に読むべきもの

L1) Big Picture

IDCategoryTitle
sf-001OverviewSAP SuccessFactorsとは何ですか?

L2-A) Master Data

IDCategoryTitle
sf-a01OverviewSAP SuccessFactors マスタデータ:概要、階層、関係性
sf-a02-01Master DataSAP SF 法人
sf-a02-02Master DataSAP SF ビジネスユニット
sf-a02-03Master DataSAP SF 事業部門
sf-a02-04Master DataSAP SF 部門
sf-a02-05Master DataSAP SF 原価センタ
sf-a02-06Master DataSAP SF ロケーション
sf-a02-07Master DataSAP SF ジョブファミリー
sf-a02-08Master DataSAP SF ジョブコード
sf-a02-09Master DataSAP SF 給与グレード
sf-a02-10Master DataSAP SF ポジション
sf-a03-01Master DataSAP SF 権限グループ
sf-a03-02Master DataSAP SF 権限ロール
sf-a03-03Master DataSAP SF 休日カレンダー
sf-a03-04Master DataSAP SF 勤務スケジュール 📍
sf-a03-05Master DataSAP SF タイムタイプ
sf-a03-06Master DataSAP SF 時間プロファイル
sf-a03-07Master DataSAP SF 評価尺度
sf-a03-08Master DataSAP SF 目標計画テンプレート
sf-a03-09Master DataSAP SF パフォーマンスフォームテンプレート
sf-a03-10Master DataSAP SF ルートマップ
sf-a03-11Master DataSAP SF 報酬計画
sf-a04-01Master DataSAP SF 担当者
sf-a04-02Master DataSAP SF エンプロイメント
sf-a04-03Master DataSAP SF 従業員プロファイル

L2-B) Transaction

IDCategoryTitle
sf-b01OverviewSAP SuccessFactors トランザクション:プロセスフロー、階層、関係性