キントーンはレコード同時編集できない問題の解決方法
kintoneを使っていると、どうしても目にしてしまう同時編集しようした際のエラー
kintoneは同じレコードを複数のユーザーが同時に編集した場合、先にレコードを保存したユーザーの内容が反映されます。レコードのアクセスした順番ではなく、後からレコードの編集ボタンを押しても先に保存すれば勝ちという理不尽な世界
標準機能では他のユーザーが編集中だと通知してくれないので、アプリの運用を変えたり連携サービスやプラグインを使ったり・・・
【kintone容量落とし穴】kintone変更履歴で添付ファイルデータのバックアップ→kintone容量圧迫問題
ライトコースで同時編集問題解決を検討してみた
ってことで、イメージとしてはみんなの情報を集約して見るだけのアプリと各自が情報を入力するだけのアプリに分けて作成します
見るだけのkintoneアプリ
例えば会議で各自のPCで確認したり、Zoomで繋ぎながら確認もしくは誰かが画面共有しながら利用をイメージしています
アプリ名はレジュメアプリにしておきます
ポイントとしては
- 予定入力以外は編集する必要がない
- 各ユーザーはアプリアクションを使って報告や予定を共有
- 共有方法は関連レコードを活用
- 表示するレコードの条件を工夫
で、下記の様なアプリを作成
関連レコードの表示するレコードの条件には、文字列1行の自動計算を使って会議名&開始(日時)で特定のレコードを絞り込めるようにしています
上記の方法で作成した会議コードを、アプリアクションで別のアプリ(今回は個人記入アプリ)にコピーした状態でレコードを作成します
入力するだけのkintoneアプリ
まぁ確認もしますが、確認するのは入力した本人であって他のユーザーはレジュメアプリで確認
レジュメアプリでアプリアクションを実行すると、会議コードが入力され、記入者にログインユーザーが入力された状態でスタートします
報告と今後の予定を入力するのですが、各ユーザー毎にレコードを作成するので
レコードを再読み込みしてください。編集中に、ほかのユーザーがレコードを更新しました。
って事態に陥ることがない
1つのレコードに各ユーザーが報告事項や予定を入力する必要がないので保存できなかったとか、誰かの保存待ちとかを気にしなくていいんです
入力された状態
会議が始まると各ユーザーの入力した情報は、関連レコードで一覧となって確認可能です
会議前にコメントを入れておくことで、リアルに参加できなくても意見を伝えることができますし、会議中に1人1人報告する時間も省けるので便利ですよね
今回使った機能はkintoneのライトコースで活用できますので、スタンダードコースじゃない!!って人でも問題なし!!
- 文字列(1行)の自動計算
- アプリアクション
- 関連レコード
では、スタンダードコースで利用可能な連携サービスやプラグインだとどんなことができるのかも紹介してみます
kintone連携サービスやプラグイン
まずはkintone連携サービスCustomineでチャレンジしてみましょう
kintone連携サービス Customineで同時編集ロック
Customineにはそもそも
レコード編集画面をロックするってカスタマイズが存在します
このカスタマイズだけだと、編集ボタンを押さないとレコード編集画面をロックすべき状態か分からない(誰かが編集中の状態)ので
レコードのロック状態をスペースに表示するってカスタマイズを活用することで、表示しているレコードが編集可能か編集ロック中(誰かが先に編集中)かを確認することが可能となります
ロック状態はスペースフィールドに反映されるのですが、気づかずにレコード編集しようとすると
Customineを使うメリットとしては、レコード編集画面をロックする条件を設定できるので
- ユーザーが〇〇だったら
- ステータスが〇〇だったら
- フィールドの値が〇〇だったら
カスタマイズするサービスなんだから当然と言えば当然なんですけど、jsとかさっぱりな自分でも状況に応じた運用ができるのでお勧めです!!
TIS プラグインで同時編集確認
続いて無料のプラグインをご紹介します
毎度お馴染みTISさんのkintoneレコード同時編集確認プラグインです
なんとこのプラグインは設定の必要がありません
利用したいアプリにプラグインを追加するだけでOKです
誰かがレコードを先に編集していたら確認画面が表示されます
OKを押すと編集を行えるようになります。
ボタンを出したくないとかはプラグインの中身を変える必要があるので、そういった面で連携サービス(今回はCustomine)を使うかプラグインを使うか検討ですね。
kintoneアプリ運用前にしっかり設計を
ごく稀にレコード同時編集するぐらいであれば許容範囲?ごく稀も防ぎたい?
アプリ運用を考えた際、レコード同時編集する機会がどの程度あるか、どこまで許容できるかをアプリ運用前にしっかり考えておくことが大切ですv
複数ユーザーが同時編集する可能性があるのであれば、最初に書いた2つのアプリに分ける方法やそもそもスレッドやコメントを活用を検討する必要があるかもしれませんしね