新規投稿
フォローする

関連レコード集計

いつもお世話になっております。

関連レコード集計の集計で色々の記事を拝見したのですが、

記述方法が分からず質問させていただきました。

条件を付けて集計される記事が多いのですが、

やりたいこととしては単純にそのレコードに表示されている関連レコードの

1つの値だけをsumで集計し、指定のフィールドに計算結果を表示させたいです。

具体的には

関連レコードAの金額の値の合計を算出

フィールドBに結果を反映

フィールドBは他のフィールドで集計した値とまた計算したりするので

数値フィールドがいいかと思っています。

関連レコードがない場合は0を入れるような処理で出来ないかと思っています。

大変申し訳ございませんが、お分かりになる方ご教示いただけると助かります。

何卒宜しくお願い致します。

0

2件のコメント

Avatar
たまご

関連レコード一覧は「別アプリにあるレコードを表示している」だけなので、そのレコード自体には値を持っていません。
関連レコードに表示されている内容を取得するには、レコード一括取得APIを使って対象のレコードを取得する必要があります。

レコード一括取得APIでレコード取得するときは、関連レコード一覧の「表示するレコードの条件」に当てはまるレコードのみ取得する必要があります。

これを一括取得API実行時のqueryパラメータに記載します。

たとえば、「関連レコードの項目を条件付きで集計」という記事の場合、
「Aプランを提案した案件」というのが余計だと思うので、サンプルコードの17~18行目を以下に書き直せば関連レコードに表示されているすべての値の集計になります。

var query = '顧客管理レコード番号_関連レコード紐付け用="' + clientRecordId;

※「提案プラン in ("Aプラン")」という部分を削除しています。

この記事だとレコード詳細画面でスペースフィールドに計算結果を表示しているので、
レコード登録・編集時にフィールドへ値追加する処理に書き換えれば、ご希望の動作になると思います。

たまごにより編集されました
0
Avatar
西達彦

返信が遅くなり申し訳ありません。

ご回答ありがとうございます。

質問前に記事を拝見したのですがいまいち理解できませんでした。

丁寧に教えていただきありがとうございます。

試してみます。

もう1点だけ質問なのですが、フィールドへの結果反映は

36行目~41行目を削除後

kintone.app.record.getSpaceElement(elementId).appendChild(divTotalAmount);を

フィールドに出力するように書き換えると思っているのですが、

どのように書き換えればよいのでしょうか。

0
サインインしてコメントを残してください。