CookBook

ワークフローの参照者を動的に設定する

投稿日:2018-04-02 更新日:

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

今回のCookbookでは、申請時の担当組織に基づいて、特定のパブリックグループのユーザを参照者(案件操作権限者)に設定するための方法が確認できます。

完成イメージ


申請者の担当組織に基づいて、ロジックフローで参照者を設定するサンプルです。
任意のフロー定義の参照者に「ロジックフロー(ユーザ)」を利用することにより、特定のパブリックグループのユーザを参照者に設定できます。

完成サンプル

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

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

種類 定義名 補足説明
ユーザ定義(JavaScript) 【Cookbook】ロジックフローで案件操作権限者を設定する(検索条件の作成) 共通マスタのパブリックグループの検索条件を生成するユーザ定義です。
ユーザ定義(JavaScript) 【Cookbook】ロジックフローで案件操作権限者を設定する(ワークフローパラメータの作成) ワークフローの参照者の設定用のパラメータを生成するユーザ定義です。
ロジックフロー 【Cookbook】ロジックフローで案件操作権限者を設定する 上記のユーザ定義を参照しているロジックフローです。

上記のサンプルの利用条件は以下の通りです。

  • intra-mart Accel Platform(Advanced) 2018 Spring(8.0.19)以降のバージョンであること
  • サンプルデータのインポートが行われていること

サンプルは、intra-mart Accel Platform(Advanced) 2018 Spring(8.0.19)で動作確認を行っています。

レシピ

  1. ロジックフローを作成する
  2. ワークフローで利用可能なロジックフローに登録する
  3. ワークフローの参照者(案件操作権限者)に「ロジックフロー(ユーザ)」を追加する
  4. 実行画面で確認する

1. ロジックフローを作成する

1. 入出力設定の登録

  • 入力はIM-Workflowが提供しているパラメータを利用するため、以下のドキュメントに基づいて、「処理対象者プラグインに属するリソースの入力設定」の「imwApplyAuthInfo(申請者情報)」を設定してください。
  • 出力は、入力と同様に「処理対象者プラグインに属するリソースの出力設定」を設定してください。
    [IM-Workflow 管理者操作ガイド] - [ロジックフローを利用する]
  • 設定後の入出力設定は、以下の画面のとおりです。

入力項目 データ型
imwApplyAuthInfo object
  userCd string
  companyCd string
  departmentSetCd string
  departmentCd string
出力項目 データ型
userCds string[]

2. 定数の設定

  • 以下のとおりに、共通マスタの検索条件のパブリックグループセットコードを定数に定義してください。

定数ID 定数値
publicGroupSetCd sample_public

3. タスクの配置と接続

  • 以下のとおりに、タスクを配置し、それぞれのタスク同士を接続してください。

(1) 【Cookbook】Setting matter handle user by Logic Flow (Creation of Search condition)
  ワークフローから受け取った申請者情報を、次の「パブリックグループに所属するユーザの取得」タスクの入力値の形式に変換しています。

(2) Get User belonging to Public Group
  共通マスタからパブリックグループに所属するユーザの情報を取得しています。

(3) 【Cookbook】Setting matter handle user by Logic Flow (Creation of Workflow parameter)
  共通マスタ取得したユーザの情報をワークフローに受け渡し可能な形式に変換しています。

4. マッピングの設定

各タスクのマッピングを以下のとおりに設定してください。

(1) 【Cookbook】Setting matter handle user by Logic Flow (Creation of Search condition)
入力の imwApplyAuthInfo 、定数の publicGroupSetCd をそれぞれ同じ名称の項目にマッピングしてください。

(2) Get User belonging to Public Group
「【Cookbook】Setting matter handle user by Logic Flow (Creation of Search condition)」の出力項目をマッピングしてください。

(3) 【Cookbook】Setting matter handle user by Logic Flow (Creation of Workflow parameter)
「Get User by Public Group」の出力項目をマッピングしてください。

(4) End
ロジックフローの出力値をワークフローの参照者や処理対象者に利用する場合、以下の図のように、String型の配列としてユーザコードを渡してください。

ここまででロジックフローが完成しましたので、保存後に次の手順に移ってください。

2. ワークフローで利用可能なロジックフローに登録する

作成したロジックフローをワークフローで利用可能にするための設定を行います。
ワークフローの「ロジックフロー管理」でリソース「案件操作権限者(参照者)」と作成したロジックフローを関連づけてください。
設定の詳細は以下のドキュメントをご覧ください。
[IM-Workflow 管理者操作ガイド] - [ロジックフローを利用する]

3. ワークフローの参照者(案件操作権限者)に「ロジックフロー(ユーザ)」を登録する

ワークフローのフロー定義の参照者にロジックフローを追加してください。
以下の例では、サンプルの「直線ルート[JavaEE開発モデル]」のフロー定義の参照者にロジックフローを追加しています。
設定の詳細は以下のドキュメントをご覧ください。
[IM-Workflow 管理者操作ガイド] - [参照者を設定する]

4. 実行画面で確認する

最後に、参照者にロジックフローを追加したワークフローで申請してください。
申請後の案件の参照者を確認すると、特定のパブリックグループのユーザが登録されていることを確認できます。

なお、ワークフローの処理権限者・確認対象者・案件操作権限者(参照者)に「ロジックフロー(ユーザ)」を利用する場合、いくつか注意事項があります。
詳細は以下のドキュメントをご覧ください。
[IM-Workflow 管理者操作ガイド] - [処理対象者プラグインに属するリソースの入力設定に関する注意事項]

-CookBook
-, ,

執筆者:


comment

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

関連記事

no image

入力欄を増やすボタンを作成する方法

このCookBookでは、入力欄を増やすボタンを作成する方法について紹介しています。 完成イメージ 完成サンプル 以下の完成サンプルをダウンロードしてご活用ください。 このサンプルは、2020 Sum …

no image

IM-BloomMaker エレメントを狙った位置に配置する方法

この CookBook ではエレメントを狙った位置に配置する方法について紹介します。エレメントを配置する方法として、エレメントをドラッグ&ドロップする方法がありますが、配置先のスペースが狭いとなかなか …

no image

No.7 Excel 出力 → 他システム(別サーバ)連携

この記事は、EWS 2017で行われたLogicDesignerの講演内容に関する記事です。 こちらの例では、ファイルサーバ等他のサーバと連携し、別サーバ上のファイルを更新できます。 ロジックフローの …

スプレッドシートにフロー毎の未処理件数を表示するポートレットの作成方法

このクックブックでは、スプレッドシートにフロー毎の未処理件数を表示するポートレットの作成方法をご紹介します。 ポートレットは、スプレッドシートとIM-Workflow REST APIを利用して作成し …

no image

完了したワークフロー案件の登録データをメンテナンスする方法

このCookBookでは、IM-BISとIM-FormaDesignerで作成したワークフロー案件の登録データを編集する方法を紹介します。 一部制限はありますが、IM-FormaDesignerのアプ …