delete処理が上手く実行できません

レコードの削除を行ないたいのですが、削除を行なう際に対応するidsを配列しなければならないため、その処理の仕方が上手く行きません

機能としては、erasureメソッドにはresultRecordという引数を持たせており、そのレコード内のidを元にアプリBのレコードを削除します

apuriB.erasure = function(resultRecord) {

※idsには値が入ったことがコンソール上から確認できました。
var ids=[];
ids=resultRecord[0].$id.value

// REST APIパラメータ
var params = {
// Bアプリ番号
"app": apuriB.APP_ID,
"ids": ids
};

kintone.api(kintone.api.url('/k/v1/records', true), 'DELETE', params).then(function(resp) {
}, function(resp) {
alert("削除に失敗しました。");
});
};

たいさん
cstapの瀧ヶ平です。

ids変数にresultRecord(これは配列でしょうか?)の0番目の要素の$id.valueを代入しているようですが、レコードの削除APIのドキュメントを読むとわかるとおり、idsというパラメータは配列で要求されています。

そのため、for文を使ってresultRecordの配列からidの値をidsの配列にids.push(resultRecord[i].$id.value)した後パラメータを作成するか、resultRecordが配列であればresultRecord.mapメソッドを使って(参考: Array.prototype.map)作成したidを抽出した配列をids変数に代入するなどの修正が必要かと思います。

参考になりますでしょうか

cstapの瀧ヶ平さん

コメント有難う御座います

resultRecordは配列です。

 

試しにids.pushを用いて、削除を行なったのですが、

このような記述法でどうでしょうか?

var ids=[];

for(var i=0; i<=7; i++){
ids.push(resultRecord[i].$id.value)
}

// REST APIパラメータ
var params = {
// アプリ番号
"app": apuriB.APP_ID,
"ids": ids
};