04:26フォローするはじめに指定した条件にあてはまるレコードをフォームに表示する「関連レコード一覧」ですが関連するレコードの数を取得することができません。そこで今回は、アプリ同士の連携で、関連レコードとして紐づけられているレコードの数を表示させるためのTipsをご紹介します。利用イメージ例えば、顧客リストアプリと案件情報アプリで顧客名で紐づけた関連レコードを利用している場合に顧客リストアプリ内で関連した案件の数を把握したい場合に利用できます。レンタル品目一覧アプリとレンタル申請アプリを紐づけている際にはレンタル品目一覧アプリを確認することで、利用回数の多い備品を確認することなどが可能になります。毎回、関連するアプリに移動し絞り込みやグラフの確認などをすることなく関連レコードを設置したアプリからレコード数が確認できるようになるTipsです。アプリの準備まずは今回のTip用では、アプリストアにある営業支援(SFA)パックを利用しすでに紐づけがされている顧客情報(Aアプリ)、案件情報(Bアプリ)を利用します。顧客情報(Aアプリ)顧客情報(Aアプリ)には、下記のフィールドを用意します。※アプリストアのアプリを利用する場合も、フィールドコードの修正を行ってください。CompanyName関連レコードに表示するレコードの絞り込み用また、関連レコードの件数を表示するための、スペースフィールドを追加します。備考(名前設定なし)スペースnum関連レコードの件数を表示用スペースついでに、スペースフィールドの近くにラベルを設置して何を示している値なのかわかりやすくしておきましょう。※この場合のラベル名は関連案件数としています。案件情報(Bアプリ)案件情報(Bアプリ)には、下記のフィールドを用意します。※アプリストアのアプリを利用する場合も、フィールドコードの修正を行ってください。APIでPromiseを使ってみよう!のページで解説されているように別アプリのデータを取得して処理を行う際にはkintone.Promiseの利用が推奨されています。関連レコードで紐づけているBアプリのレコードの情報を取得しています。上記kintone.api()で取得したオブジェクトの数をスペースフィールドに反映させます。API解説シリーズレコード詳細にもボタンを設置しようでkintone.app.record.getSpaceElementについて詳しく解説しています。今回はというフィールドコードで設置したスペースフィールドに値を反映させますので、関連レコードの項目を条件付きで集計と同じように関連レコードに合致するレコードの数を、フィールドの近くに設置しました。※上記サンプルの場合は一度に表示する最大レコード数を5件に設定していますが実際の案件情報アプリでの関連レコードは全部で6件登録されていることがわかりました。関連レコードのフィールド設定で「さらに絞り込む条件」を設定することができます。この設定を行った場合は、サンプルコード上で件数カウントをするためのクエリにも条件を追加してください。デモ環境https://dev-demo.cybozu.com/k/285/※デモ環境についての説明、アカウントとパスワードはこちらおわりにアプリ同士の連携を図る関連レコード一覧は標準機能で利用できるためkintoneを活用するには欠かせない機能となっています。今回のTipsでご紹介したカスタマイズを加えることでより便利になると思いますので、お使いのkintoneアプリ用にアレンジを加えてチーム内での情報活用にお役立てください。コミュニティをご活用ください。06:12上記サンプルを試してみたところ、関連案件数ではなく、Bアプリの全レコード件数が表示されてしまいました。どのような要因が考えられますでしょうか?ご教示いただけますと幸いです。返答が遅くなり申し訳ございません。サンプルコードでは、ご指摘の通り関連案件数ではなく全レコード件数を取得するものになっていました。サンプルコードと記事の内容を修正しました。デモ環境もご用意しましたのでご活用ください。08:23お忙しいところ、ご対応くださりありがとうございます!是非試してみたいと思います。下記のようなエラーが表示されたのですが原因がわかりますでしょうか。様お世話になっております。運営事務局でございます。コミュニティをご活用ください。有志により回答が得られる場所となります。07:44こちらのサンプルをスペースフィールドではなく文字列フィールドへ件数を反映させるにはどのようにしたら宜しいでしょうか。ご教示頂けると幸いです。様お世話になっております。運営事務局でございます。サンプルコードの39-44行目でスペースフィールドに表示する要素を作成し、スペースフィールドの要素に追加するという処理をしているので、この部分の書き換えが必要となります。この記事のサンプルコードで使用しているイベント(app.record.detail.show)では、eventオブジェクトの書き換え(文字列フィールドへ件数を反映させること)が出来ないため、レコード追加画面の保存実行前イベント(app.record.create.submit)などの他のイベントで書き換える必要があります。お手数ですが、質問が記事のシナリオと異なる場合、コミュニティをご活用ください。https://developer.cybozu.io/hc/ja/community/topicsよろしくお願い申し上げます。02:20運営事務局様ご回答いただきありがとうございます。こちらのイベントでは無理なのですね、頂いた参考も含め勉強いたします。ありがとうございます。08:29山本理一様お世話になっております。運営事務局でございます。コミュニティをご活用ください。有志により回答が得られる場所となります。Permalinkログインしてコメントを残してください。