【応用編】制約設定の使い方
■ 概要
本記事では、「制約」機能を使った、複数の設定方法を紹介します。
■ 設定パターン一覧
各項目はすべて「制約」機能を使用して設定します。以下より、該当する目的の設定手順をご確認ください。
1. 「役職」を活用した制約の一括設定
- 目的:職員ごとに異なる「好みの勤務パターン」を役職単位で管理し、ルール同士の矛盾を防ぎながら一括で設定するために使用します。
具体例:夜勤の希望勤務パターンを役職ごとに登録する
守りたいルール
・連続夜勤を希望する職員:夜勤の連続勤務が配置されるようにしたい
・単発夜勤を希望する職員:夜勤の連続勤務を禁止したい
困りごと
・全職員に対して一律のルールを設定してしまうと、連勤希望者と単発希望者の間で条件が衝突してしまう。
解決策
・「夜夜希望」「夜夜禁止」といった管理用の役職を作成し、それぞれの役職に対して専用の制約を一括設定します。設定手順
1. メンバー画面での準備
- 役職の作成: 役職設定画面で「夜夜希望」「夜夜禁止」の2つを新規作成します。
- 職員の紐付け: 職員の希望を確認し、該当する役職を割り当てます。
2. 制約画面での設定
【設定A】夜勤の連勤を推奨する(対象:夜夜希望)
- 条件: 夜 → 夜
- 強制度: 必須(絶対に守る)
- 種別: 順守(この並び順を積極的に作る)
- 方向性: 一方向(「夜」の翌日は「夜」にする)
- 対象種別: 役職
- 対象: 夜夜希望
【設定B】夜勤の連勤を禁止する(対象:夜夜禁止)
- 条件: 夜 → 夜
- 強制度: 必須(絶対に守る)
- 種別: 否定(この並び順を作らない)
- 方向性: 一方向(「夜」の翌日は「夜」にしない)
- 対象種別: 役職
- 対象: 夜夜禁止
💡 ポイント
真逆の指示をシステムに出しながら整合性を持たせる
- 「夜→夜」という同じ条件に、順守「連勤させる」、否定「連勤させない」の真逆の指示を出しても、対象が異なるため、整合性が確保されます。
メンテナンスが楽になる
- 今後、職員の希望が変わっても制約を修正する必要はありません。
- メンバー画面で「役職」を付け替えるだけで、新しいルールが自動的に適用されます。
「夜→夜→夜」の否定:3連勤以上のストッパー設定
- 夜勤の連勤を推奨する設定【設定A】を導入すると、「3連勤・4連勤」といった過度な連勤を組んでしまうリスクがあります。
- 「2連勤までは認めるが、3連勤は禁止したい」という場合には、「夜→夜→夜」の否定制約をセットで登録してください。
- 例外なく夜勤3連続を禁止したい場合は「対象:全員」、禁止したい職員を分けたい場合は「対象:役職」に設定してください。
✅ 役職による応用例
例:遅出(オ)の翌日に早出(ハ)を入れるかどうか
- 一般職員:遅出の翌日の早出(オハ)は負担が大きいため禁止したい。
- 職員AとD:効率よく勤務するため、あえて遅出の翌日に早出(オハ)を入れたい。
設定1:遅出の次に早出を「禁止」する場合
- 「オハ禁止」という役職を作成し、職員A・D以外の全員に紐付けます。
- 条件: オ → ハ/強制度: 必須/種別: 否定/方向性: 一方向/ 対象:「オハ禁止」役職
設定2:遅出の次に早出を「希望」する場合
- 「オハ希望」という役職を作成し、職員A・Dに紐付けます。
- 条件: オ → ハ/強制度: 必須/種別: 順守/方向性: 一方向/ 対象:「オハ希望」役職
✅ メンテナンス(新入職員への対応)
- この設定の最大のメリットは、「一度ルールを作れば、後は役職を選ぶだけ」という点です。
- 新しい職員が入った際も、制約画面を触る必要はありません。
例:新職員Pさんが「オハ(遅出→早出)は禁止」の場合
- メンバー画面: 新職員Pさんを登録します。
- 役職の紐付け: 役職欄で「オハ禁止」を選択します。
- 完了: すでに「オハ禁止」役職には制約が設定されているため、これだけでPさんにも自動的にルールが適用されます。
2. 3連続以上のシフト並びを「順守・必須」で設定する方法
目的:
- システムの仕様上、「必須」かつ「順守」の設定は最大2連続(2つの並び)までとなっています。
- しかし、複数の制約を組み合わせることで、3連続以上の特定のシフト並びをセットで割り振ることが可能です。
具体例:2交替夜勤(夜 → 明 → 休)をセットにする
守りたいルール
・夜勤(夜)の後は必ず明け(明)を入れ、その翌日は必ず休み(休)にするという
「3日間のサイクル」を固定したい。
困りごと
・「夜→明」の制約だけでは、明けの翌日に勤務が入り、職員の休息が確保できない。
解決策
・「夜↔︎明」と「明→休」という2つの制約を作成し、どちらも「順守・必須」に設定します。
共通する「明」を中継点にすることで、システム上は3日間の連結したルールとして機能します。設定手順
【設定1】夜勤と明けをセットとして扱う
- 条件: 夜→明
- 強制度: 必須
- 種別: 順守
- 方向性: 双方向(夜の翌日は必ず明 / 明の前日は必ず夜)
- 対象種別: 全員
【設定2】明けの翌日に休みを誘導する
- 条件: 明→休
- 強制度: 必須
- 種別: 順守
- 方向性: 一方向(明の翌日は必ず休 / 休の前日は自由)
- 対象種別: 全員
💡 ポイント:「双方向」と「一方向」の使い分け
「夜 ↔ 明」を双方向にする理由
- 「夜の翌日は明」「明の前日は夜」という強い鎖でつなぎます。
- 夜勤単発や、明けが単独で出現することを防ぎ、常にセットで配置されるようになります。
「明 → 休」を一方向に留める理由
- 「双方向」にしてしまうと、システムは「休みの前日は必ず明けでなければならない」と解釈してしまいます。
- そうなると、普通の公休(連休や単発の休み)が一切作れなくなってしまうため、「一方向」にして、休み側の自由度を残しておく必要があります。
結果
- 「夜」が入る
- 双方向ルールにより「明」がセットで入る
- 明が入ったことで、一方向ルールにより翌日の「休」が配置される → 「夜 → 明 → 休」が自動で完成します。
3. 否定登録で理想のパターンを制限する【上級編】
-
目的:「特定の並びを強制する」のではなく、「それ以外の並びを禁止(否定)する」ことで、
消去法により理想の並びを実現させます。
具体例①:複数の夜勤パターン(単発・2連勤・3連勤)を使い分ける
守りたいルール
・単発夜勤:「夜→休」は認めるが、基本パターンにはしたくない。
・2連続夜勤:「夜→夜→休→休」を基本のパターンとして運用したい。
・3連続夜勤:「夜→夜→夜→休→休」を、特定の職員だけに許可し、他の職員には禁止したい。
困りごと
・システムが効率を優先して勝手に3連勤を組んだり、逆に非効率な単発夜勤ばかりを量産したりして、
現場の希望(2連勤が基本)が叶わない。
解決策
・夜勤の「次のシフト」を否定設定で絞り込み、望ましいパターンのみを順守設定で強調することで、
パターンの優先順位をコントロールします。
設定手順に使用するシフトの種類
・早(早出) / 日(日勤) / 遅(遅出) / 夜(夜勤) / 休(公休) / 研(研修)設定手順
【設定1】夜勤の「次のシフト」を制限する
夜勤の後に日勤帯勤務が来るのを防ぎ、「休み」か「もう一度夜勤」の2択に絞り込みます。
- 共通設定:強制度:必須 / 種別:否定 / 方向性:一方向 / 対象:全員
-
条件:以下に差し替えて、合計4つの制約を完成させてください。
- 夜 → 早
- 夜 → 日
- 夜 → 遅
- 夜 → 研
【設定2】「夜勤2連勤 → 2連休」を標準パターンにする
2連勤をメインに設定し、かつ連勤後の日勤帯勤務を防ぎます。
① 理想の形を予約する(順守)
- 条件: 夜 → 夜 → 休 → 休
- 内容: 強制度:希望 / 種別:順守 / 希望レベル:強 / 方向性:一方向 / 対象:全員
② 2連勤後の「出口」を制限する(否定)
- 共通設定: 強制度:必須 / 種別:否定 / 方向性:一方向 / 対象:全員
-
条件:以下に差し替えて、合計4つの制約を完成させてください。
- 夜 → 夜 → 早
- 夜 → 夜 → 日
- 夜 → 夜 → 遅
- 夜 → 夜 → 研
💡 標準パターンの優先度
- 順守登録は、強制度が「希望」であれば、3連続以上のパターンも登録可能です
- 希望レベルを「強」にすることで、希望レベルの中で最優先の指示にします。
- ②の否定制約と組み合わせて、「2連続夜勤」後の「日勤帯勤務」が排除されます。
【設定3】「夜勤3連続の可否」を役職で区分する
3連勤の可否を「役職」で分岐し、4連勤は全員禁止します。
1. 夜勤3連続NG
- 準備: 「夜夜夜NG」役職を作成・メンバーを紐付け
- 設定:条件: 夜→夜→夜 / 強制度:必須 / 種別:否定 / 方向性:一方向 / 対象:夜夜夜NG役職
2. 夜勤3連続OK
① 3連勤パターンを予約する(順守)
- 準備:「夜夜夜OK」役職を作成・メンバーを紐付け
- 設定:条件:夜→夜→夜→休→休/強制度:希望/種別: 順守/希望レベル:中/方向性: 一方向/対象: 夜夜夜OK役職
② 3連勤後の「出口」を制限する(否定)
- 共通設定:強制度: 必須/種別: 否定/方向性: 一方向/対象: 全員
-
条件:以下に差し替えて、合計5つの制約を完成させてください。
- 夜 → 夜 → 夜 → 早
- 夜 → 夜 → 夜 → 日
- 夜 → 夜 → 夜 → 遅
- 夜 → 夜 → 夜 → 研
- 夜 → 夜 → 夜 → 夜
💡 ポイント:
3連勤の希望レベルを「中」にする理由
- 2連勤の希望レベルを「強」、3連勤を「中」と差をつけることで、システム内に明確な優先順位を作ります。
- システムは「2連勤」を優先して作成し、どうしてもパズルが合わない箇所にだけ「3連勤」を補填します。
- これにより、「基本は2連勤、必要な時だけ3連勤」という理想の運用が自動で叶います。
4連勤防止の重要性
- 設定3-②の6つ目の条件(夜→夜→夜→夜の否定)で、「夜勤は常に最大3連勤まで」が実現します。
- 加えて、6つの否定条件による消去法で、システムが『休み』しか選べない状況を作ります。
具体例②:日勤スタッフと夜勤スタッフの夜勤パターンを使い分ける
守りたいルール
・日勤スタッフ:日勤帯がメイン。夜勤に入る際は「単発夜勤 + 2連休」が理想。
・夜勤スタッフ:夜勤のみ。基本は「2連勤 + 1日休み」だが、状況により3連勤まで許容。
解決策
・日勤スタッフと夜勤スタッフを役職で分けて、夜勤の「次のシフト」を否定設定で絞り込みます。
設定手順に使用するシフトの種類
・早(早出) / 日(日勤) / 遅(遅出) / 夜(夜勤) / 休(公休) / 研(研修)【全員】夜勤明けの日勤帯勤務を禁止する
- 共通:強制度: 必須 / 種別: 否定 / 方向性: 一方向 / 対象: 全員
- 条件(日勤帯のパターンをすべて禁止):
- 夜 → 早
- 夜 → 日
- 夜 → 遅
- 夜 → 研
【役職別】連勤ルールと理想パターンの設定
1. 日勤スタッフ(単発夜勤 + 2連休が理想)
- 準備: 「日勤」役職を作成し、該当者に紐付けます。
- 設定①:夜勤の連勤を禁止
- 条件:夜 → 夜 / 強制度:必須 / 種別:否定
- 効果:全員共通ルールと合わせることで、夜勤の後は「休み」しか選べなくなります。
- 設定②:理想の2連休を予約
- 条件:夜 → 休 → 休 / 強制度:希望(強) / 種別:順守
- 効果:無理な時は1日休みでも許容しつつ、可能な限り2連休を狙います。
💡 日勤スタッフの「無理なら1日休み」のバランス
「希望」の場合:
- 普段は「夜勤+2連休」を作りますが、人手が足りない時だけシステムが自動で「夜→休→勤務」という妥協案を提案してくれます。
「絶対に2連休」にしたい場合:
- 「夜→休→早/日/遅/研」のすべてを「必須・否定」で登録します。
2. 夜勤スタッフ(夜勤2連勤 + 1日休みが基本)
- 準備: 「夜勤メイン」役職を作成し、該当者に紐付けます。
- 設定①:単発夜勤を禁止
- 条件:休 → 夜 → 休 / 強制度:必須 / 種別:否定
- 効果:休み明けの夜勤が1回で終わるのを防ぎます。
- 設定②:2連勤セットを予約
- 条件:夜 → 夜 → 休 / 強制度:希望(強) / 種別:順守
- 効果:2連勤の後はしっかり「休み」を配置するように誘導します。
- 設定③:夜勤4連勤を禁止
- 条件:夜 → 夜 → 夜 → 夜 / 強制度:必須 / 種別:否定
- 効果:夜勤3連勤までは許容しつつ、4連勤目にストッパーをかけます。
💡 夜勤スタッフの「標準」と「調整」パターン
- 第一候補:「夜 → 夜 → 休」(設定②の理想パターン)
- 第二候補:「夜 → 夜 → 夜」(設定③で許容されているため)
基本は2連勤で組みますが、人手不足の箇所だけ自動的に3連勤へ調整されます。「絶対に2連勤」にしたい場合:
- 設定③の「夜 → 夜 → 夜→ 夜(4連勤)」を「夜 → 夜 → 夜(3連勤)」の否定制約に変更します。
- これにより「3連勤以上を禁止」+ 設定①の「単発夜勤の禁止」で、夜勤は必ず2連勤になります。
⚠️ 注意
- 「夜 → 休」を「否定」してしまうと、いつまでも夜勤を終わらせられなくなります。
- 必ず上記のように3つの並びで条件を指定してください。
(画像・動画を活用)
■ 注意点・設定前の確認事項
「順守・必須」の2連続制限
システムの仕様上、強制度「必須」かつ種別「順守」の設定は、最大2連続(2つの並び)までしか登録できません。
-
3連続以上の並びを「必須」にしたい場合:
- 鎖状に繋ぐ: 「A↔︎B」と「B→C」の2つの制約を作り、中間のシフト(B)を接着剤にして繋ぎ合わせます。
- 消去法を活用:「3連続以上の否定(禁止)」を複数組み合わせ、結果的に「理想のパターン」しか入らない状況を作ります。
「否定」と「順守」の衝突を避ける
同じ並びに対して「禁止(否定)」と「推奨(順守)」を同時に設定すると、システムが混乱し動作が不安定になります。
- 基本ルール: 同じパターンに相反する設定をしない。
- 役職の活用: 「対象」を明確に分け、矛盾するルールが重ならないように調整してください。
- 消去法を活用: 理想のルートを残し、それ以外の「出口(分岐)」をすべて「否定」で塞ぐことで、システムを迷わせず理想へ誘導できます。
「方向性」の影響力を理解する
「一方向」か「双方向」かで、シフトの縛り強さが劇的に変わります。
-
一方向(A → B):「Aの後はB」とだけ決めたい場合に使用します。
注: 夜勤の後は休み(夜→休)。ただし、休みの前が夜勤である必要はありません。 -
双方向(A ↔ B):「AとBを常にセット」にしたい場合に使用します。
注: 非常に強力です。例えば「休↔休」を双方向にすると、単発の休みが一切作れなくなります。

サインインしてコメントを残してください。
コメント
0件のコメント