新規投稿
フォローする

残月数の自動更新について

以下URLページを参考に日数計算はできましたが、月数計算の自動更新はできるものでしょうか?いろんなサイトで確認しているのですが月数計算のコードは当方にはとても難しくお分かりになる方いらっしゃれば、ご教示よろしくお願いします。

https://developer.cybozu.io/hc/ja/community/posts/115010377346-%E6%AE%8B%E6%97%A5%E6%95%B0%E3%81%AE%E8%87%AA%E5%8B%95%E6%9B%B4%E6%96%B0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

 

※フィールド名は以下で作りました。

・日付フィールド(フィールド名:日付)

・文字列フィールド(フィールド名:残り日数)

 

0

6件のコメント

Avatar
Teru

全く同じ条件で試してみましたが、問題なく動作しました。

実際のコードをお見せいただけないでしょうか?

0
Avatar
yt

Teruさま

ご確認コメントありがとうございます。以下でコードで実装しました。

いかがでしょうか?

(function() {
"use strict";
kintone.events.on('app.record.index.show', function(event){
var changed = false;
var getBody = {
"app": kintone.app.getId(),
};
kintone.api(kintone.api.url('/k/v1/records', true), 'GET', getBody, function(resp) {
var records = resp["records"];
var putBody = {
"app": kintone.app.getId(),
"records":[]
};
records.forEach(function(record){
var date1 = new Date();
var date2 = new Date(record.日付.value);
var Diff = date2.getTime() - date1.getTime();
var days = Math.floor(Diff / (1000 * 60 * 60 *24) + 1);
putBody.records.push({
"id": record.$id.value,
"record": {
"残り日数": {
"value":days
}
}
});
if(days != record.残り日数.value){
changed = true;
}
});
if(changed){
kintone.api(kintone.api.url('/k/v1/records', true), 'PUT', putBody, function(){
location.reload();
});
}
});
});
})();
0
Avatar
yt

Teruさま

度々恐縮です。今日再度確認すると(フィールド名を直入力でなくコピペで修正したところ)自動読込が走りました!

テスト環境で確認していたこともあり、イージーミスで大変お騒がせしました。

0
Avatar
Teru

yt様

ありがとうございます。
コードに相違はありません。
一覧画面表示時にコンソールにエラーは吐き出されていますか?

または別のjsが一覧画面表示のイベントで動いておりませんでしょうか?

0
Avatar
Teru

yt様

お、確認前に書き込んでしまい失礼いたしました。

よかったです!また何かあればよろしくお願いいたします。

1
Avatar
yt

Teruさま、いろいろとご指導いただきありがとうございました!

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