Ans.
「保健所の監査がありxx日の日勤は10名に増員したい」
では、単純な包含関係にあったので、制約追加で上手く行きました。
しかし、今回は、包含関係にないので、単純な制約追加では上手く行きません。
変更前記述は次のようになっています。
■次の関係
増員日+増員日でない=休日 かつ 増員日∩増員日でない=空集合
となる集合を作成します。
上の集合は、次で作成しています。
こういう、互いに交わらない集合で、足すと休日全体集合となる集合を排他集合と言います。排他集合は、互いに交わることがないので、ダブりがなく、なおかつ
足すと、休日全体になりますから、漏れがないということになります。
つまり排他集合で作れば、ダブりや漏れがなく制約できるということです。カレンダを両者をよく見比べて、排他的であることを確認してください。
必要なDay集合が出来上がったので、制約して完成です。
メンテナンスは不要です。増員日がないときは、今月休日増員日は空集合となります。結果、「増員日以外」は、=今月休日と一致します。
0 件のコメント:
コメントを投稿