2025/07/02 18:02
備品管理のアプリを作成中です。
保管開始日と保管期限(担当者が任意で設定)と最長保管期限(年度末 これは決まり)があります。
例えば、2025/7/1に保管開始した場合、年度末の2026/3/31が最長の保管期限となります。
年度、月、日の3つのフィールドがあり、
保管開始日を登録すると、自動的に一番近い年度末が出てくるようにしています。(年度:2026、月:3、日:31)
それぞれのフィールドを繋いで2026/3/31とし、最長保管期限を自動的に取得することはできないでしょうか。
もしくは、保管開始日を入力したら自動的に最長保管期限(年度末)がとれたらいいのですが・・・
お知恵お借りしたくよろしくお願いいたします。
💡記載いただくと良いポイント
・ご契約中のコース :スタンダード
・プラグインはTIS様の各種プラグイン他(無料のプラグインであれば導入可能)
・JSは社内規定により使用できません。
どうぞよろしくお願いいたします。
3件のコメント
(新着順)
ミュートしたユーザーの投稿です。
投稿を表示お疲れ様です。
年、月、日が数字フィールド、最長保管期限(年月日)を計算フィールドで日付(例:2012-08-06)として、計算式を考えてみました。
基本的に、最終保管期限の月日は年度末である3/31で固定のはずなので、年度と月さえ分かれば、最長保管期限の年月日は出せそうです。
(月が4~12月なら翌年、1~3月なら今年の3/31)
そのうえで、kintoneの日付フィールドは1970年1月1日0時0分0秒からの経過秒数で表す事となるため、今年3月31日か翌年3月31日を秒数に換算する必要が出てきます。
うるう年を加味しつつ、これらを計算式にすると、以下のようになります。
ROUNDDOWN(((365 * (年+IF(月>3,1,0)) + ROUNDDOWN((年+IF(月>3,1,0)) / 4) - ROUNDDOWN((年+IF(月>3,1,0)) / 100) + ROUNDDOWN((年+IF(月>3,1,0)) / 400) + ROUNDDOWN(306 * (3 + 1) / 10) - 428 + 31) - 719163) * 24 *60 * 60)
年度、月、日の場合は、月に関わらず最長保管期限(年月日)は(年度+1)/3/31になるので、下記の式となります。
ROUNDDOWN(((365 * (年度+1) + ROUNDDOWN((年度+1) / 4) - ROUNDDOWN((年度+1) / 100) + ROUNDDOWN((年度+1) / 400) + ROUNDDOWN(306 * (3 + 1) / 10) - 428 + 31) - 719163) * 24 *60 * 60)
お試しください。
ミュートしたユーザーの投稿です。
投稿を表示TISの「条件分岐プラグイン」で日付に関する関数が設定可能です。ぜひお試しください。
ミュートしたユーザーの投稿です。
投稿を表示これが出来ているなら、
①[最長保管期限]フィールドを自動計算付き文字列(1行)フィールドにして、
②-a.計算式に 「年度 & "/" & 月 & "/" & 日」 と書くか、
②-b.年度末が2月でない限り、また御社として年度末月の変更が無い限り、「3/31」とか「6/30」(@弊社)とか決まってるので、計算式に「年度 & "/3/31"」 と書くか、
②-c.[年度]フィールドを数値のママにしておいて、”/3/31”を単位として後置する。
というのはいかがでしょうか。
生成AIさんに訊いてみましたが、「保管開始日を入力したら、直接最長保管期限(年度末)を算出する」のはJSカスタマイズが激推しだそうですが、キン小判さんのカスタマイズ要件では❌ですね。