トーク

ユーザー画像
2021/10/09 21:59

年と月と日をkintoneの標準機能で日付に変換してみました。

kintoneでは、分かれて入力された「年」と「月」と「日」を1つのフィールドにまとめて、日付形式で表示するための関数が(今は)ありません。

UNIX日付を足したり引いたりして、年と月と日をなんとか日付形式に変換できました。
試したい方は、アプリテンプレートを添付しましたので、ご確認ください。

詳しくは、「年と月と日をkintoneの標準機能で日付に変換する」記事をQiitaに投稿しましたので、ご参考まで。
https://qiita.com/t0ru/items/68fe31d1f73a88eacfc3

その記事でも下記のように言及していますが、計算フィールドは(今は)リマインダー通知などには使えないのが残念です。

ただし、ここでは計算フィールドで変換しているため、リマインダー通知の基準日など、日付・日時フィールドであることが必要な機能に利用することはできません。日付・日時フィールドに計算結果を入力するには、JavaScriptカスタマイズやプラグインなどが必要です。

もともとは、jamjamさんのキンコミでの

指定月数の同日を計算させたいのですが、様々参考にしても解になかなかたどり着けません。。Qiitaの「1か月後の日付をkintoneの標準機能で計算」エントリを参考にしても指定月数が多いとずれることが出てきます。。。

というご質問にお答えしようと思ったのがはじまりです。
指定月数後の日付を計算しようとすると、どうしても年と月と日を分けて計算しないとできなかったので。。。
よろしければそちらのコメントもご覧ください。
https://kincom.cybozu.co.jp/chats/hx9kd0vufwqx8fue#m2earevafzfszxks

picture_icon-02-02 年と月と日を日付に変換する.zip

この投稿を共有する
閉じる
URLをコピー URLをコピー
1件のコメント (新着順)
ユーザー画像
ユーザー画像
西村 志郎
2021/10/10 20:33

中村さん

jamjamさんへ回答されたアプリに引き続きこっちもやってみましたー。
こちらはシンプルに年月日の変換に特化されたアプリですね。

中村さんのアプリを元に、勉強のためアプリの計算フィールドの各要素を「日時」と「数値」にしたフィールドを追加してみました(添付参照)。

「その月」フィールドはあくまで月算出に利用。31日固定で秒数から掛け算するために日付は31未満の月を超える度に日数はへっていくんですね。で、ココは月の秒数算出なんで影響ないと。なるほど。


みてて思ったのですが「うるう年」のところでちょっと質問がでてきました。

「その年」の計算式はうるう年の場合1日加算するという趣旨なら

((年-1970)*365+ROUNDDOWN(年-1968)/4)*24*60*60

((年-1970)*365+ROUNDDOWN((年-1968)/4))*24*60*60

かなと思ったのですが、

結果には影響ないみたいでしたので、うるう年だけちゃんと86400秒加算されてたらよいということですかね(もしかしたらまた私がなにか勘違いしてるかもです)。


日付の話は奥が深いのでまた色々ディスカッションできたらうれしいです。^^



ユーザー画像
ユーザー画像
西村 志郎
2021/10/10 22:37

ちょっとはずれますが、10月度アップデートで
どのフィールドで設定エラーが発生しているか画面上部に表示されるように
https://kintone.cybozu.co.jp/update/main/2021-10.html#point1

なったんですが、これアプリのレコード登録時にも出るようになったんですかね!前からでしたっけ?^^;便利!

追記訂正
本件は、2020年6月版 主なアップデート
https://kintone.cybozu.co.jp/update/main/2020-06.html#point2
でアップデート済でした。
失礼しました。m(__)m


ユーザー画像
ユーザー画像
中村徹
2021/10/11 12:55

西村さん
ご確認いただきありがとうございます。

ご指摘その通りです!かっこが足りませんでした。
正しくは、ROUNDDOWN((年-1968)/4)です。
記事とテンプレートを修正いたしました。