IM-BIS for Accel Platform / OpenRules for IM-BIS 連携ガイド 第2版 2015-08-01

6.3. IM-BIS の画面(フォーム)のイベントと OpenRules を連携する

先の手順で作成したExcelのルール定義ファイルを IM-BIS と連携するためのフローの作成を進めていきましょう。

OpenRules と IM-BIS を連携するための手順

この手順では、作成したExcelのルール定義ファイルをデータソース定義に登録し、 IM-BIS のイベント設定でルールの実行を設定するまでの手順を確認していきます。
../../_images/procedure3.png

フローの作成に必要な定義をダウンロードする

ハンズオンで作成するフローのベースとなる各種定義ファイルをインポートします。
最初に下記のリンクからファイルをダウンロードしてください。

ハンズオンの定義ファイルをインポートする

先の手順でダウンロードしたファイルを「各種定義ファイルのインポートの手順」に従ってインポートしてください。

旅費精算の日当ルールを定義したExcelファイルをデータソース定義に登録する

IM-BIS と連携するために、 OpenRules のルールを定義したExcelファイルをデータソース定義に登録していきましょう。

データソース定義の基本情報を登録する

データソース定義の基本情報を登録しましょう。
  1. サイトマップの「 IM-BIS 」から「データソース定義」をクリックします。
    ../../_images/datasource_16.png
  2. 「登録」をクリックします。
    ../../_images/datasource_21.png
  3. 「データソース種別」を「ルール」にし、データソース名に「【ハンズオン】日当計算ルール」と入力します。
    入力が完了したら、「登録」をクリックします。
    ../../_images/datasource_31.png

OpenRules の詳細情報を登録する

データソース定義に OpenRules のファイルやパラメータを設定しましょう。
  1. 「Decision名」には、Excelファイルの Decision の名前「sampleDailyAllowance」を入力します。
    ../../_images/datasource_41.png
  2. 「リクエスト」には、 Glossary で定義した「RequestObject」のオブジェクトと項目(物理名)を登録します。
    入力欄を追加し、以下のように設定します。

    パラメータ

    データ型

    親オブジェクト

    RequestObject

    object

    なし

    areaClassCode

    string

    1

    tripClassCode

    string

    1

    ../../_images/datasource_51.png
  3. 同様に「レスポンス」には、「ResponseObject」のオブジェクトと項目(物理名)を登録します。
    入力欄を追加し、以下のように設定します。

    フィールド

    データ型

    親オブジェクト

    ResponseObject

    object

    なし

    dailyAllowance

    number

    1

    ../../_images/datasource_61.png
  4. 作成したExcelのルール定義ファイルをアップロードするために「ファイルを追加」をクリックします。
    ../../_images/datasource_71.png
  5. 「開始」をクリックして、ファイルをアップロードします。
    ../../_images/datasource_81.png
  6. 「Decisionファイル」をクリックします。
    ../../_images/datasource_91.png
  7. 最後に「登録」をクリックして、データソース定義を登録します。
    ../../_images/datasource_101.png
  8. これで OpenRules のルールを定義したExcelファイルをデータソース定義として登録することができました。

旅費精算の日当ルールを画面の項目の入力時に実行するための設定を行う

登録したデータソース定義を利用して、 IM-BIS の画面の入力のタイミングでルールが実行されるように設定していきましょう。

フォーム編集画面を表示する

画面アイテムにイベントを設定するために、フォーム(画面)の編集を開始しましょう。
  1. サイトマップの「 IM-BIS 」をクリックします。
    ../../_images/edit_flow_1.png
  2. 「一覧」をクリックします。
    ../../_images/edit_flow_2.png
  3. インポートしたフローの「【ハンズオン】出張旅費精算申請」の image_common_4 をクリックします。
    ../../_images/edit_flow_3.png
  4. 「申請/処理開始」をダブルクリックして、フォーム編集画面を表示します。
    ../../_images/edit_flow_4.png
  5. 次の手順でルールを実行するタイミングとルールとのマッピングを設定しましょう。

アクション設定で OpenRules との連携情報を設定する

アクション設定で、画面の項目への入力のタイミングでのルールの実行を設定しましょう。
今回のハンズオンでは、場所・出張区分の値が変更されたタイミングでルールを実行するように設定します。
  1. 「アクション設定」をクリックします。
    ../../_images/action_settings_1.png
  2. 「アイテムイベント」をクリックします。
    ../../_images/action_settings_2.png
  3. image_common_2 」をクリックします。
    ../../_images/action_settings_3.png
  4. 追加した行のアイテムに「areaclass」、イベントタイプに「入力」を選択し、「 image_common_4 」をクリックします。
    ../../_images/action_settings_4.png
  5. image_common_2 」をクリックします。
    ../../_images/action_settings_5.png
  6. アクションに「外部連携」を選択し、「 image_common_4 」をクリックします。
    ../../_images/action_settings_6.png
  7. 右の欄から「 image_common_1 」をクリックします。
    ../../_images/action_settings_7.png
  8. データソース選択から作成したルール「【ハンズオン】日当計算ルール」をクリックします。
    ../../_images/action_settings_8.png
  9. 左の画面項目から「areaclass」をクリックします。
    ../../_images/action_settings_9.png
  10. 右の画面項目から「areaClassCode」をクリックします。
    ../../_images/action_settings_10.png
  11. 「追加」をクリックして、マッピングを追加します。
    ../../_images/action_settings_11.png
  12. 同様の手順で左の画面項目から「tripClass」をクリックします。
    ../../_images/action_settings_12.png
  13. 右の画面項目から「tripClassCode」をクリックします。
    ../../_images/action_settings_13.png
  14. 「追加」をクリックして、マッピングを追加したら、「レスポンス」をクリックします。
    ../../_images/action_settings_14.png
  15. 左の欄から「dailyAllowance」をクリックします。
    ../../_images/action_settings_15.png
  16. 右の欄から「日当」をクリックします。
    ../../_images/action_settings_16.png
  17. 「追加」をクリックして、マッピングを追加します。
    ../../_images/action_settings_17.png
  18. 「保存」をクリックしてマッピングを保存し、右上の「 image_common_3 」でデータマッパーを閉じます。
    ../../_images/action_settings_18.png
  19. アクション設定で「確定」をクリックしてアクションの内容を保存します。
    ../../_images/action_settings_19.png
  20. イベント設定で「確定」をクリックしてイベントの設定を保存します。
    これで、場所を入力したときにルールが実行できる状態にできましたので、出張区分の入力時にも同様にルールを実行できるように設定するため、「 image_common_2 」をクリックします。
    ../../_images/action_settings_20.png
  21. 追加した行のアイテムに「tripclass」、イベントタイプに「入力」を選択し、「 image_common_4 」をクリックします。
    ../../_images/action_settings_21.png
  22. 場所のアクション設定と同様に設定します。
    • アクション設定

      ../../_images/action_settings_22.png
    • データマッパー(リクエスト)

      ../../_images/action_settings_23.png
    • データマッパー(レスポンス)

      ../../_images/action_settings_24.png
  23. アクション設定で「確定」をクリックしてアクションの内容を保存します。
    ../../_images/action_settings_25.png
  24. イベント設定で「確定」をクリックしてイベントの設定を保存します。
    ../../_images/action_settings_26.png
  25. 「更新」をクリックしてフォームを保存します。
    ../../_images/action_settings_27.png
  26. 最後に「定義の反映」をクリックして、フローを実行できるようにします。
    ../../_images/action_settings_28.png
  27. これで、 OpenRules の結果に基づいて日当計算ができるようになりました。
    次の手順で、実行して日当が正しく計算されるのを確認してみましょう。