やること「リストから要素を取り出す」と「レコードから重複を除去する」を使用すると、以下のようなテーブルで項目ごとの個数を集計し、集計結果を別のテーブルに集計結果を書き出すことができます。
※ kintone アプリのフィールド名、フィールドコードは同じに設定しています。
Customine のカスタマイズ
追加画面・編集画面にボタンを配置し、ボタンをクリックすると「購入明細テーブル」内の「仕入先」フィールド毎に「個数」フィールドの値が集計され、
集計結果が「仕入先ごとの個数集計テーブル」に出力されるカスタマイズを作成します。
まず、やること「ボタンをメニュー位置に配置する」、条件「追加画面・編集画面を表示した時」でボタンを追加・編集画面上部に配置します。
まずは、書き出し先の「仕入先ごとの個数集計テーブル」の既存のテーブル行をクリアします。
やることは「フィールド値をクリアする」、条件は「ボタンを押した時」を指定します。
「フィールド」にテーブルを指定すると、テーブルの行をすべてクリアできます。
次に、やること「テーブル行をレコードとして取得する」、条件「他のアクションの実行が完了した時」で「購入明細テーブル」のテーブル行をレコードとして取得します。
このとき、「空の行を取得するかどうか」は「空の行は取得しない」を指定します。
項目ごとの集計を行う際に重要なポイントが以下です。
やること「レコードから重複を除去する」で、アクション2でレコードとして取得したテーブル行から、「仕入先」をキーに重複をなくします。
そして重複がない状態の「仕入先」に対して、やること「リストから要素を取り出す」で繰り返し処理を行います。
「リスト」には「レコードから重複を除去する」のアクション3を指定してください。
このときリストには、「= $3.仕入先」のように、
= $レコードから重複を除去する のアクション番号.集計の軸となるフィールドのフィールドコード
を指定します。
条件には「いずれかのアクションの実行が完了した時」を指定してください。
「アクション」には、「レコードから重複を除去する」のアクション3、そして「テーブルに行を追加する」のアクション6を指定します。
このように指定することで、重複のない仕入先の数だけ、アクション4から6が繰り返されます。
やること「レコード内の条件に合う行のフィールド合計値を計算する」を使用し、個数の集計を行います。
ポイントとなるのが「レコード選択アクション」です。
ここで指定するのは、「テーブル行をレコードとして取得する」のアクション2です。
アクション2でレコードとして取得したテーブル行の中から、リストから取り出した「仕入先」が同じテーブル行のみ集計します。
たとえばリストから取り出した仕入先が”林田商会”であれば、林田商会の行だけが集計され、以下の場合合計値は「2」となります。
他のパラメーターは下記のように指定します。
計算するフィールド:個数
条件判定フィールド:仕入先
条件:等しい
比較値:= $4
条件には「リストから要素を取り出した時」を指定してください。
集計結果を「仕入先ごとの個数集計テーブル」に追加します。
やること「テーブルに行を追加する」を指定し、各フィールドの値には下記のように指定します。
合計仕入先:= $4
合計個数: = $5
最後に、「テーブルから空の行を削除する」でテーブルの1行目にある空白行を削除します。
条件に「リストからの取り出しが終了した時」を指定すると、リストの取り出しがすべて完了してから空行が削除されます。
これでカスタマイズは完了です。
「kintone アプリへ登録」ボタンを押し、動作を確認してみてください。
ご不明点等ございましたら、チャットにてご質問ください!
Customineドキュメントやサポートページもぜひご活用ください。