KintoneRestAPIClient deleteAllRecordsを使ってみる

サイボウズが公開しているAPIを利用します。

APIを利用して、データ削除を行います。

2000件を1処理で削除(delete)することができます。

事前処理

事前処理に関しては、以下のページの事前処理を参考にしてください。

KintoneRestAPIClient getAllRecordsを使ってみる

プログラム

(function() {
  'use strict';
  kintone.events.on('app.record.index.show', async function(event) {
    
        const client = new KintoneRestAPIClient();
        
        const record = await client.record.getRecords({
                    app: kintone.app.getId(), 
                    fields:[],
                    query: ""
                });
        let ary=[]; 
        record.records.forEach ((v) => {
            let obj = {
                      "id" : v.$id.value,
                      };
            ary.push(obj);
        });
        //            
        const result = await client.record.deleteAllRecords({
                    app: kintone.app.getId(),
                    records: ary
                });
                
        console.log(result);       
                
        return event;   
  });
})();

詳細については、以下リファレンスにて確認ください。

js-sdk/record.md at master · kintone/js-sdk · GitHub

kintoneのポイント

サンプルプログラムは、対象のアプリからデータを取得し、そのデータのキー(id)をもとに、同じレコードに対して削除処理を行っています。

※一覧を表示したタイミングで、データが削除されます。

deleteAllRecordsのパラメータとして、idを設定しています。

配列に格納されたデータ分(オブジェクトのレコード分)データを削除しています。

async /await による非同期対応を実施いています。