他のアプリへのレコード登録処理について

お世話になっております。

あるアプリの更新時にフィールドデータとサブテーブルのデータを他のアプリに登録したいのですが、空行で登録されてしまいます。

登録自体は正常終了し、デベロッパーツールでもエラーを確認できませんでした。修正ポイントをご指導いただけませんでしょうか。

 

//登録・更新後処理
kintone.events.on([‘app.record.create.submit.success’,‘app.record.edit.submit.success’], function(event) {
var record = event.record;
var appId = event.appId;
var recordId = event.recordId;
var nCustomer = event.record[‘n_Customer’][‘value’];
var nPeriod = event.record[‘n_Period’][‘value’];
var autoPJNo;
var CustomerT = event.record[‘CorporationType’][‘value’];
var CustomerNm = event.record[‘s_Customer_Nm’][‘value’];
var CustomerNo = event.record[‘n_Customer’][‘value’];

//担当者マスタ登録
var body;
var t_Records = [];
var RegistC = event.record[‘tb_C_Charge_n’][‘value’];

for (var i = 0; i < RegistC.length; i++) {
t_Records.push({
value: {
“顧客番号”: { “value”: CustomerNo },
“法人区分”: { “value”: CustomerT },
“顧客名称”: { “value”: CustomerNm },
“役職”: { “value”: RegistC[i].value[‘n_C_Position_n’].value},
“部署”: { “value”: RegistC[i].value[‘s_C_Section1_n’].value},
“課”: { “value”: RegistC[i].value[‘s_C_Section2_n’].value},
“顧客担当者”: { “value”: RegistC[i].value[‘s_C_Charge_n’].value },
“メールアドレス”: { “value”: RegistC[i].value[‘s_C_Charge_ML’].value },
“担当者区分”: { “value”: RegistC[i].value[‘ch_C_Charge’].value },
“有効・無効”: { “value”: ‘有効’ },
}
});

}
var params = {
“app”: 137, // ← 担当者一覧のID
“records”: t_Records
};

return kintone.api(kintone.api.url(‘/k/v1/records’, true), ‘POST’, params).then(function(resp) {
console.log(‘OK’)
console.log(resp);
alert(“担当者を登録しました。”);
//プロジェクト管理番号、見積管理番号の取得 ※常に再設定
switch(CustomerT){
case ‘(前)株式会社’:CustomerNm = ‘株式会社’ + CustomerNm; break;
case ‘(後)株式会社’:CustomerNm =CustomerNm + ‘株式会社’;break;
case ‘–’:break;
default:CustomerNm =CustomerT + " " + CustomerNm;break;
}

body = {
“app”: appId,
“id”: recordId,
“record”: {
“s_PJNo”:{
“value”:“[” + nPeriod + “K]-” + (‘0000’ + nCustomer ).slice(-4) + “-” + (‘0000’ + recordId).slice(-4)
} ,
“s_EstimateNo”:{
“value”:“LEM” + nPeriod + “-” + (‘0000’ + recordId).slice(-4)
} ,
“s_ChargeNm”:{
“value”:CustomerNm + ‘御中’
}
}
}
return kintone.api(kintone.api.url(‘/k/v1/record’, true), ‘PUT’, body).then(function(resp){
//alert(“プロジェクト起案書を登録しました。”);
return event;
}, function(error) {
alert(error.message);
return event;
})
return event;
}).catch(function(error) {
console.log(‘put error’, error);
return event;
});
});

 

以下の記事を参考にブレークポイントを決めて、
POST している params の内容が複数登録するパラメータとして正しいか確認するのはいかがでしょうか。

参考
https://qiita.com/snoguchi/items/8f6bb62a3166eca23ac3#%E3%83%96%E3%83%AC%E3%83%BC%E3%82%AF%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88%E3%82%92%E4%BD%BF%E3%81%86

複数登録
https://developer.cybozu.io/hc/ja/articles/202166160#step2

 

for (var i = 0; i < RegistC.length; i++) {
t_Records.push({
value: {
"顧客番号": { "value": CustomerNo },
"法人区分": { "value": CustomerT },
"顧客名称": { "value": CustomerNm },
"役職": { "value": RegistC[i].value['n_C_Position_n'].value},
"部署": { "value": RegistC[i].value['s_C_Section1_n'].value},
"課": { "value": RegistC[i].value['s_C_Section2_n'].value},
"顧客担当者": { "value": RegistC[i].value['s_C_Charge_n'].value },
"メールアドレス": { "value": RegistC[i].value['s_C_Charge_ML'].value },
"担当者区分": { "value": RegistC[i].value['ch_C_Charge'].value },
"有効・無効": { "value": '有効' },
}
});

}
var params = {
"app": 137, // ← 担当者一覧のID
"records": t_Records
};

// 追加
console.log(params) // ←ここにブレークポイントを付ける