CookBook

IM-FormaDesignerで作成したフォーム内で、外部連携を利用して最も簡単に値を渡す方法(テーブルアイテム編)

投稿日:2017-01-27 更新日:

このCookBookでは、IM-FormaDesignerで作成したフォーム画面の中で、テーブルアイテムからテーブルアイテムへ値を渡す方法について紹介します。
今回は例として、グリッドテーブルを利用し、テーブルからテーブルへ値を渡してみましょう。
以下の3つのデータ型の値を同時に渡します。

  • 文字列
  • 数値
  • 日付

前提条件

ご紹介する方法では外部連携機能を利用するため、IM-BISが環境に含まれている必要があります。
内容は重複してしまいますが、あらかじめ [単一アイテム編のCookBook] をご覧になってからこのCookBookを読むことをお薦めします。

完成イメージ


1. 左側のグリッドテーブルに、値を入力してください。
2. 画面下の「Transfer Values」ボタンをクリックしてください。
3. 画面右側の「string」と「number」に値が渡されます。

完成サンプル

以下の完成サンプルを、ローカル環境にインポートしてご活用ください。
なお、以下のサンプルはintra-mart Accel Platform 2016 Summerの環境を利用して作成したものです。
2016 Summerより前のバージョンでは正常に動作しない可能性があります。

ローカル環境で表示させる場合は、以下のURLにアクセスしてください。
http://localhost:8080/imart/forma/normal/view/regist_application_view/im_cookbook_114564_forma
なおベースURLである以下の部分は、環境に合わせて適宜変更してください。
http://localhost:8080/imart

レシピ

  1. IM-LogicDesignerを利用してロジックフローを作成する。
  2. 作成したロジックフローをデータソース定義に登録する。
  3. IM-FormaDesignerを利用してフォーム画面を作成する。
  4. 外部連携機能を利用して、アイテムからアイテムへ値を渡す設定をする。

IM-LogicDesignerを利用してロジックフローを作成する。

受け取った値を返却するだけのロジックフローを作成しましょう。

まずは入出力設定を行います。

入出力設定

入力 出力
object1 <object[]>
├──string1 <string>
├──integer1 <integer>
└──date1 <date>
object1 <object[]>
├──string1 <string>
├──integer1 <integer>
└──date1 <date>

object1がObject型の配列になっていることに注意しましょう。
object1の要素1つが、テーブル1行分のデータです。

次に、ロジックフローを作成しましょう。
StartタスクとEndタスクを矢印で直接つなぎ、Endタスクをダブルクリックしマッピング設定を行います。
入出力設定で追加した2つの入力データが直接出力されるようにマッピングしてください。

IM-LogicDesigner マッピング設定

以上でロジックフローの作成は終了です。
任意の名前で保存しましょう。

作成したロジックフローをデータソース定義に登録する。

先に作成したロジックフローをデータソース定義に登録してください。
登録方法について詳しくは、以下のドキュメントをご覧ください。

[IM-BIS システム管理者ガイド] – [データソース定義を設定する]

IM-FormaDesignerを利用してフォーム画面を作成する。

フォームデザイナ画面

上記スクリーンショットのようにアイテムを配置してください。
今回の例で設定したフィールド識別IDは以下です。

アイテムのラベル テーブル識別ID
リクエスト gt1
レスポンス gt2

左側に配置したgt1には以下の列を設定しています。

列名 列タイプ フィールド識別ID
文字列 文字列 gt1_textbox1
数値 数値 gt1_number1
日付 日付 gt1_calendar1

右側に配置したgt2にも、同様に列を設定しましょう。
最後に、アクション設定を利用するためにボタンを配置してください。

外部連携機能を利用して、アイテムからアイテムへ値を渡す設定をする。

配置したイベントボタンに対して、外部連携のアクション設定を行います。
データマッパーのリクエストタブでは、以下のようにマッピングを行ってください。

フォーム内の入力アイテム データソース定義の入力
gt1_textbox1 string1
gt1_number1 integer1
gt1_calendar1 date1

同様に、レスポンスタブでは以下のようにマッピングしてください。

データソース定義の出力 フォーム内の入力アイテム
string1 gt2_textbox1
integer1 gt2_number1
date1 gt2_calendar1

IM-FormaDesignerでは、以下4つのデータ型に対応していますが、全てIM-LogicDesignerで値を受け渡すことができます。
入出力データ型の仕様については以下のドキュメントをご覧ください。

終わりに

以上の手順を踏むことで、IM-FormaDesignerで作成したフォーム画面の中で、テーブルアイテムの値を受け渡すことができます。
データが複数行になっても、値を受け渡すことができます。

-CookBook
-, ,

執筆者:


  1. […] IM-FormaDesignerで作成したフォーム内で、外部連携を利用して最も簡単に値を渡す方法(テーブルアイテム編) […]

  2. […] また、テーブルでの値渡しについては、[テーブルアイテム編のCookBook] をご覧ください。 […]

comment

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

関連記事

no image

BISやFormaのテーブルにCSVファイルからのインポート・エクスポートを行うには

このCookbookでは、明細テーブルやグリッドテーブルとCSVファイルを連携する方法を紹介します。 この方法を活用することにより、明細テーブルやグリッドテーブルへの入力の手間を軽減できます。 完成イ …

no image

グリッドテーブルの列タイプ「カスタム」を利用した場合にマルチセレクトがトグルされないようにする方法

このCookBookでは、グリッドテーブルの列タイプ「カスタム」を利用した場合に、マルチセレクトがトグルされないようにする方法を説明します。 グリッドテーブルでは、行内で参照表示となっている部分をクリ …

no image

IM-BloomMaker のアクション「URL ○ にアクセスする」の使い方

このCookBookでは、「URL ○ にアクセスする」アクションを使ってサンプル画面を作成する方法を紹介します。 完成サンプル 以下の完成サンプルをダウンロードしてご活用ください。 IM-Bloom …

no image

imuiListTableで行の背景色を動的に変更する方法

このCookBookでは、imuiListTableで行の背景色を動的に変更する方法について紹介しています。 imuiListTableについての詳細はAPIドキュメントを参照してください。 [imu …

no image

IM-BISで複数のセレクトボックスを連動させて利用する方法

このCookBookでは、セレクトボックスの選択結果によって、他のセレクトボックスの選択肢を絞り込む方法を説明します。 この方法は、IM-BIS導入環境で利用することができます。IM-FormaDes …

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

RSSRSSRSSRSS