このCookBookでは、FormaDesignerのユーザプログラム前処理と後処理をロジックフローで作成する方法を紹介します。
サンプルでは、ユーザプログラム前処理と後処理を利用して、Workflowでユーザプロファイルを更新しています。
申請画面の前処理で、ログインユーザのプロファイル情報を取得します。
また、変更内容を承認画面の後処理として、プロファイルの更新を実行しています。
完成イメージ
1.申請処理でユーザプロファイルの情報を取得します。
2.承認処理でユーザプロファイルの情報を更新します。
3.IM-共通マスタ プロファイルが設定・更新されます。
完成サンプル
以下の完成サンプルをダウンロードしてご活用ください。
LogicDesignerのインポート機能からインポートしてください。
[IM-LogicDesigner ユーザ操作ガイド] - [インポートを行う]
im_cookbook_162290_logicdesigner-data
zipファイルを任意のフォルダに展開し、IM-Workflowのインポート機能を利用してインポートしてください。
[IM-Workflow 管理者操作ガイド] - [インポート/エクスポートを行う]
im_cookbook_162290_workflow-data
Formaアプリのインポート機能からインポートしてください。
[IM-FormaDesigner for Accel Platform 作成者 操作ガイド] - [「アプリケーション情報インポート」画面の機能と各部の説明]
im_cookbook_162290_forma
レシピ
- 前処理・後処理のロジックフローを作成します。
- Formaアプリを作成します。
- ユーザプログラムで前処理・後処理の設定をします。
- ワークフローを作成します。
- WFフォーム上のユーザプロファイルを設定・更新します。
1. 前処理・後処理のロジックフローを作成します。
IM-LogicDesignerで前処理と後処理のロジックフローを作成します。
フロー定義ID | |
前処理 | im_cookbook_162290_flow_pre_processing |
後処理 | im_cookbook_162290_flow_post_processing |
im_cookbook_162290_flow_pre_processing(前処理)
①「Input and Output Settings(入出力設定)」をクリックします。
入力・出力値に渡されるパラメータ情報を設定してください。
[IM-FormaDesigner プログラミングガイド] - [前処理] - [ロジックフロー]
入力:上記のドキュメント通り
出力:下記を追加してください。
・data <object型>
名前 | 型 |
userCd | string |
address1 | string |
emailAddress1 | string |
telephoneNumber | string |
・error <boolean型>
②「Constrant Settings(定数設定)」をクリックします。
下記を追加してください。
定数ID | 定数値 |
false | false |
次に、“Acquisition of user profile”タスクのマッピングをします。
下記の表の左右欄をマッピングさせてください。
userProfile/userCd | im_immGetProfile1/userCd |
最後に、“End”タスクのマッピングをします。
下記の表の左右欄をマッピングさせてください。
定数/false | error |
userProfile/address1 | address1 |
userProfile/emailAddress1 | emailAddress1 |
userProfile/telephoneNumber | telephoneNumber |
userProfile/userCd | userCd |
im_cookbook_162290_flow_post_processing(後処理)
①「Input and Output Settings(入出力設定)」から入力・出力値に渡されるパラメータ情報を設定してください。
- 後処理プログラムを実装する手順の詳細は以下のドキュメントをご覧ください。
[IM-FormaDesigner プログラミングガイド] - [後処理] - [ロジックフロー]
入力:上記のドキュメント通り(またsendParmは、下記の表を追加してください)
・sendParam <object型>
名前 | 型 |
address1 | string |
emailAddress1 | string |
telephoneNumber | string |
出力:上記のドキュメント通り
➁「Constrant Settings(定数設定)」に下記の表を追加してください。
定数ID | 定数値 |
ja | ja |
false | false |
次に、“Multilingual information update”タスクのマッピングをします。
下記の表の左右欄をマッピングさせてください。
sendParam/address1 | im_immUpdateLocalizedProfile1/address1 |
sendParam/emailAddress1 | im_immUpdateLocalizedProfile1/emailAddress1 |
sendParam/telephoneNumber | im_immUpdateLocalizedProfile1/telephoneNumber |
定数/ja | im_immUpdateLocalizedProfile1/targetLocale |
セッション情報/systemDate | im_immUpdateLocalizedProfile1/targetDate |
ユーザコンテキスト/userProfile/userCd | im_immUpdateLocalizedProfile1/userCd |
ユーザコンテキスト/userProfile/userName | im_immUpdateLocalizedProfile1/userName |
ユーザコンテキスト/userProfile/userSearchName | im_immUpdateLocalizedProfile1/userSearchName |
最後に、“End”タスクのマッピングをします。
下記の表の左右欄をマッピングさせてください。
定数/false | error |
2. Formaアプリを作成します。
Formaアプリを作成してください。
アプリケーション種別は「IM-Workflow」を設定します。
・Formaアプリ
アイテムはテキストボックスを使用し、下記の表を参考に設定をしてください。
※全テキストボックスの表示タイプ「承認」を「入力可」に選択をしてください。
各アイテムのフィールド識別IDは下記のように入力してください。
フィールド識別ID | userCd |
フィールド識別ID | address1 |
フィールド識別ID | emailAddress1 |
フィールド識別ID | telephoneNumber |
また、WF連携設定も行ってください。
3. ユーザプログラムで前処理・後処理の設定をします。
Formaアプリの「フォーム設定/編集」-「フォーム一覧」-「ユーザプログラム一覧」から設定をしてください。下記の表を入力してください。
・前処理プログラム(申請)
プログラム種別 | ロジックフロー |
フロー定義 | im_cookbook_162290_flow_pre_processing |
・後処理プログラム(更新)
プログラム種別 | ロジックフロー |
フロー定義 | im_cookbook_162290_flow_post_processing |
4. ワークフローを作成します。
フロー定義では、作成したコンテンツ定義とルート定義を選択してください。
5. WFフォーム上のユーザプロファイルを設定・更新します。
申請・承認画面で処理を行い、ユーザプロファイルが設定・更新されていることを確認してください。