kintone有効活用。日付を和暦表示する。
kintoneで和暦表示を行いたい。
官公庁向けなど日付を和暦で扱う需要があるかと思います。
kintoneで日付を和暦で扱うには一工夫が必要です。
以前、日付を取り扱うDATE_FORMAT関数を紹介しましたが、この関数にも和暦表示オプションがありません。
今回は自動計算とDATE_FORMAT関数を使って和暦表示をしてみます。
計算に使用する「計算用_年月日」と「計算用_西暦年」のフィールドを用意する。
まずは計算対象になる日付のフィールを設置します。
そして途中計算に使用する「計算用_年月日」と「計算用_西暦年」の計算フィールドを用意します。
それぞれ計算式内に関数を設定します。
・計算用_年月日
DATE_FORMAT(日付, “YYYYMMdd”, “system”)
・計算用_西暦年
DATE_FORMAT(日付, “YYYY”, “system”)
DATE_FORMAT関数について詳しくはkintone有効活用。日付を自動計算で取り扱うをご覧ください。
文字列(1行)フィールドの自動計算で和暦表示を実現する。
「文字列(1行)フィールド」を設置したら「自動計算する」のチェックをオンにし、計算式を入力します。
・元号振り分け式
IF(計算用_年月日 >= 20190501,”令和”&計算用_西暦年-2018&”年”,IF(計算用_年月日>=19890108,”平成”&計算用_西暦年-1988&”年”,IF(計算用_年月日>=19261225,”昭和”&計算用_西暦年-1925&”年”,”大正”&計算用_西暦年-1911&”年”))) & DATE_FORMAT(日付,”M月d日”,”system”)
複雑に見えますが、各元号が開始した日付で分岐してあるだけですのでよく見れば簡単です。
レコード登録画面を開くと自動で和暦表示されます。
明治表記が必要な場合は、大正が始まる1912年7月30日でif文をもう1度ネストしてください。
計算に使用した2つのフィールドを非表示にする。
無事和暦の表示ができました。
途中の計算に使用した2つのフィールドは邪魔なので消してしまいましょう。
JavaScriptでレコードの編集と作成イベントに次のコードを設定してください。
kintone.app.record.setFieldShown('計算用_年月日', false);
kintone.app.record.setFieldShown('計算用_西暦年', false);
計算で一時的に使用したフィールドが消えました。
見えなくなっただけで計算は出来ています。
ゴートップではkintoneを活用した業務の効率化のご相談を承っております。
現在の業務に課題を抱えている方は是非ゴートップにお問い合わせください。
詳しくは当社kintoneソリューションサービスのページをご覧ください。
さまざまな方や企業の多様なニーズにお応えする「エスコートン」サービスの提供を開始しました。
お悩みに合わせた3つのサービスメニューをご用意しました。