CookBook

FormaDesignerのユーザプログラム前処理と後処理をロジックフローで作成する方法

投稿日:

このCookBookでは、FormaDesignerのユーザプログラム前処理と後処理をロジックフローで作成する方法を紹介します。

サンプルでは、ユーザプログラム前処理と後処理を利用して、Workflowでユーザプロファイルを更新しています。
申請画面の前処理で、ログインユーザのプロファイル情報を取得します。
また、変更内容を承認画面の後処理として、プロファイルの更新を実行しています。

完成イメージ


1.申請処理でユーザプロファイルの情報を取得します。
2.承認処理でユーザプロファイルの情報を更新します。
3.IM-共通マスタ プロファイルが設定・更新されます。

  • 申請画面
  • 承認画面
  • IM-共通マスタ プロファイルの設定・更新後
  • 完成サンプル

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

  • LogicDesigner
  • LogicDesignerのインポート機能からインポートしてください。
    [IM-LogicDesigner ユーザ操作ガイド] - [インポートを行う]
    im_cookbook_162290_logicdesigner-data

  • ワークフロー
  • zipファイルを任意のフォルダに展開し、IM-Workflowのインポート機能を利用してインポートしてください。
    [IM-Workflow 管理者操作ガイド] - [インポート/エクスポートを行う]
    im_cookbook_162290_workflow-data

  • Formaアプリ
  • Formaアプリのインポート機能からインポートしてください。
    [IM-FormaDesigner for Accel Platform 作成者 操作ガイド] - [「アプリケーション情報インポート」画面の機能と各部の説明]
    im_cookbook_162290_forma

    レシピ

    1. 前処理・後処理のロジックフローを作成します。
    2. Formaアプリを作成します。
    3. ユーザプログラムで前処理・後処理の設定をします。
    4. ワークフローを作成します。
    5. 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(入出力設定)」から入力・出力値に渡されるパラメータ情報を設定してください。

    入力:上記のドキュメント通り(また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フォーム上のユーザプロファイルを設定・更新します。

    申請・承認画面で処理を行い、ユーザプロファイルが設定・更新されていることを確認してください。

    -CookBook
    -,

    執筆者:


    comment

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

    関連記事

    no image

    BloomMaker 入力規則エラーメッセージエレメントの使い方

    このCookBookでは、Accel Platform 2021 Springで追加されたエレメント「入力規則エラーメッセージ」について紹介しています。 「入力規則エラーメッセージ」は、指定した変数に …

    no image

    ViewCreatorでIM-Workflowのフロー毎の取止め・差戻し案件件数を表示する。

    このCookBookでは、ViewCreatorでIM-Workflowのフロー毎の取止め/差戻し案件件数を表示する方法を説明します。 検索条件を変更することで、IM-Workflowの特定の状況をモ …

    IM-BloomMaker で作成した画面で、入力項目の値によってエレメントの表示・非表示を切り替える方法

    このCookBookでは、IM-BloomMakerで入力系エレメントの入力値によってエレメントの表示/非表示を切り替える方法について紹介しています。 実際にサンプル画面を作成しながら解説を行います。 …

    no image

    IM-BloomMaker Bulma Theme Colored について

    この CookBook では intra-mart Accel Platform 2021 Summer から利用可能になった コンテンツ種別「Bulma Theme Colored」について紹介しま …

    no image

    IM-BloomMaker Bulma を使用した入力系画面の作成

    intra-mart Accel Platform 2020 Summer から、コンテンツ種別「Bulma」が提供されました。 このCookBookでは、スクリプト開発モデルのサンプル登録画面をもと …