2021/10/19 17:22
日付計算について質問です。
kintoneの日付計算について、以下のような場合、
皆さんどうされていますか?
1) 生年月日をもとに、現在年齢を表示
kintoneの計算式で現在時刻(NOW)がとれないため、
JavaScriptでがんばるしかないでしょうか。
2) 基準日から10年後の1日前 (2021/10/18 → 2031/10/17)
N 年後の計算式だと、うるう年で日付がずれて、
2021/10/18 の10年後の1日前が、2031/10/16になってしまいます。(添付画像)
日付計算プラグインを使ってみましたが、
10年後は設定できても、10年後の1日前という設定ができませんでした。
社内のアプリ作成者から、度々日付計算について質問されるのですが、
なかなかうまく対応できず、悩ましいです。
アイディアがありましたら、教えていただきたいです。
ミュートしたユーザーの投稿です。
投稿を表示いつまさん
krewsheetを導入できるのでしたら、私もそれがお勧めです。
なお、
2) 基準日から10年後の1日前 (2021/10/18 → 2031/10/17)
は、標準機能でも可能です。
キンコミのこちらの記事
https://kincom.cybozu.co.jp/chats/hx9kd0vufwqx8fue
でもお答えしましたが、「指定月数後の日付をkintoneの標準機能で計算する」の方法で、
https://qiita.com/t0ru/items/4874ad6dff60020b346c
10年後=120か月後の日付を計算できるので、そこから1*24*60*60を引けば、
「基準日から10年後の1日前」を計算できます。
また、
1) 生年月日をもとに、現在年齢を表示
については、標準機能でやるなら、「現在日」という日付フィールド(初期値:レコード登録時の日付)をもたせて、「現在日」と「生年月日」の差で現在年齢を計算し、
毎日、日付が変わるたびに
・CSVファイル書き出しでレコード番号と現在日を書き出す
・CSVファイル読み込みで「現在日」に今日の日付を入れてレコード番号で上書き更新
すれば、現在年齢を最新に再計算させられます。
その操作をkintoneコマンドラインツールを利用してシェルスクリプトを定期的に実行したり、Microsoft PowerAutomateなどのRPAツールで自動化するという手もあります。
いかがでしょうか。
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示いつまさん
1)計算式に”更新日時”が使えるのでそこから計算しています。
更新する仕掛けが必要なのですが一括更新系のプラグインで・・・。
ただ、こちらも標準機能だとうるう年でずれるんですよね。
と思ってたらこんなプラグイン見つけました。
https://ribbit.work/blog/kintone-plugin-age/
未検証ですが・・・。
2)こちらのnoteが参考になりそうです
https://note.com/46u/n/nbdc0b1813273
なお、どちらもkrewsheetがあれば楽々実装可能ですよ! #ダイマ
https://blog-krew.grapecity.com/entry/20210615/krewsheet/age/
ミュートしたユーザーの投稿です。
投稿を表示