4.3 処理で利用する値の設定
ここでは、一覧取得処理で利用する入出力値を設定します。管理画面で定義したリクエストパラメータやレスポンスデータと対応付けることで、画面と処理の間でデータを受け渡せるようにします。
処理で利用する値を確認する
「4.2 画面で利用する値の設定」で設定した内容をもとに、一覧取得処理で利用する値を確認します。一覧取得処理では、検索フォームで入力した検索条件やソート条件をendPoint.requestParameterから受け取り、取得した一覧データと総件数をendPoint.responseDataへ返却します。
フロー内の処理で利用する値には、以下の4種類があります。
- 入力値:フロー実行時に画面から受け取る値。ロジックフローの処理を開始する際に使用
- 出力値:フロー実行後に画面へ返却する値。処理結果として利用
- 変数:フロー全体で一時的に使用する値。処理の途中結果やデータの受け渡しに利用
- 定数:フロー全体で共通で使用する固定値
各値の概要について、詳細は「ローコード操作マニュアル - 入出力値・変数・定数の定義」を参照してください。
ここでは、入出力値の設定について説明します。本チュートリアルでは、処理内で利用する変数や定数は使用しないため、入出力値のみを設定します。
画面変数と入出力値の関係
IM-BloomMakerの画面変数と、IM-LogicDesignerの入出力値はアクションを介してデータを受け渡します。

たとえば、検索フォームに入力した検索条件や、列見出しで選択したソート条件は、state.conditionに保持されます。検索ボタンや列見出しをクリックすると、それらの値がendPoint.requestParameterへ設定され、一覧取得処理の入力値として渡されます。
一覧取得処理の実行後、取得した一覧データと総件数がendPoint.responseDataへ返却されます。その後、responseDataの内容をstate.tableDataやstate.pagination.totalCountへ反映することで、一覧と件数が画面に表示されます。
ロジックフローを作成する
一覧取得処理を作成するため、ロジックフローを作成します。登録処理と同様に「ロジック」リソースを追加した後、フローで利用する入出力値を設定します。
ロジックフローを追加する
「アプリケーション管理」画面を表示し、アプリケーションに「ロジック」リソースを追加します。

Step 0. 事前準備
操作手順
ロジックフローを追加する前に、以下の内容を確認してください。
- フローカテゴリが作成されていること
└ 「intra-mart環境の確認 > フローカテゴリ」を参照してください。 - リソース管理表およびデータ項目管理表を参照できること
- └ 「アプリケーション管理」画面の[ドキュメント]タブをクリックすると、「資産管理アプリ(試作品)」というWikiファイルが表示されます。
- └ 各管理表の内容については、「1. アプリの生成 > アプリで使用するリソース名を決める」を参照してください。
Step 1. ロジックフロー定義を追加する
操作手順
- [ロジック]タブをクリックします。
- [リソースを追加]→[ロジックを新規作成]の順にクリックします。
- [ロジックフロー]をクリックします。

- 「フロー定義ID」に「tmp_asset_list」と入力します。
- 「フロー定義」に「資産一覧取得処理(試作品)」と入力します。
- フローカテゴリを選択します。
- [
]→「資産管理アプリ(試作品)」を選択
- [登録]をクリックします。
└ 「確認」ダイアログで[登録]をクリックします。
└ 「ロジックフロー定義編集」画面が表示されます。

ロジックフローのリソース追加手順について、詳細は「ローコード操作マニュアル - 新規ロジックフロー定義の追加」を参照してください。その他にも、「ロジックフロー定義編集」画面の項目について確認できます。
入出力値を設定する
入力値には、画面変数requestParameterで定義したsearchConditionとsortConditionに対応する値を設定します。出力値には、画面変数responseDataで定義した一覧データと総件数に対応する値を設定します。これにより、画面から検索条件・ソート条件を受け取り、処理結果を画面へ返却できるようになります。入出力値は、ツールバーにある[入出力設定]をクリックすると、「入出力設定」ダイアログが表示されます。

Step 1. 入力値を設定する
操作手順
IM-BloomMakerでは、画面変数のrequestParameter配下に、searchConditionとsortConditionを設定しました。IM-LogicDesignerでも同じデータ構造で画面から値を受け取るため、searchConditionとsortConditionをそれぞれ設定します。

- [object]をクリックします。
- 入力値の名称を変更します。
- 「searchCondition」に変更→任意の箇所をクリック
- 「配下に配置する」にチェックを入れます。
- [string]をクリックします。
- 入力値の名称を変更します。
- 「tmpAssetName」に変更→任意の箇所をクリック
- 「searchCondition」を選択します。
- 「配下に配置する」のチェックを外します。

- [object]をクリックします。
- 入力値の名称を変更します。
- 「sortCondition」に変更→任意の箇所をクリック
- 「配列型にする」にチェックを入れます。
- 「配下に配置する」にチェックを入れます。
- [string]をクリックします。
- 入力値の名称を変更します。
- 「key」に変更→任意の箇所をクリック
- [string]をクリックします。
- 入力値の名称を変更します。
- 「order」に変更→任意の箇所をクリック
- 画面変数の
requestParameterは、「4.2 画面で利用する値の設定 > 変数を設定する」のStep 3.でsearchConditionとsortConditionをそれぞれ作成しています。 - 階層的なデータ構造を作成する場合は、オブジェクト型を使用します。詳細は「ローコード操作マニュアル - 入出力・変数設定-応用操作 > 複数のデータを階層構造でまとめる」を参照してください。
- 一覧のように同じ種類のデータを繰り返し扱う場合は、配列型にすることで、データを順序付きリストとして格納できます。詳細は「ローコード操作マニュアル - 入出力設定-基本操作 > 配列型に変更する場合」を参照してください。
IM-BloomMakerでは画面変数の階層構造をマップ型で定義します。一方、IM-LogicDesignerでは同様の階層構造をオブジェクト型で定義します。利用する型名は異なりますが、どちらも階層構造を持つデータを表すために使用します。IM-LogicDesignerのデータに関する仕様は、「IM-LogicDesigner仕様書 - 4.1.7. データ」を参照してください。
Step 2. 出力値を設定する
操作手順
IM-BloomMakerでは、画面変数のresponseData配下に、一覧データを受け取るrecordsと、総件数を受け取るtotalCountを設定しました。IM-LogicDesignerでは、画面側で定義したresponseDataに対応するように、出力値としてrecordsとtotalCountを設定します。

- [IM-Repository]をクリックします。
- 「資産(試作品)」エンティティを選択し、[決定]をクリックします。
└ 「確認」ダイアログで[決定]をクリックします。
└ 出力値にエンティティが追加されます。

- [キー名を変更]をクリックします。
- 出力値の名称を変更します。
- 「tmp_asset_entity」から「records」に変更→任意の箇所をクリック
- 「配列型にする」にチェックを入れます。
- 画面変数の
responseDataは、「4.2 画面で利用する値の設定 > 変数を設定する」のStep 3.でrecordsを作成しています。 - IM-Repositoryのエンティティを利用する方法について、詳細は「ローコード操作マニュアル - 入出力・変数設定-応用操作 > IM-Repositoryのエンティティを利用する」を参照してください。
- 一覧のように同じ種類のデータを繰り返し扱う場合は、配列型にすることで、データを順序付きリストとして格納できます。詳細は「ローコード操作マニュアル - 入出力設定-基本操作 > 配列型に変更する場合」を参照してください。
IM-BloomMakerでは、一覧に必要な項目だけを表示する設計にしています。一方、IM-LogicDesignerでは、IM-Repositoryのエンティティをそのまま利用し、全項目を出力値として設定します。エンティティの全項目を返却することで、一覧に表示する項目を追加しても、処理側を変更せずに画面側の設定だけで対応できます。また、管理画面では必要な項目だけを表示し、詳細画面で全項目を表示するなど、同じ返却データを複数の画面で再利用することも可能です。

- [integer]をクリックします。
- 出力値の名称を変更します。
- 「totalCount」に変更→任意の箇所をクリック
- [決定]をクリックします。
- 画面変数の
responseDataは、「4.2 画面で利用する値の設定 > 変数を設定する」のStep 3.でtotalCountを作成しています。
入出力値の設定が完了したら、設定内容を一時保存します。[上書き保存]の右側にある[▼]をクリックし、[一時保存]を選択してください。一時保存した内容はWebブラウザに保存されます。なお、[上書き保存]はロジックフローが完結していない状態では実行できません。フローの保存方法について、詳細は「ローコード操作マニュアル - 新規ロジックフロー定義の保存 > Webブラウザに一時保存する」を参照してください。
こんなときは
操作中に不明な点や問題が発生した場合は、以下の項目から該当する内容を選択してください。