この記事では、kintone アプリの関連レコード一覧フィールドの値を、表示アイテムにセットする方法をご紹介します。



はじめに

クエリで条件を指定して kintone からレコードを取得する」で取得したレコードから、関連レコード一覧フィールドの値は直接取得できません。

関連レコード一覧で参照しているアプリに対し、別途、kintone接続設定を行い、「クエリで条件を指定してkintoneからレコードを取得する」で対象レコードを取得する必要があります。



表示例

今回、kintone の「顧客管理」アプリ内の、関連レコード一覧フィールドで「案件管理」アプリのレコード表示を想定しています。




エブリサイトでは、入力された顧客IDに対応するレコードを「案件管理」アプリから取得し、会社名と案件一覧を表示します。

下記は、顧客ID「C001」・会社名「株式会社サンプル」の情報を表示した例です。




kintone の設定

【設定例】フォーム

顧客管理アプリ

顧客管理アプリでは、下記のフィールドを用意します。


フィールド名

フィールドコード

顧客ID

顧客ID

会社名

会社名

案件一覧

案件一覧




案件一覧(関連レコード一覧フィールド)は下記のように設定し、案件管理アプリから、同じ「顧客ID」のレコードを表示します。




案件管理アプリ

案件管理アプリでは、下記のフィールドを用意します。


フィールド名

フィールドコード

顧客ID

顧客ID

顧客名

顧客名

進捗状況

進捗状況

案件名

案件名




【設定例】APIトークン

関連レコード一覧フィールドで表示する「案件管理」アプリで、APIトークンを用意します。「アクセス権」は「レコード閲覧」をチェックします。




エブリサイトの設定

【設定例】接続設定

kintone の設定で取得した APIトークンを設定します。


接続設定タブの説明については、次の記事をご覧ください。

ページ画面の接続設定タブについて




【設定例】画面デザイン

タイルにウィジェット「シンプル縦フォーム」(顧客ID入力用)と、「シンプルテーブル」(案件一覧表示用)を配置します。


ウィジェットの一般的な設定については、下記の記事をご覧ください。

ウィジェット編集画面全体とウィジェットの設定および編集について

ウィジェット編集画面のアイテムについて




【設定例】ウィジェット編集

シンプル縦フォーム(顧客ID入力用)

検索したい「顧客ID」を入力するためのアイテム「文字列入力(1行)」を1つ、検索実行のためのアイテム「ボタン(塗りつぶし)」を1つ、検索結果の「会社名」を表示するためのアイテム「ラベル付きテキスト」を1つ設置します。




パラメーターを下図の通り設定します。


顧客ID

検索ボタン



会社名





シンプルテーブル(案件一覧表示用)

後のページ内処理で取得する kintone の「案件管理」アプリのレコードから、「進捗状況」と「案件名」を表示するため、アイテム「テキスト」を2つ設置します。




パラメーターを下図の通り設定します。

後のページ内処理で値をセットするため、「テキスト」はなにも指定しません。


進捗状況

案件名



【設定例】ページ内処理

全体の設定例を下記に示します。


ページ内処理タブの説明については、次の記事をご覧ください。

ページ画面のページ生成時処理、ページ内処理タブについて




検索ボタン(Button)を押したタイミングで、入力された顧客ID(ClientID)のレコードを、kintone の「案件管理」アプリから取得します。

これにより「顧客管理」アプリの案件一覧(関連レコード一覧フィールド)と同じ条件のレコードを取得できます。


 やること「クエリで条件を指定して kintone からレコードを取得する

【取得元アプリ】

74

【kintone 接続設定】

案件管理

【検索条件】

顧客ID = “${ClientID}”

【最大取得件数】

【取得するフィールド(省略時はすべて)】

顧客名

進捗状況

案件名

【キャッシュが無効になる日時】


 条件「ページを表示した時





アクション2 では、アクション1 で取得したレコードから「顧客名」フィールドの値を、会社名(Company)にセットします。


 やること「テーブルの表示内容をセットする

【アイテム】

Company

【表示内容】

= $1[0].顧客名


 条件「他のアクションの実行が完了した時




アクション3 では、アクション1 で取得したレコードから、「進捗状況」と「案件名」フィールドの値を、案件一覧テーブル(SimpleTable)の進捗状況(Status)と案件名(Project)に一括でセットします。


 やること「テーブルの表示内容をセットする

【テーブル】

SimpleTable

【表示するレコード】

1

【表示内容】

Status = 進捗状況

Project = 案件名


 条件「他のアクションの実行が完了した時




まとめ

以上がエブリサイトで、kintone アプリの関連レコード一覧フィールドの値を表示する方法でした。


関連レコード一覧フィールドの値は、「クエリで条件を指定して kintone からレコードを取得する」で取得したレコードから直接参照することができません。そのため、関連レコード一覧フィールドの設定と同じ条件で、参照先アプリからレコードを取得する必要があります。


本記事で紹介した内容以外にも、エブリサイトの ドキュメントページ や サポートページ では、さまざまな設定方法や活用例を紹介しています。あわせてご活用ください。