~ 文字列の日時を、標準の日時フィールドに変換するカスタマイズ方法のご紹介 ~
🕒 目的:「日時計算」をもっと自由に、もっと便利に!
kintoneの標準機能に、DATE_FORMAT関数という便利な関数があります。これを使えば、「開始日から3日後」や「開始時刻から60分後」といった日時計算が簡単にできます👍
以下の画面では、開始日時+利用時間=終了日時の計算式をDATE_FORMAT関数で実行しています。
計算式:DATE_FORMAT(開始日時 + (利用時間*60), “YYYY-MM-dd HH:mm”, “Asia/Tokyo”)

しかし、この関数の計算結果は、画面上は日時(日付や時刻)に見えても、データ型は「文字列」として扱われています。これが、データ活用時にちょっとした困りごとになります😢
📅 「文字列」だと、こんな不便が…
- 高度な検索ができない:
文字列なので「2025-10-01から2025-10-31まで」のような静的な検索しかできません。
「今月」「今日以降」「過去7日間」といった、日付や時刻として動的な期間を指定した絞り込みができません。 - 集計・グラフ機能が活かせない:
文字列だと、「日別」「週別」「月別」といった日付単位でのグループ集計ができず、レポート機能での分析が難しくなります。
今回ご紹介するカスタマイズは、DATE_FORMAT関数で作った「文字列の日時」を日付や時間として
認識できる「日時データ」として日時型フィールドに自動コピーすることで、この悩みをまるっと解決するのが目的です!
🎉 導入のメリット:自動化からデータ活用まで
このカスタマイズを導入するとデータ活用もレベルアップします。具体的な5つのメリットを紹介します。
1. 手入力ミスの劇的な削減
「終了時刻」や「返却予定日時」などを手動で入力する必要がなくなります。計算結果が自動で反映されるので、ヒューマンエラーが発生する余地を根本からなくせます。
2. データの正確性・整合性の担保
計算はカスタムコード(JavaScript)のルールに基づいて自動処理されるため、入力されるデータの形式や精度が統一されます。これにより、集計や分析に役立つ信頼性の高いデータソースが手に入ります。
3. 柔軟な日時計算の出来るアプリの製作
kintoneの標準機能であるDATE_FORMAT関数とJavaScriptカスタマイズを連携させることで、標準機能だけでは難しいスマートな実装が可能になります。
「〇時間後」「〇日後」といった日時計算の結果を日時型フィールドに直接反映できますので、日付や時間を軸にした動作をさせたい場合により柔軟な業務アプリを構築できます。
4. 高度な検索・絞り込みが可能に
文字列ではなく日時データとして保存されるため、kintone標準の強力な日時フィルター機能がフル活用できます!「今月の予定」「今週のタスク」など、動的な期間指定でレコードを絞り込めるようになります。
5. 集計・グラフ機能のフル活用
文字列ではなく日時データとして保存されるため、グラフ作成機能で「日別」「週別」「月別」「年別」の単位でデータを自動的に集計できるようになります。
- 「月別のタスク完了数の推移」
- 「曜日ごとの利用時間の比較」 といった、時間軸に基づいたグラフを簡単に作成し、データ分析を強力にサポートします。
💻 デモ画面
実際のデモ画面です。「開始日時」+「利用時間」で求めた「終了日時」を、DATE_FORMAT関数で世界標準時のISO形式の書式文字列に変換して、日時型フィールドの「終了日時」に自動コピーしています。
利用時間に負の値を入力すれば、過去の日時を求めることも出来ます。

デモ画面のDATE_FORMAT関数に入力されている計算式は以下の通りです。
DATE_FORMAT(開始日時 + (利用時間*60), “YYYY-MM-ddTHH:mm:ssZ”, “Etc/GMT”)
本カスタマイズでは、日時の計算部分をDATE_FORMAT関数で行い、計算結果の文字列を日時型フィールドにコピーする処理をJavascriptで行う役割分担方式にしています。
この方式の利点は、計算式の修正を標準機能のDATE_FORMAT関数だけで行うことができるので、
色々な日時計算型のアプリに応用できる点です。
例えば「利用時間」を「利用日数」にしたアプリでも、計算式の部分を「利用日数*60*60*24」に変更すれば、Javascriptコードを修正する必要が有りません(フィールドコードを変えた場合は再設定が必要です)
💡 応用事例:どんなアプリで使える?
このカスタマイズは、日付や時間を扱う色々なアプリで活用できます。
| 業務アプリ | 計算の例 | 自動化されるフィールド |
| 備品レンタル | 貸出日時+利用時間=返却予定日時 | 終了日時 |
| プロジェクト管理 | 開始日+所要日数=完了予定日 | 完了予定日 |
| タスク管理 | 登録日時+設定時間=アラート日時 | アラート日時 |
例えば、レンタルアプリで「開始日時」と「利用時間(60分)」を入力すると、自動で「終了日時」が計算され、日時データとして保存されます。 これにより、「今週返却予定の備品一覧」を簡単にフィルタリングしたり、「月別のレンタル利用時間の推移」をグラフ化したりできるようになるわけです😊
🛠️ 技術的なポイント
このカスタマイズの技術的な工夫は、以下の点にあります。
- DATE_FORMAT関数の活用:
日時計算はkintone標準機能のDATE_FORMAT関数に任せていますので、JavaScriptに詳しくないユーザーでも標準機能だけで計算式の修正が行えるという大きなメリットが生まれます。- 計算式例:
DATE_FORMAT( 開始日時 + ( 利用時間 * 60), "YYYY-MM-ddTHH:mm:ssZ", "Etc/GMT")
- 計算式例:
- 日時計算式の書式チェック機能:
DATE_FORMAT関数が設定されている文字列1行型(自動計算する)フィールドの値がISO形式の日時フォーマットと異なる場合は、kintoneAPIの確認ダイアログ(2025年9月公開API)で警告アラートを画面に表示して、処理を中止します。その場合は、DATE_FORMAT関数の計算式を再チェックして下さい。 - 自動計算型フィールドの値変化を自動検知:
kintoneには、フィールドの値変更を検知できるChangeイベントがありますが、文字列1行型(自動計算する)や、計算型フィールドの値変更は検知できない仕様なので、自動計算型フィールドの値変化を検知する独自の仕組みを導入しています。
🎯 まとめ:kintoneをもっと使いやすく!
このカスタマイズは、以下のメリットがあるので、業種を問わずさまざまな場面で活躍します。
- フィールド値のコピー機能は、入力のムダとエラーを減らす強力な仕組み
- 初期設定以外の難しい操作は不要、初心者ユーザーでも安心して使える
- タスク管理、プロジェクト管理、日付データ入力の自動化など…いろんな場面で役立ちます
今の業務アプリに、日時データ活用の「便利」を追加してみませんか?
💪 皆さんも、本カスタマイズを実装したkintone画面で、その変化を実感してみてください!
🔨 自分でカスタマイズしてみたい方へ
以下のNote記事で本記事のカスタマイズ事例を紹介しています。
記事内で紹介しているカスタマイズコードは、無料で利用できるので是非挑戦してみて下さい。
「note:アプリ活用研究会(キン活)」は、当サイトのメンバーが執筆しています。

🌸 アプリテンプレートの販売
この記事で紹介したカスタマイズ機能のアプリテンプレートをサポート契約先限定でご提供しています。
アプリテンプレートを利用すれば、デモ画面の様に動くアプリを簡単に導入できます。
設定方法や操作方法もサポート対象です。

サポート契約の料金体系
| 簡易サポート | 会員サポート | |
|---|---|---|
| 料金 | 税抜(1,000円×ユーザー数)/月 | 税抜(5,000円×ユーザー数)/月 |
| サービス内容 | プラグインとテンプレートの利用 | kintone運用の伴走支援 |
| プラグインと テンプレートのご利用 | 5種類まで | 無制限 |
🧩 プラグインのご紹介
当社が開発した、フィールド間の値コピープラグインをご紹介します。
計算型(CALC)フィールドの計算結果も数値型や日付型フィールドへのコピー対象にできます。
Javascriotカスタマイズは、少しハードルが高いです💦 という方はこちらもご検討下さい。
🏫 kintone人材育成研修
この様なカスタマイズを自分で出来る様になりたい方は、当サイトの「Kintome人材育成」上級コースの受講をご検討して下さい。当サイトのTIPSで紹介しているカスタマイズ例のテンプレートを使えば、簡単に実装出来ます!
上級コースの受講者には、特典で当サイトのカスタマイズテンプレート(3種類まで)と3か月のサポート契約を無償でご提供しています。
研修目的を「カスタマイズテンプレートのアプリ導入」とする研修メニューもご提案可能です。

📣カスタマイズ・導入支援いたします!
本記事の様な「kintoneアプリのカスタマイズ」をご希望の企業様へ
kintoneを便利に活用できるカスタマイズと運用支援は、ぜひ当社にご相談ください!

#kintone #Javascript #カスタマイズ #日時計算

