はじめに
kintoneの「関連レコード一覧」機能には、以下のような制約があります。
「表示するレコードの条件」に指定できるのは1つのフィールドのみ
→ 複数のフィールドを使った条件設定(AND条件など)はできない。
「さらに絞り込む条件」で使用できるのは固定値のみ
→ 自アプリ内の他のフィールドの値を比較対象として利用することはできない
(参考)kintoneヘルプ:[関連レコード一覧]の設定項目[表示するレコードの条件]に指定できるフィールド)
この制約を回避する方法としては、複数のフィールドの値を結合した「キー項目」を作成し、そのフィールドを条件に指定することで、制約をある程度回避できる場合もあります。
ただし、以下のような課題が残ります。
「&」演算子で結合可能なフィールドタイプに制限がある
「○○を含む」「○○以上」などの条件設定には対応できない
このため、複雑な条件での関連レコード表示には限界があります。
この時、カスタマインであればやること「条件を組み立ててレコードを取得する」などのレコード取得をする「やること」と、やること「レコードの一覧をスペースに表示する」を活用することで、上記の制約を超えた、以下のような柔軟なレコードの絞り込みが可能です。
複数のフィールド値を使った条件設定
自アプリのフィールド値を使った条件設定
やること「ボタンをフィールド名の右に配置する」などと、条件「ボタンを押した時」を活用することによる、表示するレコードの切り替えや絞り込み
さらに、やること「レコードの一覧をスペースに表示する」はスマートフォン版画面でも利用可能です。基本機能の関連レコード一覧を使った場合よりも情報が見やすくなり、モバイルでの活用にも適しています。
完成イメージ
また、やること「テーブル行をレコードとして取得する」等を使用してテーブルの情報を取得すると、やること「レコードの一覧をスペースに表示する」を使って、内容を見やすくすることができます。
kintoneのアプリ設定
フォームの設定でスペースフィールドを配置し、要素IDを「kanren」と設定します。
※要素IDはお好みの文字列(半角英数)を指定してください。
カスタマインの設定
続いて、それぞれのカスタマイズを順に解説します。
1.レコードを表示させたい条件を指定
やること「なにもしない」を選択し、条件「追加画面・編集画面・詳細画面のいずれかを表示した時」を選択します。
続いて、「なにもしない」を選択し、条件「フィールドの値を編集して値が変わった時」を選択し、フィールド「日付、報告者、報告区分」を選択します。
【解説】
2.表示するレコードを絞り込むための日付を計算する
やること「日付を計算する」を選択し、基準日「日付」を選択、右辺値「-7」と入力、計算内容「○日後」を選択します。
条件「いずれかのアクションの実行が完了した時」を選択し、アクション「7,8」を選択します。
続いて、追加条件「フィールド値が空でないならば」を選択し、フィールド「日付」を選択します。
同じように、追加条件「フィールド値が空でないならば」を選択し、フィールド「報告者」を選択、追加条件「フィールド値が空でないならば」を選択し、フィールド「報告区分」を選択します。
3.表示するレコードを取得する
やること「条件を組み立ててレコードを取得する」を選択し、取得元アプリ「日報アプリ」を選択します。検索条件は下記の通り、設定します。
条件「他のアクションの実行が完了した時」を選択し、アクション「9」を選択します。
4.スペースフィールドに取得したレコードを表示する(表示レコードに関するコメントも合わせて表示)
やること「スペースに文字を表示する」を選択し、場所「kanren」を選択し、表示するテキスト「▼過去一週間、同一報告区分レコード」と入力します。
条件「他のアクションの実行が完了した時」を選択し、アクション「10」を選択します。
続いて、やること「レコードの一覧をスペースに表示する」を選択し、場所「kanren」を選択、レコード「10」を選択、表示するフィールド「日付、報告者、報告区分、タイトル、添付ファイル」を選択します。
条件「他のアクションの実行が完了した時」を選択し、アクション「11」を選択します。
以上でカスタマイズは完了です。
最後に
やること「レコードの一覧をスペースに表示する」は、テーブル内フィールドも表示可能です。
以下の記事も併せてご覧ください。
関連レコードをもっと便利に!他のアプリのテーブルとテーブル外のフィールドをスペースに表示する方法
以上です。
また、ご不明点等ございましたら、チャットにてご質問ください!








