背景・実現したいこと
初心者で、試行錯誤で挑戦しています。
2つ以上の機能を実現する方法や、省略記述も良く分かっていません。
①:‘radio1’ が ‘導入’ の時、グループを開き、添付ファイルの ‘契約書’ 、‘検収書’ を表示する
②:‘radio1’ が ‘導入’ の時、添付ファイルの ‘契約書’ 、‘検収書’ を必須にしたい。
エラー情報
①はできた。
②は、検収書に添付ファイルを登録しても、'検収書を登録してください’メッセージが出る。
'契約書を登録してください’は表示されない。
利用したソースコード
/*
* 回答の条件によって別フィールドの表示/非表示を切り替えるサンプルプログラム
* Copyright (c) 2014 Cybozu
*
* Licensed under the MIT License
*/
(function() {
“use strict”;
//レコードの追加、編集、詳細画面で適用する
var events = [‘app.record.detail.show’,
‘app.record.create.show’,
‘app.record.create.change.radio1’,
‘app.record.edit.show’,
‘app.record.edit.change.radio1’];
kintone.events.on(events, function(event) {
var record = event.record;
//導入目的で「導入」が選択された場合は「検収書」、「契約書」フィールドを表示する
if (record[‘radio1’][‘value’] === ‘導入’) {
kintone.app.record.setGroupFieldOpen(‘group1’, true);
kintone.app.record.setFieldShown(‘契約書’, true);
kintone.app.record.setFieldShown(‘検収書’, true);
}else {
kintone.app.record.setGroupFieldOpen(‘group1’, false);
kintone.app.record.setFieldShown(‘契約書’, false);
kintone.app.record.setFieldShown(‘検収書’, false);
}
});
})();
(function() {
‘use strict’;
//レコードの保存で適用する
var events = [‘app.record.edit.submit’,
‘app.record.create.submit’];
kintone.events.on(events, function(event) {
var record = event.record
if (record[‘radio1’][‘value’] === ‘導入’&&record[‘契約書’][‘value’].length === 0) {
event.error = ‘契約書を登録してください’;
}
return event;
});
})();
(function() {
var events = [‘app.record.edit.submit’,
‘app.record.create.submit’];
kintone.events.on(events, function(event) {
var record = event.record
if (record[‘radio1’][‘value’] === ‘導入’&&record[‘検収書’][‘value’].length === 0) {
event.error = ‘検収書を登録してください’;
}
return event;
});
})();