重複する予定を、kintoneで登録禁止する方法

複数の社員が予定をkintoneにレコード登録しているが、人の予定もガンガン登録する状況であるとしましょう

そうなると、予定が被って登録されてしまうことが多々ある。どうにかしたい

最初は値の重複禁止を設定すればいいかと思いました。文字列1行も日時フィールドも値の重複禁止の設定が可能。

しかし、名前(文字列1行)の重複を禁止してしまうと、kinbozuという名前でレコードは1件しか登録できないし、日時も同様ということで、あまりスマートな方法ではないですが、ご紹介します!!

複数条件での重複禁止設定(強引に)

文字列結合させても重複禁止はできない!?

文字列(1行)には、自動計算でフィールドに入力された情報を結合して1つのフィールドにまとめることができます。

氏名&日時 重複禁止設定できれば、kinbozuという名前で同じ日時に予定を入れるとエラーになるんじゃないか?

フィールドデータを結合してみると

と思ったんですが、ならないんですね。文字列(1行)フィールドの設定で自動計算するにチェック入れると値の重複を禁止するという項目が無くなります。

なので、私の予定を被らせずに登録して欲しいという願いは文字列(1行)で利用できる文字列結合では対応できない・・・次の方法!!

文字列1行の設定で自動計算チェック

文字列結合プラグインでの重複禁止には難あり

上に書いた文字列(1行)フィールドを利用した連携機能では、ルックアップやラジオボタンなどを含めることはできない。そういった問題を解決するために、文字結合プラグインという無料プラグインが公開されています。

名前と日時をプラグインで結合させて、文字列(1行)フィールドに結合させた文字列を表示させる。表示させるフィールドを値の重複をすればOK!?

文字列結合プラグイン設定画面

文字列結合プラグインを利用すると時間が反映されない

最初に6月23日9時00分に登録して、1時間後の6月23日10時にレコードを登録しようとすると値が重複しているとエラーがでました。

文字列結合プラグイン設定パターンA

文字列結合プラグイン設定パターンB

kinbozuと2019年6月23日9時00分を

文字列1行を使った結合だと kinbozu1561248000
文字列結合プラグインだと     kinbozu2019-06-23

kinbozuと2019年6月23日10時00分を

文字列1行を使った結合だと kinbozu1561251600
文字列結合プラグインだと     kinbozu2019-06-23

文字列1行を使った結合だと分類出来そうなのに、結合プラグイン利用すると日付までしか入らない・・・

なので、日時としては違っているはずなのに重複しているとエラーが出る・・・残念

結合させて文字列結合プラグインで別のフィールドにコピーする

だったら!!

  1. 名前と日時を文字列1行の自動計算で結合させる
  2. ①で結合させたデータを文字列結合プラグインで他のフィールドと結合させずに別のフィールド(文字列1行)に表示させる
  3. ②で設定した文字列1行フィールドに値の重複を禁止する設定をする
結合する項目は1つだけ文字列結合プラグイン設定画面2
値の重複禁止!!文字列1行フィールドに値の重複を禁止
コピーできてる!!予定を被らせないことにkintoneが成功

やっとレコード登録が出来ました。名前+日時の内容が被ると重複するのでちゃんとエラー表示されます。

予定被ったら嫌だアプリレコード一覧画面

どんな時に使う?不具合は?

kinbozuの予定見ればどこが空いているか分かるから、被らせずに登録するだろう?

そうなんですけど、以前仕事で一斉に職員がレコード登録することがあり、被って被って大変だったんですよね。その時解決方法が全く見つからなかったんですが、さっき思いついたので書きました 笑

複数名が各々予定をレコードに登録する。そして被っているか確認して、被っていたら調整する・・・終わりが見えない!!

本当はもっとシンプルな方法があるんでしょうけど、成功した時は嬉しかったな〜

ちなみに、重複チェックする無料プラグインがある

@swictsoluさんに教えていただいたTISさんレコード重複チェックプラグイン!!

文字列や日時等複数指定して重複しているレコードがあれば

レコード重複チェックプラグイン エラー画面

って聞いてくれる優しさあふれるプラグイン。

このプラグイン使ってるのにOKボタンを押して登録してくる人がいると、キンボウズ式で一切重複を受け付けない様にしましょう 笑