背景・実現したいこと
別アプリの在庫情報(テーブル)を取得し、在庫のプラスマイナスを行い、
別アプリに結果を返す(データ更新)を行いたいと考えております。
エラー情報 (開発者ツールのコンソール)
まずは入庫からテストを行っているところなのですが、
PUTの部分が正しく動作していないと思っております。
ただ、エラーのコンソールも反応しない為、どんなエラーなのかわからない状態です。
PUT部分の表記が正しくないのでしょうか。
利用したソースコード
(function() {
'use strict';
// レコードkを更新する関数
const putRecord = function(upAppID, upAppRe, upTableValue){
const params = {
app: upAppID, // アップするレアプリID
id: upAppRe, // アップするレコード
record: {
'倉庫内在庫一覧':{
value: upTableValue
}
}
};
return kintone.api(kintone.api.url('/k/v1/record', true), 'PUT', params).then(function(resp){
console.log(resp);
window.alert('更新更新しました');
}).catch(function(resp2){
//Error
console.log(resp2);
});
};
// 保存ボタンを押したら
const events = [
'app.record.create.submit'
];
kintone.events.on(events, function(event) {
// 在庫が反映済みだったら
if (event.record['在庫反映'].value == '反映済み'){
return event;
}
// 在庫一覧のデータを取得
const cTableValue = event.record['倉庫内在庫一覧'].value;
var zaiko = 0;
var gaitou_flag = 0;
var count = 0;
const targetAppId = kintone.app.getLookupTargetAppId('倉庫ID');
const targetRecordId = event.record['倉庫レコード番号'].value;
const body = {
app: targetAppId,
id: targetRecordId,
};
kintone.api(kintone.api.url('/k/v1/record', true), 'GET', body, function(resp){
// 状態毎で処理を分ける
switch(event.record['状態'].value){
case "入庫":
var results = resp.record['倉庫内在庫一覧'].value.map(function(cT){
if (cT.value['商品コード'].value == event.record['該当商品コード'].value){
cT.value['在庫'].value = Number(cT.value['在庫'].value) + Number(event.record['入庫重量'].value);
gaitou_flag = 1; // フラグ建てる
}
return cT;
});
resp.record['倉庫内在庫一覧'].value = results;
putRecord(targetAppId, targetRecordId, resp.record['倉庫内在庫一覧'].value);
// 該当
if (gaitou_flag == 1){
}
break;
case "出庫":
break;
case "倉庫間移動":
break;
}
});
return event;
});
})();