← ブログ一覧

kintone(更新: 2020/5/13)

kintone関数で和暦を表示する!(アプリテンプレート付き)

※ 本記事は 2020年5月13日 に公開した内容です。kintone の画面や仕様はその後変更されている場合があります。

みなさんこんにちは。プロジェクト・アスノートの松田です。
この記事は、YouTube動画との連動企画です。

標準機能で和暦を表示する(kintone関数の活用アイデア)
https://youtu.be/0PUYCrjuWZI

上の図のように、日付フィールドの日付から、和暦の年月日を表示するためのフォーム設定の方法です。

計算機能や関数を利用しますが、今回は一発で計算することができません。途中過程として2つの中間フィールドが必要となります。

—|—|—
年月日| 計算| DATE_FORMAT(日付, “YYYYMMdd”, “system”)
年| 計算| DATE_FORMAT(日付, “YYYY”, “system”)

これらの中間フィールドを使って、元号を判断し和暦表示するための自動計算を設定します。

ポイントは、2つの中間フィールドのフィールドタイプが計算フィールドとなっていることです。計算式の中で数値の大小比較(>=)や引き算を行っています。このような大小比較、数値演算はデータ形式が数値でないとエラーとなってしまいます。

計算フィールドの計算式でDATE_FORMAT関数を使うと、結果が数値の場合はデータの形式が文字列ではなく、数値として扱えるようになります(計算フィールドの文字列→数値変換機能)。

2020年1月の kintoneアップデートで、DATE_FORMAT関数が計算フィールドでも使用できるようになりました。これによって上記のようなことが可能となりました。

計算式サンプル
IF(年月日 >= 20190501, "令和" & 年-2018 & "年",
    IF(年月日 >= 19890108, "平成" & 年-1988 & "年",
       "昭和" & 年-1925 & "年"
    )
) & DATE_FORMAT(日付, "M月d日", "system")

もう少し関数を応用すると「元年」表示も可能になります。

計算式サンプル
IF(年月日 >= 20190501,
    "令和" & IF(年-2018 = 1, "元", 年-2018) & "年",
    IF(年月日 >= 19890108,
        "平成" & IF(年-1988 = 1, "元", 年-1988) & "年",
        "昭和" & IF(年-1925 = 1, "元", 年-1925) & "年"
    )
) & DATE_FORMAT(日付, "M月d日", "system")

今回紹介したのは、kintoneの計算、関数を活用して和暦の元号表示を行うという方法でした。他にも関数を活用することで、さまざまな応用が可能です。従来であればJavaScriptカスタマイズが必要なことも、関数の充実によってかなりのことが実現できるようになりました。

質問や新しいアイデアがありましたら、動画のコメントか、ツイッターやお問い合わせフォームから連絡してください。

“和暦表示アプリテンプレート” をダウンロード 和暦表示App_元年あり.zip – 15268 回のダウンロード – 17.13 KB

関連


kintone の活用・業務改善についてご相談があれば、お問い合わせ からお気軽にどうぞ。