Edited at

kintoneに存在しないデータをkrewDataで抽出する


やること

顧客マスターと訪問履歴の2つのkintoneアプリがある場合を考えます。

顧客マスターには全顧客が登録されています。

訪問履歴には訪問した顧客のデータしか存在しません。

kintoneの標準機能では訪問していない顧客を抽出することはできません。

そこでkrewDataを使って訪問していない顧客を抽出してみます。


krewDataとは

krewDataとはスケジュール実行でアプリ間のデータを自在に集計できるkintoneプラグインです。

30日間の無料お試しがあります。


存在しないデータの抽出方法1

それでは早速試してみます。


kintoneアプリの構成とデータ

顧客マスターアプリの構成は以下の通りで、5件登録されています。

顧客マスター.jpg

訪問履歴アプリの構成とデータは以下の通りで、2件登録されています。

訪問履歴.jpg


krewDataの設定

全体のフローは以下の通りです。

krewData2.jpg


  • ポイント1

    「レコード結合」パーツで顧客マスターの顧客名と訪問履歴の顧客名とを結合します。

    顧客マスターの5件と訪問履歴の2件を合わせて7件になります。

    krewData3.jpg


  • ポイント2

    「グループ化」パーツで顧客名でグループ化し、件数をカウントします。

    krewData4.jpg


  • ポイント3

    「フィルタ」パーツで件数が1件のみに絞り込みます。

    krewData5.jpg


  • ポイント4

    ポイント3の時点で未訪問の顧客を抽出できていますが、顧客担当も同時に取得できたほうが便利です。

    そこで、「アプリ結合」パーツで顧客マスターと結合して顧客担当を紐づけます。

    krewData6.jpg



存在しないデータの抽出方法2

書いていて外部結合+フィルタでも実現できることに気が付きました。

こっちのほうがフローが短いです!

全体のフローは以下の通りです。

krewData11.jpg


  • ポイント1
    「アプリ結合」パーツで結合します。
    krewData8.jpg

そうするとこんな感じのデータができあがります。

krewData9.jpg


  • ポイント2
    「フィルタ」パーツで絞り込みます。
    krewData10.jpg


krewDataの実行

krewDataを実行すると以下のデータが登録されます。ばっちり!

krewData1.jpg


その他

krewDataにはスケジュール実行機能があるのでそれを使って毎日実行できます。

アプリの対象レコードに条件を設定することも可能です。

例えば訪問履歴アプリの対象を日付で絞り込むことで今年未訪問の顧客リストなどにすることも可能です。

krewData7.jpg

krewDataが扱うレコード数には上限があるのでそこは注意が必要です。

https://docs.krew.grapecity.com/krewdata/#krewdata_limitations.html