お世話になります。
AアプリからBアプリへデータをコピーしPOSTしたあとBアプリ内を請求日と顧客コードを検索キーとしてクエリ検索を行いBアプリ内で集計したデータを更新する処理を作ったのですがうまく動作してくれず困っています。
コード一番上のbody5の処理が問題なく動作して繰越額が更新されるのですが、body6が実行に成功しているのに更新されない状態です。実行前のparam配列を見るとデータは入っているのですが、実行後のresp6の中身を見ると空の配列になっています。
何が原因でしょうか?
// 繰越額の処理
var body5 = {
"app":kintone.app.getId(),
"records":ca_amount
};
kintone.api(kintone.api.url('/k/v1/records', true), 'PUT', body5, function(resp5) {
// 請求日で絞る
let param = {
"app":kintone.app.getId(),
"query":"請求日 = \"" + date + "\""
};
kintone.api(kintone.api.url('/k/v1/records', true), 'GET', param, function(resp) {
let update = [];
for( let i = 0; i < resp.records.length; i++ ){
// 顧客コード
let cs_cd = resp.records[i].顧客コード.value;
// 顧客名
let cs_name = resp.records[i].顧客名.value;
// レコード番号
let record_no = resp.records[i].レコード番号.value;
// 顧客で絞る
let param = {
"app":kintone.app.getId(),
"query":"顧客コード = \"" + cs_cd + "\" and 顧客名 = \"" + cs_name + "\""
};
kintone.api(kintone.api.url('/k/v1/records', true), 'GET', param, function(resp2) {
// 請求額
let claim = 0;
// 入金額
let payment = 0;
if( resp2.records.length == 1 ){
} else {
claim = resp2.records[1].請求額.value;
payment = resp2.records[1].入金額.value;
}
update.push({
"id":record_no,
"record":{
"請求額":{
"value":claim
},
"入金額":{
"value":payment
}
}
});
}, function(error2){
alert("エラーが発生しました。");
});
}
let body6 = {
"app":kintone.app.getId(),
"records":update
};
kintone.api(kintone.api.url('/k/v1/records', true), 'PUT', body6, function(resp6) {
window.location.href = "https://xxxxxxxx.cybozu.com/k/xx/?query=請求日=\""+date+"\"";
},function(error6){
alert("エラーが発生しました。");
});
},function(eeror5){
alert("エラーが発生しました。");
});