概要
あるユーザーが、どの時点から、どの事業場、どの契約に属するかを設定します。
この画面で設定した結果は、主に月報作成処理で使います。
打刻された瞬間に紐付く契約をもとに、労働時間の計算を行います。
所属する事業場が変わる場合、月報を別々に作る必要があります。
契約が変わる場合は特に制限はなく、1日の中で複数回契約を切り替える運用もできます。
理論上、この仕組みを使えば交替勤務やシフト勤務が実現できるはずです。
仕様
ユーザーと契約の紐付けデータを登録します。
図中の緑色のテーブルです。
入力チェック
在籍中のユーザーは常に契約に紐付いた状態にする必要があります。
以下のような入力チェックを行い、データの不整合を防ぐようにしました。
- ユーザーの入社日より前、退職日より後には契約を紐付けられない
- ある時点で複数の契約が重複して紐付く入力はエラーとする
- 契約開始日の最小値~退職日までの間で契約に紐付かない瞬間が存在する場合はエラー
「入社日~」ではなく「契約開始日の最小値~」としました。
勤続年数の長い社員のデータを投入する場合に、昔の契約データを用意する必要がなく、システムの運用開始時点の契約データだけを用意すれば済みます。 - 締め処理の済んでいない月報が存在する場合、契約の変更を禁止する
- 有効期限外(起算日より前、労使協定有効期間の外)の契約は紐付けられない