新規投稿
フォローする

change.<フィールドコード>え使った日付変更について

いつもお世話になります。

日付フィールドを条件によって日付を変えたいのですが

submitでは動くのですが、changeで動きません。

対処方法をご教授いただきたいと思います。

またほかに良い方法があれば併せてご教授のほどよろしくお願いいたします。

 

 

(function () {
"use strict";
 
 
kintone.events.on(['app.record.create.submit',
'app.record.edit.submit',
'app.record.create.change.請求方法',
'app.record.edit.change.請求方法'
 
], function(event) {
varrecord=event['record'];
var訪問日今回=record["訪問日今回"].value;
var請求方法=record["請求方法"].value;
var来月初=moment(訪問日今回).add(1, 'month').startOf('month').format("YYYY-MM-DD");
var来月末=moment(訪問日今回).add(1, 'month').endOf('month').format("YYYY-MM-DD");
 
if (請求方法 ==="振替" ){
record.請求日.value=moment(来月初).add(26, 'day').format("YYYY-MM-DD");
 
}else if (請求方法 === "振込" ){
record.請求日.value=来月末;
 
}else if (請求方法 === "集金" ){
record.請求日.value="";
 
}else if (請求方法 === "未選択" ){
record.請求日.value="";
 
}
});
})();
0

2件のコメント

Avatar
Teru

いつもお世話になります。

以下2点ご確認ください。

①訪問日今回が変更されたタイミングで請求日を変更させる必要があるなら、changeイベントの指定は訪問日今回になります。

②return event;が記載されていませんが、動いているでしょうか。

下記のコードでご希望の挙動になるかと思われます。

(function () {
"use strict";


kintone.events.on(['app.record.create.submit',
'app.record.edit.submit',
'app.record.create.change.請求方法',
'app.record.edit.change.請求方法','app.record.edit.change.訪問日今回','app.record.edit.change.訪問日今回'], function(event) {
var record = event.record;
var 訪問日今回 = record.訪問日今回.value;
var 請求方法= record.請求方法.value;
var 来月初 = moment(訪問日今回).add(1, 'month').startOf('month').format("YYYY-MM-DD");
var 来月末 = moment(訪問日今回).add(1, 'month').endOf('month').format("YYYY-MM-DD");
console.log(請求方法);
if (請求方法 === "振替" ){
record.請求日.value=moment(来月初).add(26, 'day').format("YYYY-MM-DD");
}else if (請求方法 === "振込" ){
record.請求日.value=来月末;
}else if (請求方法 === "集金" ){
record.請求日.value="";
}else if (請求方法 === "未選択" ){
record.請求日.value="";
}
return event;
});
})();
0
Avatar
青山昌司

Teruさま

 

お世話になります。

ご回答いただきありがとうございました。

ご指摘の「return event;」が欠落していたのが原因でした。

①に関しては条件の説明不足で申し訳ありませんでした。

条件は支払方法を変更した際に日付をでした。

 

「return event;」がない状態でも、保存後に日付が変更されていたので気づけませんでした。

ご指摘いただきありがとうございます。

1
ログインしてコメントを残してください。