USER_SELECTフィールドに入力した内容をテーブルにコピーすると同時に、もう一つ別のUSER_SELECTフィールドにも追加していく方法を探しています
(function() {
‘use strict’;
var SPACE = ‘buttonspace’;
var TABLE = ‘mytable’;
var USER = ‘userfield’;
var OWNER = ‘ownerfield’;
var TABLE_USER = ‘user_in_table’;
var events = [‘app.record.create.show’, ‘app.record.edit.show’];
function isEmptyRow(tableRow){
var result = true;
for(var key in tableRow){
if(typeof tableRow[key].value === ‘object’){
if(tableRow[key].value.length !== 0){
result = false;
}
}else if(typeof tableRow[key].value !== ‘undefined’){
result = false;
}
}
return result;
}
kintone.events.on(events, function(event) {
var record = event.record;
var elSpace = kintone.app.record.getSpaceElement(SPACE);
var elButton = document.createElement(‘button’);
elButton.textContent = ‘コピー’;
elSpace.appendChild(elButton);
elSpace.addEventListener(‘click’, function() {
var recordData = kintone.app.record.get();
var rec = recordData.record;
if(isEmptyRow(rec[TABLE].value[0].value)){
rec[TABLE].value[0].value[TABLE_USER].value = rec[USER].value;
rec[OWNER].value = rec[USER].value;
}
else{
var addData = {};
addData.value = {};
addData.value[TABLE_USER] = {
“type”: “USER_SELECT”,
“value”: rec[USER].value
};
rec[OWNER].value = rec[USER].value;
rec[TABLE].value.push(addData);
}
rec[USER].value = [];
kintone.app.record.set(recordData);
});
});
})();
上記のように rec[OWNER].value = rec[USER].value; とすると最後に入力したユーザーで上書きされてしまいます。
下記のように入力したユーザーをコピーしてなおかつ追加していく方法についてアドバイスをお願いします。