2.2.3. 従業員の勤務表プロジェクトへのデータモデルの作成
このセクションでは、Business Central で従業員の勤務表サンプルプロジェクトを実行するのに必要なデータオブジェクトを作成します。
前提条件
- 「従業員の勤務表プロジェクトの設定」 に従ってプロジェクト設定が完了している。
手順
-
新規プロジェクトで、プロジェクトパースペクティブの Data Object をクリックするか、Add Asset
Data Object をクリックして、新しいデータオブジェクトを作成します。 最初のデータオブジェクトの名前を
Timeslot
とし、パッケージ でemployeerostering.employeerostering
を選択します。OK をクリックします。
-
Data Objects パースペクティブで +add field をクリックして、
Timeslot
データオブジェクトにフィールドを追加します。 -
id フィールドで
endTime
と入力します。 -
Type の横にあるドロップダウンメニューをクリックし、
LocalDateTime
を選択します。 - Create and continue を別のフィールドに追加します。
-
id
startTime
および TypeLocalDateTime
を使用して、フィールドを追加します。 - Create をクリックします。
-
右上の Save をクリックして、
Timeslot
データオブジェクトを保存します。 - 右上の x をクリックして、Data Objects パースペクティブを閉じ、Assets メニューに戻ります。
前述の手順で、以下のデータオブジェクトとその属性を作成します。
表2.1 Skill id タイプ name
String
表2.2 Employee id タイプ name
String
skills
employeerostering.employeerostering.Skill[List]
表2.3 Shift id タイプ requiredSkill
employeerostering.employeerostering.Skill
timeslot
employeerostering.employeerostering.Timeslot
表2.4 DayOffRequest id タイプ date
LocalDate
employee
employeerostering.employeerostering.Employee
表2.5 ShiftAssignment id タイプ employee
employeerostering.employeerostering.Employee
shift
employeerostering.employeerostering.Shift
データオブジェクトの作成例は デシジョンサービスの使用ガイド を参照してください。
2.2.3.1. 従業員の勤務表プランニングエンティティーの作成
従業員勤務表の計画問題を解決するには、プランニングエンティティーと Solver を作成する必要があります。プランニングエンティティーは、Red Hat Business Optimizer ドックで利用可能な属性を使用して、ドメインデザイナーに定義します。
以下の手順に従って、従業員の勤務表サンプルに、ShiftAssignment
データオブジェクトをプランニングエンティティーとして定義します。
前提条件
- 従業員の勤務表サンプルを実行するには、「従業員の勤務表プロジェクトへのデータモデルの作成」 の手順に従って、関連するデータオブジェクトとプランニングエンティティーを作成する必要があります。
手順
-
プロジェクトの Assets メニューから、
ShiftAssignment
データオブジェクトを開きます。 - Data Objects パースペクティブで、右側の をクリックして、Red Hat Business Optimizer のドックを開きます。
- Planning Entity を選択します。
-
ShiftAssignment
データオブジェクトのフィールドリストでemployee
を選択します。 Red Hat Business Optimizer ドックで Planning Variable を選択します。
Value Range Id 入力フィールドに
employeeRange
を入力します。これにより、@ValueRangeProvider
アノテーションがプランニングエンティティーに追加され、デザイナーのSource
タブをクリックすると表示されます。プランニング変数の値の範囲は
@ValueRangeProvider
アノテーションで定義されます。@ValueRangeProvider
アノテーションにはid
プロパティーが常にあり、@PlanningVariable
のvalueRangeProviderRefs
プロパティーから参照されます。- ドックを閉じ、Save をクリックして、データオブジェクトを保存します。