[関連レコードの項目を条件付きで集計]をさらにカスタマイズする

ど素人なりに、何パターンか試しても上手くいかず行き詰った状態のため、相談させてください。

(質問がメインとなり、申し訳ございません。)

 

https://developer.cybozu.io/hc/ja/articles/203030394

こちらの記事では、Aプランの合計値を算出する内容となっておりますが

1)Bプラン・Cプラン・・・といくつかのパターンで合計値を算出する
2)それぞれのプランで、かつステータスがXXXのものの合計値を算出する

という仕様にしたいと考えております。

 

例)

プラン名|ステータス|金 額

Aプラン| 受注済 |30,000円

Aプラン| 商談中 |10,000円

Bプラン| 受注済 |50,000円

Cプラン| 商談中 |70,000円

Bプラン| 受注済 |20,000円


という関連レコードがあった場合、

●Aプランの 受注済の 合計金額:30,000円

●Bプランの 受注済の 合計金額:70,000円

●Cプランの 受注済の 合計金額:0円(空白でも大丈夫です)

というように算出したいと考えております。

この部分に「ステータスが受注済のもの」という定義を追加する形でしょうか?
(安易ですが、andで追加できるのかと思い試しましたが見事に失敗でした)

 

また、この仕様ではスペースフィールドへ合計値を書き出す形となりますが、数値や文字列フィールドへ書き出すことは可能でしょうか?

ご教授頂けますと幸いです。

 

何卒よろしくお願い申し上げます。

 

 

 

あんざい 様

ステータスフィールドはドロップダウンの場合、Status in (“受注済”)のように書きます。

(Status はステータスフィールドのフィールドコードです。)

複数条件を指定する場合、and(全て満たす場合)で繋げます。

Queryについて次の記事をご参考ください。

kintone API のクエリの書き方の基本

「query」パラメータで利用可能な演算子と関数

 

>数値や文字列フィールドへ書き出すことは可能でしょうか?

可能だと思います。

event[“合計値を入れるフィールドコード”].value = amount;のような感じです。

アプリのデータ更新処理について、こちらのサイトにたくさんの参考記事がありますが、
Kintoneカスタマイズにあまり詳しくないようでしたら、次のようなアプリ内のデータを計算してほかのフィールドに書き込む簡単なサンプル記事をおすすめです。

第8回 簡単な更新処理に挑戦してみよう

さらにアプリをまたぐデータの取得と更新は次の記事をご参考になるかと思います。

第10回 kintone REST APIを利用したレコード取得

akika様

ご丁寧にありがとうございます!

参考ページも拝見しましたが、弊社の場合、A社からの受注が毎月あった場合、受注のあった月ごとにレコードが作成される仕様となっておりまして、下記のような仕組みです。

 

●売上管理アプリ →1受注ごとに1レコード

●企業情報アプリ →1企業ごとに1レコード

つまり、株式会社ANZAIという企業があったとして、その企業から今月AプランとBプラン両方を受注した場合は、

・Aプラン受注用に1レコード

・Bプラン受注用に1レコード を作成する仕様です。

2つのアプリはIDで紐づけられ、企業情報アプリの方に関連レコードで売上表を表示させている状態です。

(サブスク商品ではないため、同一企業から同一商品を度々受注することがあります)

 

その関連レコードの集計をプランごと、かつステータスが"受注済"のものの合計を算出するという方法を探しておりますが、

「売上管理アプリ内で、同一IDのものは合計値を自動で算出する」

というようなことが可能なのでしょうか・・・?

カスタマイズ以前に発想自体が無かったもので、大変恐縮です。

ご指摘の通り、カスタイマイズは苦手なので、別の方法があるならチャレンジしてみたいと思っております!

あんざい 様

そのようなご利用でしたら、カスタマイズは一番いい気がします。

一応、標準機能のグラフを使えば、絞り条件で受注済を指定し、企業毎かつプラン毎の集計はできます。

ただし、企業数が多くなると、グラフはとても見づらくなります。

 

このパターンのカスタマイズは「関連レコードの項目を条件付きで集計」にかなり近いので、

ご自身でチャレンジしてみてはいかがでしょうか?

| クエリ指定のところは、次のように指定して全プランのデータを取ってきて、さらにプライン毎に集計処理を回せばと思います。 |
|

query = '顧客管理レコード番号_関連レコード紐付け用="' + clientRecordId +'" and Status in ("受注済")';    

|   |

もしコーディングがご自身で難しい場合や、開発以前に設計から考える必要がある場合は、

サイボウズのパートナーにご相談することもご検討ください。

こちらのフォームからご相談いただくと、ご要望にあったパートナーも紹介できますので是非ご活用ください。

https://cybozu.co.jp/products/partner/consulting/

akika様

アドバイスありがとうございます。

プラン毎に集計処理を回す部分を勉強していこうと思います!

かなり時間がかかりそうですが、基本から勉強しなおしですね!

(そもそもコードの繋げ方が分かっておりませんでして・・・)

 

初心者な私に、ご丁寧にご指導くださり、ありがとうございました。