期間を指定して、kintoneにレコードを登録する

kintoneで予定を登録する際は、日付や日時フィールドを利用すると便利ですよね?

bozu
〇日~△日まで休みます!!

期間をkintoneにレコード登録するときはどうしていますか?

開始日~終了日・・・日付

僕がkintoneに期間を登録したいと考えた場合、日付フィールドを2つ並べて

  1. 開始日・・・日付
  2. 終了日・・・日付

例えば、何日間の休みをとっているかを計算したい場合、計算フィールドの計算式に

(終了日-開始日)+86400

開始日・・・9月1日 終了日・・・9月3日の場合、(終了日-開始日)という計算式だと2日になっちゃいます。

9月1日 2日 3日 3日間という数値が欲しい場合は86400を足すと計算結果に1日プラスすることが出来ます。

なぜ86400?
kintoneの計算式だと 1=1秒
60秒×60分×24時間=86400秒が1日の秒数となるので86400を計算式にプラスすると1日追加となる訳ですね。

では、どの日付が一番レコード数が多いのか?

これが分からないんですよね、いい方法があるのかもしれないんです!!ただ、開始日や終了日を集計することはできても、その間の日付の情報は上記のやり方では登録されないんですよね

ということで、開始日と終了日を入力すると開始日と終了日とその間日付をレコード登録する方法がCustomineで見つけたので紹介させていただきます。

指定日付範囲をループしてレコード作成

Customineのテンプレートに、指定日付範囲をループしてレコード作成というテンプレートが公開されていました。

このテンプレートを利用して、1日休みや複数日にまたがる期間の休みをkintoneに登録できるように挑戦してみました。

予定アプリと日付登録アプリ

イメージをざっくり伝えると

予定アプリに開始日9月1日~終了日9月6日って情報をフィールドに入力する。

入力した時点で日付アプリへコピーボタンをクリックすると、日付登録アプリに

  • 9月1日
  • 9月2日
  • 9月3日
  • 9月4日
  • 9月5日
  • 9月6日

の計6個のレコードが登録されます。各日付のレコードが登録されることで、集計やリマインダーも設定しやすくなるかもしれません。

予定アプリ

フォームに配置したフィールドは↓

  • 氏名・・・文字列1行
  • 開始日・・・日付
  • 終了日・・・日付
  • ループ判定・・・文字列1行

詳しい説明は、指定日付範囲をループしてレコード作成に書かれています。

ざっくりと説明すると開始日から終了日までの日付をループ判定に日付の値がセットされて、氏名とループ判定の値が日付登録アプリにレコード追加され続けるというループ設定。

ループ判定の日付が終了日の日付より先の日付になると、フィールドの値はクリアーされて、フィールドの値が空の場合は処理が終了したという情報ダイアログが表示されるって流れです。(多分)

日付登録アプリ

日付登録アプリに配置したフィールドは

  • 氏名・・・文字列1行
  • 日付・・・日付

の2つだけ。

簡単に作成した2つのアプリがCustomineを使うとどうなるのか!?

Customine設定

設定は指定日付範囲をループしてレコード作成を参考にしました。

実際どんな動きをするのかキャプチャー動画を撮ったので確認してみましょう。

実際にレコード登録してみた

動画の通り、予定アプリに開始日8月26日終了日8月31日のフィールドに入力しボタンを押すと、日付登録アプリに6日分のレコードが登録されました。

少し長めの休み申請をレコードに登録しておくことで、どの日付に休みが重なっているかを視覚的に確認することが出来ます。リマインダーの設定も簡単に出来そうですね~

カレンダー表示
グラフ表示

 

1個1個登録しなくていいとか最高

Customineの条件を組み合わせることで色々と応用できるのではないでしょうか?

短期~長期入所の記録管理とかもこの方法だと簡単じゃないかな?

入所期間が予めわかっていれば入所期間中の記録の空レコードを登録しておくことが出来ます。当日の記録だけを表示するようにすれば日々の帳票の完成ですね♪

PR

シェアどうぞ宜しくお願い致します

株式会社 MOVEDにJOIN

kintoneの導入支援

キンボウズが実際にkintone導入支援を致します。そのほか色々と・・・

詳しくはMOVED公式ページ