CookBook

BloomMakerでワークフロー処理モーダルと動的処理対象者設定機能を利用してWorkflowコンテンツを作成する

投稿日:2020-03-31 更新日:

このCookBookでは、BloomMakerで、ワークフロー処理モーダルと動的処理対象者設定機能を利用したWorkflowのコンテンツを作成する方法を紹介します。
本稿では、BloomMakerでワークフロー処理モーダルを利用してWorkflowコンテンツを作成する のサンプルに対し、以下の部分を変更しています。

  • 承認ノードを動的承認ノードに変更
  • 動的承認ノードに設定する処理対象者を選択するセレクトボックスを申請ノードに配置

変更点以外のレシピについては、BloomMakerとLogicDesignerでWorkflowコンテンツを作成する を参照してください

2020 Winter(8.0.27)より、一覧表示パターンで「コピー新規」アイコンが利用できるようになりました。
それに伴い、LogicDesignerフロー定義:GetPurchaseData にコピー新規用ロジックを追加しています。

また、コピー新規用ロジックで使用する「参照権限判定」は2022 Spring(8.0.31)より追加された新たな判定範囲を利用しています。

完成イメージ


テナント環境セットアップのサンプルインポートで登録される、スクリプト開発/JavaEE開発で作成されたサンプル相当のフローをBloomMakerとLogicDesignerで作成しています。
申請画面で選択した内容で動的処理者設定を利用して、動的承認ノードの処理対象者を決定しています。

「Approver」項目の選択状態によって、次のように動作します。

  • SelectFromSampleDivision01:動的処理対象者設定機能の暗黙条件を利用して、SampleDivision01に所属するユーザのみ、申請モーダルで設定できるようにします。
  • aoyagi:申請モーダルで動的承認ノードの選択は表示せず、承認者としてaoyagiを設定します。
  • NodeSkip:動的承認ノードを削除します。

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。

IM-BloomMakerインポートファイル : im_bloommaker-data
IM-BloomMaker のインポート画面からインポートしてください。
なお、インポート後にはIM-BloomMaker ルーティング定義の認可設定が必要ですのでご注意ください。

IM-LogicDesignerインポートファイル : im_logicdesigner-data
IM-LogicDesigner のインポート画面からインポートしてください。

IM-Workflowインポートファイル : im_cookbook_178020
IM-Workflowのインポート画面からインポートしてください。

サンプルに含まれる定義情報は以下の表の通りです。

種類 定義名 補足説明
BloomMakerコンテンツ im_cookbook_178020 メインとなるWorkflowの処理画面
BloomMakerルーティング定義 im_cookbook_178020 上記BloomMakerコンテンツに対するルーティング定義
LogicDesignerフロー定義 ActionProcessPurchaseData Workflowアクション処理で利用。ユーザデータを登録/更新する。
LogicDesignerフロー定義 ActvMatterDeleteListenerPurchaseData Workflow未完了案件削除処理で利用。ユーザデータを削除する。
LogicDesignerフロー定義 CplMatterDeleteListenerPurchaseData Workflow完了案件削除処理で利用。ユーザデータを削除する。
LogicDesignerフロー定義 GetPurchaseData BloomMaker前処理で利用。ユーザデータを取得する。
LogicDesignerユーザ定義 DeletePurchaseData LogicDesignerフロー定義で利用する
LogicDesignerユーザ定義 GetMatterNumber LogicDesignerフロー定義するスクリプト
LogicDesignerユーザ定義 GetPurchaseData LogicDesignerフロー定義するSQL
LogicDesignerユーザ定義 InsertPurchaseData LogicDesignerフロー定義するSQL
LogicDesignerユーザ定義 UpdatePurchaseData LogicDesignerフロー定義するSQL
LogicDesignerユーザ定義 validatePurchaseData LogicDesignerフロー定義するスクリプト
Workflowコンテンツ定義 im_cookbook_178020 BloomMakerコンテンツ、LogicDesignerフロー定義を設定
Workflowルート定義 im_cookbook_178020
Workflowフロー定義 im_cookbook_178020

サンプルは以下の環境で動作を確認できます。

  • intra-mart Accel Platform(Advanced) 2020 Spring(8.0.25)以降のバージョンであること
  • テナント環境セットアップで、サンプルデータがインポート済みであること

レシピ

  1. 処理対象者を選択する「Pull-down」を配置します
  2. 「Pull-down」の選択値からdynamicNodeConfigsを設定します。
  3. dcNodeConfigsを「Display application modal」アクションの「Dynamic approval node setting information」に設定します。

設定項目の詳細は、添付のサンプルを参照してください。

1. 処理対象者を選択する「Pull-down」を配置します

処理対象者を選択する「Pull-down」を「Apply」画面に配置します。
サンプルでは、処理対象者として以下を選択できるようにします。

  • SelectFromSampleDivision01:動的処理対象者設定機能の暗黙条件を利用して、SampleDivision01に所属するユーザのみ、申請モーダルで設定できるようにします。
  • aoyagi:申請モーダルで動的承認ノードの選択は表示せず、承認者としてaoyagiを設定します。
  • NodeSkip:動的承認ノードを削除します。

2. 「Pull-down」の選択値からdcNodeConfigsを設定します。

「Apply」画面で選択した値から、動的承認ノードの処理者を設定します。

設定する処理対象者のパラメータについては、以下を参照してください。

3. dcNodeConfigsを「Display application modal」アクションの「Dynamic approval node setting information」に設定します。

「Display application modal」アクションにdcNodeConfigsを設定します。

参考:「Display application modal」アクションの「Previous information discard flag」パラメータ
サンプルでは、「Previous information discard flag」をtrueで設定しています。
このフラグは、デフォルトではfalseとなり、基本的には×ボタン押下でモーダル画面を閉じた場合、次の申請モーダル表示時は前回設定情報で表示します。
しかし、今回のように、画面項目を利用して動的処理者設定等を利用している場合、モーダルを開く都度動的処理者設定を実行するほうが好ましい場合があります。
その場合、「Previous information discard flag」をtrueで利用してください。

-CookBook
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

IM-BloomMaker レイアウトの作り方(横に並べる編)

この CookBook では横向きのレイアウトの作り方を紹介していきます。また、レイアウトの作り方(縦に並べる編)もありますので、併せてご確認ください。 はじめに 以前使用されていた HTML 上の要 …

申請者の役職から処理対象者を設定する

このCookbookでは、IM-Workflow 2018 Springから新たに追加された 処理対象者プラグイン「ロジックフロー(ユーザ)」 の設定方法を紹介いたします。 この機能を利用すると、申請 …

no image

スクリプト開発した画面にバリデーション(入力チェック)を実装する

このCookBookでは、作成した画面項目に対してバリデーション(入力チェック)を設定する方法をご紹介します。 今回はスクリプト開発で登録フォームを作成するで作成した画面項目に対して、クライアントサイ …

no image

IM-LogicDesigner マッピング機能におけるデータ型変換について

IM-LogicDesigner ではマッピング設定で、型が異なる項目をマッピングすると暗黙的な型変換が行われます。 マッピング設定についての詳細は IM-LogicDesigner チュートリアルガ …

REST API 経由でジョブネットを起動する方法

この CookBook では、REST API とを経由してジョブネットを実行する方法について紹介しています。 完成サンプル 以下の完成サンプルをダウンロードしてご活用ください。 LogicDesig …