CookBook

外部連携を利用して簡単な相関チェックを行う方法

投稿日:2017-07-03 更新日:

このCookbookでは、外部連携を利用して簡単な相関チェックを行う方法を紹介します。
この方法を活用することにより、簡単な入力チェックであれば、Formaユーザプログラムの入力チェックを作成せずに外部連携だけで実施することができます。

完成イメージ

サンプルでは、入力項目ABCの3つを配置し、A=BかつA>C以外の場合、入力チェックエラーとして外部連携のレスポンスメッセージでエラーを表示しています。

完成サンプル

以下はBIS定義、ロジックフロー定義のサンプルです。
ダウンロードして各インポート機能からご利用ください。

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

種類 定義名 補足説明
BIS定義 im_cookbook_117510 関連するFormaアプリケーション定義やIM-Workflowのフロー定義の情報も含まれます。
データソース定義 im_cookbook_117510 -
ロジックフロー定義 im_cookbook_117510 -

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

  • IM-BIS 2017 Spring(8.0.13)以降のバージョンであること
  • サンプルデータのインポートが行われていること

サンプルは、IM-BIS 2017 Spring(8.0.13)で動作確認を行っています。

レシピ

  1. BISワークフローを作成する。
  2. ロジックフローを作成する。
  3. データソース定義を作成する。
  4. BISワークフローのアクション設定を設定する。
  5. 作成したBISワークフローにて、「apply」ボタンをクリックする。

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

1. BISワークフローを作成する。

BISワークフローを作成します。
フォームABCの3つと申請ボタンを配置します。

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

ロジックフローを作成します。

(1) フォームABCをロジックフローの入力とします。
(2) 出力としては、外部連携のレスポンスに設定できるメッセージのデータ構造を設定します。

外部連携のレスポンスに設定できるメッセージについては、[暗黙的に連携するレスポンスパラメータの仕様]を参照してください。

(3) レスポンスとして設定するimfrErrorFlagをfalseで初期化します。以降のチェック処理でエラーとなった場合にtrueが設定されます。
(4) EL式を利用して、入力データのチェックを実施します。
(5) チェックでエラーと判定された場合、対応するエラーメッセージを変数に格納します。
(6) (5)にて変数に格納したエラーメッセージを出力値にマッピングします。
チェックで正常と判定された場合、imfrErrorFlagがfalseのまま変更がありません。そのため、マッピングしている成功メッセージが表示されます。
チェックでエラーと判定された場合、imfrErrorFlagがtrueになり、設定したエラーメッセージが表示されます。

3. データソース定義を作成する。

2.で作成したロジックフローに対するデータソース定義を作成します。

4. BISワークフローのアクション設定を設定する。

「Applyボタン」に対し、アクション設定の外部連携で、3.で作成したデータソース定義を設定します。

5. 作成したBISワークフローにて、「apply」ボタンをクリックする。

入力チェックでエラーとなった場合、エラーメッセージが表示されました。
入力チェックで正常となった場合、成功メッセージとワークフローの標準処理画面が表示されます。

-CookBook
-,

執筆者:


comment

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

関連記事

no image

FormaDesignerで作成したフォーム内でカーソル遷移を制御する方法

このCookbookでは、FormaDesignerで作成したフォーム内でカーソル遷移を制御する方法を紹介します。 Tabキーを使ったカーソル遷移を考慮し、ユーザビリティが高いフォームを作成しましょう …

no image

画面操作方法によって画面アイテムの入力チェックを切り替える方法

このCookBookでは、IM-FormaDesignerの入力チェックプログラムで、画面の操作方法に応じた入力チェックを設定する方法を紹介します。 この方法は、以下の製品で作成したアプリケーションや …

no image

ワークスペース機能におけるイベントカレンダーの利用例

このCookBookでは「intra-mart Accel Collaboration」ワークスペース機能におけるイベントカレンダーの利用例について紹介しています。 intra-mart Accel …

no image

PostgreSQL の Docker を作成する。

この CookBook では、PostgreSQL 検証用の Docker の作成手順について紹介しています。 レシピ ベースイメージの作成 PostgreSQL の Docker イメージを作成しま …

スプレッドシートのバインディングデータを別途テーブルに出力する方法

スプレッドシートのJsonデータとバインディングデータは、Formaヘッダーテーブルにバイナリカラムで格納されます。 Formaヘッダーテーブルに格納されたスプレッドシートデータは、登録データ情報管理 …

まだデータがありません。

RSSRSSRSSRSS