チェックボックスにて自動でチェックが入るようにしたが、ほかの項目のチェックが外れてしまう。

カスタマイズで、ある2つのフィールドが一定の値以上の場合、自動でチェックがされるようにしました。

しかし、チェックボックスの中のほかの項目(自動チェックじゃない項目)を先にチェックし、自動チェックの動作をすると、ほかの項目(自動チェックじゃない項目)のチェックが外れてしまいます。

カスタマイズ初心者なものでどのような記述をすればよいか分かりません。
ご教示いただければと思います。

よろしくお願いします。

下記、自分で書いたコードになります。

 

(function () {
'use strict';
var events = ['app.record.create.change.A', 'app.record.edit.change.B','app.record.create.change.B', 'app.record.edit.change.A'];
kintone.events.on(events, function (event) {
var record = event.record

if(record['A']['value'] >= 5000 & record['B']['value'] >= 2000) {
record['チェックボックス']['value'] = ['A+B'];
}

return event;
});
})();

チェックボックス(配列)に追加をする時はpushを使うと良いでしょう。

条件を満たさない場合に「A+B」のチェックを外す処理が不要であればelseより先は省略して問題ありません。

(function () {
'use strict';

var events = ['app.record.create.change.A', 'app.record.edit.change.B','app.record.create.change.B', 'app.record.edit.change.A'];

kintone.events.on(events, function (event) {
var record = event.record

if(record['A']['value'] >= 5000 & record['B']['value'] >= 2000) {
record['チェックボックス'].value.push('A+B');
} else {
record['チェックボックス'].value.filter(function(record) {
return record != 'A+B';
});
}

return event;
});
})();