3.4. 交通違反 DMN デシジョン論理の定義


罰金を計算し、ドライバーが免許停止になるかどうかを判定するために、DMN デシジョンテーブルとコンテキストボックス式を使用した交通違反 DMN デシジョン論理を定義します。

図3.7 罰金のデシジョンテーブル

dmn gs fine decision table

図3.8 ドライバーを免許停止にする必要がありますか ?

dmn gs context table

前提条件

  • Business Central の交通違反 DRD で、DMN カスタムデータタイプが適切なデシジョンおよび入力ノードに割り当てられている。

手順

  1. 罰金を計算するには、DMN デザイナーキャンバスで Fine デシジョンノードを選択し、Edit をクリックして DMN ボックス式デザイナーを開きます。
  2. Select expression Decision Table をクリックします。
  3. パラメーターフィールド Violation.DateViolation.Code、および Violation.Speed Limit で右クリックして、各フィールドで Delete を選択します。
  4. Violation.Actual Speed 列ヘッダーをクリックし、Name フィールドに Violation.Actual Speed - Violation.Speed Limit 式を入力します。
  5. Fine パラメーターフィールドを右クリックして、Insert left または Insert right を選択します。
  6. output-2 列サブヘッダーをクリックし、Name フィールドに Amount を入力し、Data Type プルダウンメニューから number を選択します。
  7. 同様に output-1 列サブヘッダーをクリックして Name フィールドに Points と入力し、Data Type フィールドから number を選択します。
  8. 次に、デシジョンテーブルの一行目に以下の値を入力します。

    • Violation.Type: "speed"
    • Violation.Actual Speed - Violation.Speed Limit: [10..30)
    • Amount: 500
    • Points: 3

      1 行目を右クリックし、Insert below を選択して新たな行を追加します。

  9. デシジョンテーブルの 2 行目に以下の値を入力します。

    • Violation.Type: "speed"
    • Violation.Actual Speed - Violation.Speed Limit: >= 30
    • Amount: 1000
    • Points: 7

      2 行目を右クリックし、Insert below を選択して新たな行を追加します。

  10. デシジョンテーブルの 3 行目に以下の値を入力します。

    • Violation.Type: "parking"
    • Violation.Actual Speed - Violation.Speed Limit: -
    • Amount: 100
    • Points: 1

      3 行目を右クリックし、Insert below を選択して新たな行を追加します。

  11. デシジョンテーブルの 4 行目に以下の値を入力します。

    • Violation.Type: "driving under the influence"
    • Violation.Actual Speed - Violation.Speed Limit: -
    • Amount: 1000
    • Points: 5
  12. Save をクリックします。
  13. ドライバーの免許停止ルールを定義するには DMN デザイナーキャンバスに戻って Should the driver be suspended? デシジョンノードを選択し、Edit をクリックして DMN ボックス式デザイナーを開きます。
  14. Select expression Context をクリックします。
  15. ContextEntry-1 をクリックして NameTotal Points と入力し、Data Type プルダウンメニューから number を選択します。
  16. Total Points の横のセルをクリックしてコンテキストメニューから Literal Expression を選択し、Driver.Points + Fine.Points 式を入力します。
  17. Driver.Points + Fine.Points の下のセルのコンテキストメニューから Literal Expression を選択し、if Total Points >= 20 then "Yes" else "No" と入力します。
  18. Save をクリックします。

    これで罰金の計算方法とドライバーをいつ免許停止にするかを決定するコンテキストが定義されました。traffic-violation プロジェクトページに移動して Build をクリックすると、用例のプロジェクトがビルドされ、Alerts パネルのエラー (ある場合) が対処されます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.