梶田と申します。
質問をさせて頂きます。
コマンドボタンをクリックすると必須入力などのチェックを実施していたのですが、「保存」ボタンをクリックした時に入力チェックを実施するように変更したいと考えております。
以下のスクリプトを組み込んだのですが「保存」ボタンをクリックしても、何の動作もしなくなりました。
サンプルなどを確認し進めていますが、上手く動作してくれません。ご指導頂けませんでしょうか。よろしくお願い致します。
// レコードの保存前に入力値をチェック
kintone.events.on(['app.record.create.submit',
'app.record.edit.submit',
'app.record.index.edit.submit'], function (event){
// event よりレコード情報を取得
var record = event.record
//同行者
if (record['文字列 __1行__ 6']['value']){
record['文字列 __1行__ 6']['error']=null;
}else{
record['文字列 __1行__ 6']['error']='同行者は必須入力です';
}
return event;
});
梶田さん
cstapの瀧ヶ平です
var record = event.record
の末尾にセミコロンが抜けているようです。
そこを訂正すればおそらく動作するかと
試してみた限りではこのコードには問題がないように思います。
他に同じイベントで動作するスクリプトなどを入れているのであれば、そちらのコールバック処理内でeventをreturnしていないなどの原因が考えられます。
瀧ヶ平 様
承知しました。
他のスクリプトを確認してみます。
解消できなければ、改めてご質問をさせて頂きますので、その時はよろしくお願い致します。
梶田さん
お力になれずすいません。
またお困りのことがあればご気軽に質問してください!
再度ご質問させて頂きます。
他のスクリプトを全て外して動作確認をしたのですが、状況が変わらずでした。
全文は下記の通りとなりますが、問題点をご指導頂けませんでしょうか。
また、スクリプト以外に確認すべき点がありましたら、ご指導よろしくお願い致します。
(function () {
// レコードの保存前に入力値をチェック
kintone.events.on(['app.record.create.submit',
'app.record.edit.submit',
'app.record.index.edit.submit'], function (event){
// event よりレコード情報を取得
var record = event.record;
//同行者
if (record['文字列 __1行__ 6']['value']){
record['文字列 __1行__ 6']['error']=null;
}else{
record['文字列 __1行__ 6']['error']='同行者は必須入力です';
}
return event;
});
})();
梶田さん
こちらの環境で試してみたところ、問題なくコードは実行できるようです。
他に考えられる可能性としては設定されているフィールドコードが異なっている可能性や、実行しているユーザーが 文字列 1行 6 のフィールドに対するアクセス権を持っていないなどがありますがどうでしょうか
瀧ヶ平 様
ご回答有り難うございます。
アクセス権などは問題ありませんでした。
フィールドコードを全く別のものに変更した所、実行できました。
フィールドコードに重複は無いのですが。
原因はよく分かりませんが、動作してくれる方法で対応致します。
有難うございました。