このプラグインでできること
「日付計算プラグイン」は、基準となる日付フィールドの値から、別の日付フィールドへ日付を自動で計算・入力するプラグインです。
「当月末」「翌月20日」「30日後」といった計算をルールとして登録できます。
計算結果が土日・祝日・会社休日に当たった場合は、前後の営業日へ自動でずらせます。
サブテーブル(テーブル)内の日付フィールドにも対応しています。
主な機能は次のとおりです。
- 基準日フィールドの値が変わったタイミングで、対象の日付フィールドを自動計算・自動入力
- 「基準日の当月」「基準日からの日数」「基準日からの月数」の3種類の計算方法
- 存在しない日付(例:2月31日)を指定した場合、その月の月末日へ自動調整
- 計算結果が休日のとき「翌営業日」または「前営業日」へ自動調整
- 土曜日・日曜日・祝日を休日扱いにするかどうかの切り替え
- 会社独自の休業日(会社休日)と、土日祝でも出勤する日(会社営業日)の登録
- 対象の日付フィールドを編集不可にする設定
- ルールの複数登録・並び替え・有効/無効の切り替え
- 設定画面上での計算結果のリアルタイムプレビュー
- 設定内容のJSONファイル出力・読込
動作環境・前提条件
2-1. 対応画面
| 画面 | 対応 |
|---|---|
| PCのレコード追加画面 | 対応 |
| PCのレコード編集画面 | 対応 |
| PCの一覧画面(インライン編集) | 対応 |
| モバイルのレコード追加画面 | 対応 |
| モバイルのレコード編集画面 | 対応 |
| レコード詳細画面(閲覧のみ) | 該当なし |
2-2. 事前に必要なフィールド
設定を行う前に、アプリに次のフィールドを用意してください。
| 用途 | 必要なフィールドの種類 |
|---|---|
| 基準フィールド(計算のもとになる日付) | 「日付」フィールド または 「日時」フィールド |
| 対象フィールド(計算結果を入れる日付) | 「日付」フィールドのみ |
⚠️ 対象フィールドに「日時」フィールドは指定できません。対象は「日付」フィールドのみです。
💡 サブテーブル内の日付フィールドも使用できます。ただし、基準フィールドと対象フィールドは同じテーブル内である必要があります。メインのフィールドとサブテーブル内のフィールドを組み合わせることはできません。
2-3. 内蔵している祝日データ
祝日の判定には、プラグインに内蔵された日本の祝日データを使用します。
対象期間は2025年から2030年までです(国民の祝日・振替休日・国民の休日を含みます)。
設定手順
3-1. 設定画面の全体構成
設定画面は、上部のヘッダーと2つのタブで構成されています。
設定画面のヘッダー
ヘッダーには次のボタンがあります。
| ボタン | 説明 |
|---|---|
| 「設定保存」 | 設定内容を保存し、アプリへ反映します |
| ×(バツ印のアイコン) | 保存せずに前の画面へ戻ります |
| 「設定出力」 | 現在の設定をJSONファイルとしてダウンロードします |
| 「設定読込」 | JSONファイルから設定を読み込みます |
タブは次の2つです。
| タブ | 説明 |
|---|---|
| 「日付設定」 | 日付を計算するルールを登録します |
| 「休日設定」 | どの日を休日扱いにするかを設定します |
「日付設定」「休日設定」タブ
💡 選択中のタブは記憶されます。画面を再読み込みしても、直前に開いていたタブが表示されます。
3-2. 「日付設定」タブでルールを追加する
日付を自動計算するルールを1件ずつ登録します。
- 設定画面の上部で、「日付設定」タブをクリックします。
- 画面下部の「+ ルールを追加」ボタンをクリックします。
- ルールのカードが1枚追加されます。
「+ ルールを追加」ボタン
💡 ルールが1件も登録されていないときは、「ルールが登録されていません。下の「ルールを追加」ボタンから作成してください。」と表示されます。
- 追加されたカードの入力欄に、ルール名を入力します。
- 入力欄には「ルール名(例:支払期日の自動設定)」と表示されています。
- ルール名は設定画面での識別用です。レコード画面には表示されません。
ルール名を入力する
- カードの「基準フィールド」で、計算のもとにする日付フィールドを選択します。
- 「日付」フィールドと「日時」フィールドが選択肢に表示されます。
- フィールド名のうしろに、かっこ書きで「(日付)」または「(日時)」と種類が表示されます。
- サブテーブル内のフィールドは、先頭に
[テーブル名]が付いて表示されます。
「基準フィールド」を選ぶ
💡 「日時」フィールドを基準にした場合、時刻は使用されません。日付部分のみを使って計算します。
3-3. 計算方法を設定する
「計算方法」では、次の3種類から選択します。
| 選択肢 | 説明 |
|---|---|
| 「基準日の当月」 | 基準日と同じ月の中で日付を決めます |
| 「基準日からの日数」 | 基準日から何日前/何日後かで日付を決めます |
| 「基準日からの月数」 | 基準日から何ヶ月前/何ヶ月後かの月の中で日付を決めます |
- カードの「計算方法」で、使用する計算方法を選択します。
- 選択した内容に応じて、右側の「指定」欄の入力項目が切り替わります。
「計算方法」を選ぶ
3-3-1. 「基準日の当月」を選んだ場合
- 「指定」欄のプルダウンで、「月初(1日)」「月末」「指定日」のいずれかを選択します。
| 選択肢 | 計算結果 |
|---|---|
| 「月初(1日)」 | 基準日と同じ月の1日 |
| 「月末」 | 基準日と同じ月の最終日 |
| 「指定日」 | 基準日と同じ月の、指定した日 |
- 「指定日」を選んだ場合は、右側の数値入力欄に日を入力します。
- 入力できる範囲は1から31です。
- 入力欄のうしろには「日」と表示されます。
「基準日の当月」の指定
3-3-2. 「基準日からの日数」を選んだ場合
- 「指定」欄の数値入力欄に、日数を入力します。
- 0以上の数値を入力してください。
- 数値入力欄の右側のプルダウンで、「前」または「後」を選択します。
| 選択肢 | 計算結果 |
|---|---|
| 「前」 | 基準日から、指定した日数だけさかのぼった日 |
| 「後」 | 基準日から、指定した日数だけ進んだ日 |
「基準日からの日数」の指定
3-3-3. 「基準日からの月数」を選んだ場合
- 「指定」欄の数値入力欄に、月数を入力します。
- 0以上の数値を入力してください。
- 入力欄のうしろには「ヶ月」と表示されます。
- 「前」または「後」を選択します。
- 「の」の右側のプルダウンで、「月初(1日)」「月末」「指定日」のいずれかを選択します。
- 「指定日」を選んだ場合は、右側の数値入力欄に日を入力します。
- 入力できる範囲は1から31です。
「基準日からの月数」の指定
💡 「1ヶ月」「後」「月末」と設定すると、翌月の最終日が計算されます。「2ヶ月」「後」「指定日」に「20」と設定すると、2ヶ月後の20日が計算されます。
💡 指定した日がその月に存在しない場合は、その月の最終日に自動調整されます。例えば「1ヶ月後の31日」と設定し、基準日が1月15日の場合、計算結果は2月28日(うるう年は2月29日)になります。
3-4. 対象フィールドと編集制御を設定する
- カードの「対象フィールド」で、計算結果を入力する日付フィールドを選択します。
- 選択肢には「日付」フィールドのみが表示されます。
- 表示されるのは、基準フィールドと同じテーブル内のフィールドだけです。
「対象フィールド」を選ぶ
⚠️ 「基準フィールド」を変更すると、テーブルが異なる場合は「対象フィールド」の選択が自動的にクリアされます。基準フィールドを変更したあとは、対象フィールドを選び直してください。
- 対象フィールドを手入力させたくない場合は、「編集制御」の「対象フィールドを編集不可にする」にチェックを入れます。
- チェックを入れると、レコードの追加・編集画面で対象フィールドが入力できない状態になります。
「対象フィールドを編集不可にする」
3-5. 営業日調整を設定する
計算結果が休日に当たったとき、前後の営業日へずらす設定です。
- カード内の「計算結果が休日(土日・祝日・会社休日)の場合は営業日に調整する」にチェックを入れます。
- チェックを入れると、下に「翌営業日」「前営業日」の選択肢が表示されます。
- 「翌営業日」または「前営業日」のいずれかを選択します。
| 選択肢 | 動作 |
|---|---|
| 「翌営業日」 | 休日に当たった場合、あとの日付方向で最初の営業日にずらします |
| 「前営業日」 | 休日に当たった場合、前の日付方向で最初の営業日にずらします |
営業日調整の設定
💡 連続した休日(ゴールデンウィークや年末年始など)の場合も、営業日に到達するまでずらし続けます。
⚠️ どの日を休日扱いにするかは、「休日設定」タブの内容に従います。営業日調整を使う場合は、「休日設定」タブも確認してください。
3-6. プレビューで計算結果を確認する
各ルールのカード下部には、計算結果のプレビューが表示されます。
- 表示形式:「基準日が (今日の日付) のとき → (計算結果)」
- 今日の日付を基準にした場合の結果が表示されます。
- 営業日調整・会社休日・会社営業日の設定もすべて反映されます。
計算結果のプレビュー
💡 設定を変更するとプレビューはその場で更新されます。保存前に、意図した日付になるか確認してください。
3-7. ルールの並び替え・無効化・削除
3-7-1. ルールを並び替える
- 並び替えたいルールカードの左端にあるドラッグハンドル(点が並んだアイコン)にマウスカーソルを合わせます。
- そのままドラッグして、移動したい位置でドロップします。
- カードの順番が入れ替わり、右側の番号(#1、#2 など)も振り直されます。
ドラッグハンドルでルールを並び替える
3-7-2. ルールを一時的に無効にする
- ルールカード上部のトグルスイッチをクリックして、オフにします。
- カードに「この設定は無効中です」と表示されます。
- 無効にしたルールは、レコード画面での自動計算に使われません。
無効にしたルールのカード
3-7-3. ルールを削除する
- ルールカード右端のゴミ箱アイコンをクリックします。
- 「削除確認」のダイアログが表示されます。
- 内容を確認し、「削除」ボタンをクリックします。
- 削除を取りやめる場合は「キャンセル」をクリックします。
「削除確認」のダイアログ
3-8. 「休日設定」タブで休日を設定する
「休日設定」タブでは、営業日調整を有効にしたルールで、どの日を「休日扱い」にするかを設定します。
- 設定画面の上部で、「休日設定」タブをクリックします。
「休日設定」タブ
⚠️ 「休日設定」タブの内容は、アプリ内のすべてのルールに共通で適用されます。ルールごとに別々の休日を設定することはできません。
3-8-1. 休日扱いにする曜日・祝日を設定する
「休日扱いにする曜日・祝日」の欄で、次の3つのチェックボックスを設定します。
| 項目 | 説明 | 初期値 |
|---|---|---|
| 「土曜日を休日扱いにする」 | 土曜日を休日として判定します | チェックあり |
| 「日曜日を休日扱いにする」 | 日曜日を休日として判定します | チェックあり |
| 「祝日(国民の祝日・振替休日・国民の休日)を休日扱いにする」 | 内蔵の祝日データに該当する日を休日として判定します | チェックあり |
- 休日扱いにしない曜日がある場合は、該当するチェックボックスのチェックを外します。
休日扱いにする曜日・祝日のチェックボックス
💡 土曜出勤の会社では「土曜日を休日扱いにする」のチェックを外します。祝日も営業する場合は「祝日(国民の祝日・振替休日・国民の休日)を休日扱いにする」のチェックを外します。
3-8-2. 会社休日を登録する
年末年始やお盆など、会社独自の休業日を1日ずつ登録します。
「会社休日」の欄には「上記の曜日・祝日に加えてここで指定した日も休日扱いになります」と説明が表示されています。
- 「会社休日」の欄にある日付の入力欄をクリックします。
- カレンダーが表示されます。
- カレンダーから登録したい日付を選択します。
- 「+ 追加」ボタンをクリックします。
- 下のリストに日付が追加されます。
会社休日の日付を選んで追加する
- 登録する日付の数だけ、手順1から3を繰り返します。
登録した会社休日のリスト
💡 1件も登録されていないときは「会社休日は登録されていません」と表示されます。
登録した日付を削除する手順は次のとおりです。
- 削除したい日付の右側にある×印をクリックします。
- リストから日付が削除されます。
⚠️ 日付を選択せずに「+ 追加」を押すと、「日付を選択してください」と表示されます。
⚠️ すでに登録済みの日付を追加しようとすると、「既に登録されています」と表示されます。
⚠️ 「会社営業日」に登録済みの日付を追加しようとすると、「会社営業日に登録されているため、休日として登録できません」と表示されます。
3-8-3. 会社営業日を登録する
土日や祝日でも出勤する日を登録します。
「会社営業日」の欄には「土日や祝日でも出勤する日を指定すると、その日は営業日として扱われます(最優先)」と説明が表示されています。
- 「会社営業日」の欄にある日付の入力欄をクリックします。
- カレンダーが表示されます。
- カレンダーから登録したい日付を選択します。
- 「+ 追加」ボタンをクリックします。
- 下のリストに日付が追加されます。
会社営業日の日付を選んで追加する
- 登録する日付の数だけ、手順1から3を繰り返します。
💡 1件も登録されていないときは「会社営業日は登録されていません」と表示されます。
登録した日付を削除する手順は次のとおりです。
- 削除したい日付の右側にある×印をクリックします。
- リストから日付が削除されます。
⚠️ 「会社休日」に登録済みの日付を追加しようとすると、「会社休日に登録されているため、営業日として登録できません」と表示されます。同じ日付を「会社休日」と「会社営業日」の両方に登録することはできません。
3-8-4. 休日判定の優先順位
日付が休日かどうかは、次の順番で判定されます。上にあるものほど優先されます。
| 優先順位 | 判定要素 | 結果 |
|---|---|---|
| 1 | 「会社営業日」に登録されている | 営業日として扱います |
| 2 | 「会社休日」に登録されている | 休日として扱います |
| 3 | 「土曜日を休日扱いにする」「日曜日を休日扱いにする」の設定に該当する | 休日として扱います |
| 4 | 「祝日(国民の祝日・振替休日・国民の休日)を休日扱いにする」がチェックあり、かつ祝日データに該当する | 休日として扱います |
💡 例えば、祝日である日を「会社営業日」に登録すると、その日は営業日として扱われます。
3-9. 設定を保存する
- 設定画面の左上にある「設定保存」ボタンをクリックします。
- 入力内容に問題がなければ保存が実行され、アプリへの反映が始まります。
- 画面に「保存しました」と表示されるまで待ちます。
「設定保存」ボタン
💡 キーボードの Ctrl キーを押しながら S キーを押しても保存できます(Mac の場合は Command キー+Sキー)。
💡 保存すると、アプリへの反映(変更を反映)まで自動で実行されます。「アプリの設定」画面で改めて「変更を反映」を押す必要はありません。
3-9-1. 保存できないときのメッセージ
入力に不備がある場合は、「入力エラー」というダイアログが表示され、保存されません。表示される主なメッセージは次のとおりです。
| メッセージ | 対処方法 |
|---|---|
| 「基準フィールドを選択してください」 | 該当ルールの「基準フィールド」を選択します |
| 「対象フィールドを選択してください」 | 該当ルールの「対象フィールド」を選択します |
| 「基準と対象は同じテーブル内のフィールドを指定してください」 | 基準フィールドと対象フィールドを、同じテーブル内のフィールドに揃えます |
| 「基準と対象に同じフィールドは指定できません」 | 基準フィールドと対象フィールドに、別々のフィールドを指定します |
| 「指定日は1〜31の範囲で入力してください」 | 「指定日」の数値を1から31の範囲で入力します |
| 「日数は0以上で入力してください」 | 「基準日からの日数」の数値を0以上で入力します |
| 「月数は0以上で入力してください」 | 「基準日からの月数」の数値を0以上で入力します |
| 「対象フィールド「(フィールド名)」が複数のルールで重複しています。1つの対象に対しルールは1つにしてください」 | 同じ対象フィールドを使っている有効なルールが複数あります。どちらかを無効にするか、対象フィールドを変更します |
💡 メッセージの先頭には「ルール#1(ルール名)」のように、対象のルールが表示されます。該当のカードを確認してください。
3-10. 設定を出力・読込する
設定内容をJSONファイルとして保存したり、別のアプリへ引き継いだりできます。
3-10-1. 設定を出力する
- 設定画面の右上にある「設定出力」をクリックします。
- 設定内容がJSONファイルとしてダウンロードされます。
設定画面右上の「設定出力」「設定読込」
3-10-2. 設定を読み込む
- 設定画面の右上にある「設定読込」をクリックします。
- ファイル選択の画面が開きます。
- 読み込むJSONファイルを選択します。
- 「設定を読み込みますか?」というダイアログが表示されます。
- ダイアログには「現在の設定はすべて上書きされます。読み込み後、「設定保存」を押すと確定されます。」と表示されます。
- 「読み込む」ボタンをクリックします。
- 読み込みが完了すると「設定を読み込みました」と表示されます。
「設定を読み込みますか?」のダイアログ
- 読み込まれた内容を確認します。
- 「設定保存」ボタンをクリックして確定します。
⚠️ 「設定読込」だけでは設定は確定しません。必ず「設定保存」を押してください。
⚠️ 読み込んだ設定に、現在のアプリに存在しないフィールドが含まれていた場合、そのフィールドの指定は空になります。ダイアログに「※ 現在のアプリに存在しないため取り込めなかったフィールドがあります:」と、該当するルールとフィールドが表示されます。読み込み後に、該当ルールのフィールドを選び直してください。
⚠️ 他のプラグインでダウンロードしたファイルや、形式が異なるファイルを選択すると、「設定ファイルの形式が正しくありません」と表示されます。「日付計算プラグインでダウンロードした設定ファイルを選択してください。」というメッセージが表示された場合は、ファイルを確認してください。
操作手順
4-1. レコードの追加画面で日付を自動入力する
ここでは、設定済みのルールが「基準フィールド:受注日/計算方法:基準日からの月数/1ヶ月後の月末/対象フィールド:支払期日」の場合を例に説明します。
- アプリの一覧画面で、レコードの追加画面を開きます。
- 基準フィールド(例:受注日)に日付を入力します。
- 入力した瞬間に、対象フィールド(例:支払期日)へ計算結果が自動で入力されます。
基準フィールドに入力すると対象フィールドに日付が入る
- 内容を確認し、レコードを保存します。
💡 対象フィールドの値は、ルールで「対象フィールドを編集不可にする」を設定していなければ、手入力で上書きできます。
4-2. 基準日を変更したときの動き
- レコードの編集画面を開きます。
- 基準フィールドの日付を別の日付に変更します。
- 対象フィールドの値が、新しい基準日をもとに再計算されます。
- 対象フィールドに手入力した値があった場合も、再計算した値で上書きされます。
基準日を変更すると対象フィールドが再計算される
⚠️ 対象フィールドを手入力で修正したあとに基準日を変更すると、手入力した値は再計算結果で上書きされます。
4-3. 基準日を空にしたときの動き
- レコードの編集画面で、基準フィールドの日付を削除して空にします。
- 対象フィールドの値も自動的に空になります。
基準日を空にすると対象フィールドも空になる
4-4. サブテーブル内の日付を自動入力する
サブテーブル内の日付フィールドを基準・対象に設定している場合の使い方です。
- レコードの追加画面または編集画面を開きます。
- サブテーブルの行にある基準フィールドへ日付を入力します。
- 入力した行の対象フィールドにだけ、計算結果が入力されます。
- 他の行の日付は変更されません。
サブテーブルの行に日付が入る
- 行を追加する場合は、サブテーブルの行追加ボタンをクリックします。
- 追加した行の基準フィールドへ日付を入力します。
- その行の対象フィールドに計算結果が入力されます。
追加した行にも日付が入る
💡 「対象フィールドを編集不可にする」を設定している場合、追加した行の対象フィールドにも編集不可の状態が適用されます。
4-5. 一覧画面のインライン編集で使う
- アプリの一覧画面を表示します。
- 編集したいレコードの行にある編集アイコンをクリックし、インライン編集の状態にします。
- 基準フィールドの日付を変更します。
- 対象フィールドの値が再計算されます。
- 保存アイコンをクリックしてレコードを保存します。
4-6. モバイルで使う
- モバイル版kintoneでアプリを開きます。
- レコードの追加画面または編集画面を開きます。
- 基準フィールドに日付を入力します。
- 対象フィールドに計算結果が自動で入力されます。
モバイルの追加画面で日付が入る
💡 PCと同じルールがそのまま適用されます。モバイル専用の設定はありません。
4-7. 設定内容の組み合わせ例
よく使う設定の組み合わせ例です。設定時の参考にしてください。
| やりたいこと | 計算方法 | 指定 | 営業日調整 |
|---|---|---|---|
| 当月末を期日にする | 「基準日の当月」 | 「月末」 | 必要に応じて設定 |
| 当月20日を支払日にする | 「基準日の当月」 | 「指定日」に「20」 | 「前営業日」 |
| 30日後を期限にする | 「基準日からの日数」 | 「30」「日」「後」 | 「翌営業日」 |
| 翌月末を納期にする | 「基準日からの月数」 | 「1」「ヶ月」「後」「の」「月末」 | 「翌営業日」 |
| 翌月20日を支払日にする | 「基準日からの月数」 | 「1」「ヶ月」「後」「の」「指定日」に「20」 | 「前営業日」 |
| 3ヶ月後の月初を次回点検日にする | 「基準日からの月数」 | 「3」「ヶ月」「後」「の」「月初(1日)」 | 必要に応じて設定 |
| 1年後を契約満了日にする | 「基準日からの月数」 | 「12」「ヶ月」「後」「の」「指定日」 | 必要に応じて設定 |
💡 「基準日からの月数」で「0」を指定すると、基準日と同じ月が対象になります。
制限事項・注意点
5-1. フィールドに関する制限
- 対象フィールドに指定できるのは「日付」フィールドのみです。「日時」フィールドは指定できません。
- 基準フィールドと対象フィールドは、同じテーブル内である必要があります。メインのフィールドとサブテーブル内のフィールドを組み合わせることはできません。
- 基準フィールドと対象フィールドに、同じフィールドを指定することはできません。
- 有効なルールの中で、同じ対象フィールドを複数のルールで使うことはできません。1つの対象フィールドに対してルールは1つです。
- 基準フィールドに「日時」フィールドを指定した場合、時刻は計算に使用されません。
5-2. 計算に関する制限
- 指定した日がその月に存在しない場合は、その月の最終日に調整されます。
- 内蔵の祝日データは2025年から2030年までです。2031年以降の日付は、祝日として判定されません。土曜日・日曜日・会社休日・会社営業日の判定はこの期間の制限を受けません。
- 営業日調整では、休日が続く場合も営業日に到達するまでずらし続けます。ただし、370日以内に営業日が見つからない場合は、その時点の日付で停止します。
5-3. 動作タイミングに関する制限
- 自動計算は、基準フィールドの値を画面上で変更したときに実行されます。レコードを開いただけでは再計算されません。
- 既存レコードの値を、設定変更後にまとめて再計算する機能はありません。既存レコードへ反映する場合は、レコードを開いて基準フィールドを入力し直してください。
- サブテーブルでは、値を変更した行の日付のみが更新されます。他の行は更新されません。
- レコードの詳細画面(閲覧のみの画面)での動作は該当なしです。
5-4. 休日設定に関する注意
- 「休日設定」タブの内容は、アプリ内のすべてのルールに共通で適用されます。ルールごとに休日を分けることはできません。
- 同じ日付を「会社休日」と「会社営業日」の両方に登録することはできません。
- 「会社営業日」に登録した日は、土曜日・日曜日・祝日・「会社休日」の設定より優先して営業日として扱われます。
5-5. その他の注意
- ルールを無効にしても、すでにレコードへ入力された日付の値は変わりません。
- 「対象フィールドを編集不可にする」を設定した場合でも、他の方法(レコードの一括更新など)で値が変更される可能性があります。
- 「設定読込」を行っただけでは設定は確定しません。「設定保存」を押して確定してください。