日付入力→翌月末日を自動で表示

(現状)

3つの日付項目があります。

・サービス開始日(日付)→手入力

・サービス終了日(日付)→手入力

・支払期限(日付)→自動入力

(やりたいこと)

サービス終了日の翌月末日を、

支払期限で表示させたいです。

(方針)

If関数を使うことになり、

条件としては以下が考えられると思います。

2021/1/1-31→2/28
2021/2/1-28→3/31
2021/3/1-31→4/30
2021/4/1-30→5/31
2021/5/1-31→6/30
2021/6/1-30→7/31
2021/7/1-31→8/31
2021/8/1-31→9/30
2021/9/1-30→10/31
2021/10/1-31→11/30
2021/11/1-30→12/31
2021/12/1-31→2022/1/31

例)

サービス終了日に、2021/12/20を選択

→支払期限に、2022/1/31が自動出力

 

初心者の為、参考文献のURLや、コード、方針などご教授いただけると幸いです。

よろしくお願いいたします。

moments.jsluxonというライブリーが使えます。

momentsだと

以下のコードが考えられます。

let 支払い期限 = moment(サービス終了日, "YYYY-MM-DD").add(1, 'M').endOf("month");

Lorenz Rasさん

ご返信ありがとうございます。

試行錯誤していますが、

日付は全くかわることあありません。

コードを張らせていただきます。

ご確認ください。

 

 

  var events = [‘app.record.detail.show’,

              ‘app.record.create.show’,

              ‘app.record.create.change.日付_7’,

              ‘app.record.create.change.日付_0’,

・・・

              ‘app.record.edit.show’,

              ‘app.record.edit.change.日付_7’, 

              ‘app.record.edit.change.日付_0’,

・・・]

 

(function () {

  “use strict”;

kintone.events.on([‘app.record.create.change.日付_0’,

var events = [‘app.record.detail.show’,

              ‘app.record.create.show’,

              ‘app.record.create.change.日付_7’,

              ‘app.record.create.change.日付_0’,

‘app.record.edit.change.日付_0’], function (event){

var record = event.record; //レコード取得

var 日付_7 = record[‘日付_7’].value;

record[‘日付_7’].value = moment(日付_0, “YYYY-MM-DD”).add(1,‘m’).endOf(“months”).format(“YYYY-MM-DD”);

return event;

});

});

 

/*日付_7 → 支払期限*/

/*日付_0 → サービス終了日*/