IM-BIS for Accel Platform IM-BIS 仕様書 第11版 2018-12-01

9.13. 暗黙的に連携するレスポンスパラメータの仕様

外部連携にはレスポンスのマッピングなしで、暗黙的に特定のレスポンスパラメータに値が連携される機能があります。
暗黙的に連携するレスポンスパラメータは以下の通りです。
  • 処理結果メッセージ

9.13.1. 処理結果メッセージとは

外部連携の実行結果に応じて任意の成功メッセージ・エラーメッセージ・入力チェックエラーメッセージを表示・ファイルデータを
ダウンロードする機能です。手順は以下の通りです。
  1. 外部連携のレスポンス定義に 処理結果メッセージ「imfrSoaResult」オブジェクト を追加する。
  2. 外部連携の実行時に処理結果に応じてレスポンスの 処理結果メッセージ「imfrSoaResult」オブジェクト に値を設定する。

9.13.2. 利用できるデータソース種別と実行タイミング

処理結果メッセージを利用できるデータソース種別と外部連携の実行タイミングは以下の通りです。
  • 外部連携のレスポンスとして、ファイルデータを受け取る場合

    1. データソース種別
      • LogicDesigner
    2. 実行タイミング
      • アクション設定
  • 上記以外

    1. データソース種別
      • LogicDesigner
      • SOAP (非推奨)
      • REST (非推奨)
      • JAVA (非推奨)
    2. 実行タイミング
      • アクション設定
      • 前処理
      • 後処理

9.13.3. ファイルデータの受け取りに関する仕様

外部連携のレスポンスにファイルデータを返却することで、外部連携実行時に任意のファイルをダウンロードできます。
ロジックフローの出力値として返却するファイルデータのデータ型は以下の通りです。
  • Binary

  • Storage(ファイルを示すパブリックストレージまたはセッションスコープストレージ)
    ディレクトリを示すストレージの指定には対応しておりません。
1イベント処理でダウンロードできるのは1ファイルのみです。
1つのイベントに複数のアクション処理が設定可能なため、複数ファイルデータを返却する設定はできますが動作は保証致しません。

9.13.4. メッセージの表示に関する仕様

各外部連携の実行タイミングにおけるメッセージの表示の仕様について説明します。
  1. アクション設定
  • imfrErrorFlagが「true」の場合

    エラーメッセージボックスが画面上部に表示されます。
    ../../../_images/error_msg.png
  • imfrErrorFlagが「false」の場合

    インフォメーションメッセージボックスが画面上部に表示されます。
    ../../../_images/information_msg.png
  1. 前処理

    • imfrErrorFlagが「true」の場合、エラーメッセージの詳細メッセージ部に表示されます。

      ../../../_images/preprocess_error.png
  2. 後処理

    • アプリケーション種別「ワークフロー」の場合

      imfrErrorFlagが「true」の場合、標準処理画面のエラーメッセージボックスに指定メッセージを付加して表示されます。
      ../../../_images/postprocess_error_wkf.png
    • アプリケーション種別「BISフロー」の場合

      imfrErrorFlagが「true」の場合、エラーメッセージボックスに指定メッセージを付加して表示されます。
      ../../../_images/postprocess_error_bf.png

注意

動的処理者設定・案件終了処理は、処理結果メッセージを呼出元に戻すことはできない為、外部連携先でエラーが発生した場合は、適切なログ出力等を行ってください。

9.13.5. 入力チェックエラー通知に関する仕様

外部連携の実行タイミングがアクション設定の場合は、入力チェックエラー通知を行うことができます。
返却された処理結果メッセージのエラーアイテム情報から、通常処理時の入力チェックと同様の入力チェックエラー通知が行われます。
../../../_images/input_error.png

コラム

一回のイベントで連続して複数の外部連携を実行した場合は、最後に実行した外部連携の処理結果メッセージが表示されます。

9.13.6. メッセージがクリアされるタイミング

処理結果メッセージがクリアされるタイミングは以下の通りです。
  1. アクション設定(非入力チェックエラー)の場合

    • メッセージボックスがクリックされたタイミングでメッセージボックスが消えます。
    • メッセージボックス表示されてから10秒経過したタイミングでメッセージボックスが消えます。
  2. アクション設定(入力チェックエラー)の場合

    次に通常処理または外部連携により入力チェックが行われたタイミングでエラー通知がクリアされます。

    新たに行われた入力チェック結果
    • OKの場合
      既存のエラー通知はクリアされます。
    • NGの場合
      既存のエラー通知がクリアされて、新しい入力チェックエラーの通知内容に更新されます。

9.13.7. 処理結果メッセージのデータ構造

データ構造

処理結果メッセージを返却するデータソース定義のレスポンスパラメータの構造には、以下の仕様に沿った処理結果メッセージ「imfrSoaResult」オブジェクトを含める必要があります。オブジェクトに割り当てる階層レベルには制限がありません。
../../../_images/soa_result_structure.png

パラメータの説明

処理結果メッセージ「imfrSoaResult」オブジェクトの各パラメータについて説明します。

パラメータ名
データ型
説明
(1)
imfrErrorFlag
boolean
エラーフラグです。
レスポンス返却時は、処理結果がエラーの場合に「true」を設定します。エラーの場合はアイテムへの値の反映は行われません。
(2)
imfrMessage
array
メッセージ配列です。
処理結果メッセージを表示する場合に定義します。
レスポンス返却時に複数メッセージを設定した場合はカンマ(,)区切りでメッセージが表示されます。
(3)
imfrMultiMessages
array
多言語用メッセージ情報配列です。
多言語に対応したメッセージを表示する場合に定義します。
返却されたレスポンスのimfrMessageにメッセージの設定がある場合は、imfrMessageが優先されます。
(4)
imfrMulti_%locale_id%
string
メッセージです。利用するシステムロケール数分定義します。
ex)日本語、英語、中国語に対応する場合「imfrMulti_ja」「imfrMulti_en」「imfrMulti_zh_CN」をそれぞれ定義。
(5)
imfrErrorItems
array
入力チェックエラーアイテム情報です。
連携先で入力チェックを行う場合は必ずこのパラメータを定義してください。
(6)
imfrInputId
array
エラーになったアイテムのフィールド識別ID配列です。
外部連携を設定したフォームにあるアイテムのフィールド識別IDを設定します。
一つのエラーメッセージに対し、複数のフィールドが紐づく場合は、レスポンス返却時に関連する画面アイテムのフィールド識別IDを全て設定します。
但し「グリッドテーブル」の場合は、同一テーブル内のフィールド識別IDのみ設定が可能です。
入力チェックエラーメッセージのみ表示させたい場合は空配列を設定します。
(7)
imfrErrorMessage
string
入力チェックエラーメッセージです。
(8)
imfrErrorMultiMessages
object
多言語用入力チェックエラーメッセージ情報です。多言語に対応したメッセージを返却する場合に定義します。
返却されたレスポンスのimfrErrorMessageにメッセージの設定がある場合は、imfrErrorMessageが優先されます。
(9)
imfrErrorMulti_%locale_id%
string
多言語用入力チェックエラーメッセージです。利用するシステムロケール数分定義します。
ex)日本語、英語、中国語に対応する場合は「imfrErrorMulti_ja」「imfrErrorMulti_en」「imfrErrorMulti_zh_CN」をそれぞれ定義。
(10)
imfrIndex
number
エラー行番号です。入力チェック対象にテーブルが含まれる場合に定義します。
レスポンス返却時はエラーになった行の番号を設定します。
(11)
imfrDownloadFile
object
ダウンロードファイルオブジェクトです。外部連携のレスポンスとして、ファイルデータを受け取る場合に定義します。
(12)
imfrFile
storage または binay
ファイルデータです。ファイルを示すストレージまたはバイナリデータを設定します。
(13)
imfrFileName
string
ファイル名です。未指定の時は、ファイルデータがstorageの場合は実ファイル名、binaryの場合は 「imfrFile_yyyyMMdd-HHmm」がファイル名に設定されます。

実行タイミングとパラメータ設定の仕様

データソース定義に必要なパラメータは、外部連携を実行するタイミングにより異なります。
  1. アクション設定

    • imfrErrorFlag
      処理結果メッセージを利用する場合は必須です。
    • imfrMessage, imfrMultiMessages, imfrErrorItems, imfrDownloadFile
      いずれか1つ以上のパラメータを定義する必要があります。imfrMessage、imfrMultiMessages両方にメッセージの設定がある場合は、imfrMessageのメッセージが優先されます。
      imfrErrorItemsは外部連携で入力チェックを行う場合に必ず必要なパラメータです。
      外部連携実行時に入力チェックエラーになった(返却されたレスポンスのimfrErrorItemsにエラーアイテム情報の設定がある)場合、imfrMessage、imfrMultiMessagesのメッセージは表示されません。

      注意

      入力チェックを行わない場合はimfrErrorItemsを定義してはいけません。
      定義すると外部連携実行時に予期しないタイミングで表示中のアイテムエラー通知がクリアされる場合があります。
  2. 前処理/後処理

    • imfrErrorFlag
      処理結果メッセージを利用する場合は必須です。
    • imfrMessage, imfrMultiMessages
      どちらか1つのパラメータを定義する必要があります。imfrMessage、imfrMultiMessages両方にメッセージの設定がある場合は、imfrMessageのメッセージが優先されます。
      前処理/後処理ではimfrErrorItemsを利用できないため、パラメータを定義しても処理結果メッセージには反映されません。

コラム

LogicDesignerのデータ構造については、「 IM-BIS システム管理者操作ガイド 」 - 「 外部連携 処理結果メッセージ(LogicDesigner)サンプル 」を参考にしてください。

注意

処理結果オブジェクトのいずれかの要素にマッピング設定・関数ビルダの設定があった場合は、 処理結果オブジェクトとはみなされず、暗黙的な連携は行われません。