今回は、満を持して登場したレコードのロック機能を利用したカスタマイズをご紹介します!
時間をかけてたくさんのフィールドに入力・編集し、やっとのことで保存ボタンを押したら、
「レコードを再読み込みしてください。編集中に、ほかのユーザーがレコードを更新しました。」
と表示され、レコード保存できなかった。
こんな悲しい思いをした記憶、みなさんお持ちではないでしょうか?
同じレコードを複数人で同時に編集してしまう事によって起きるこのエラーを、編集中のレコードをロックする「やること」「条件」を組み合わせて使う事で回避することができます!
YouTubeでもデモ動画を公開していますので、是非ご覧ください。
kintoneのレコード同時編集ロック~gusuku Customine~
なお、Customineの基本的な事柄は、こちらの「はじめてのカスタマイズ」をご参照ください。
ご利用中の環境により、社内ネットワークの設定が必要な場合があります。詳しくは「接続先を制限されているネットワークから利用する場合に必要な設定について」をご参照ください。
レコードロックの基本
編集中のレコードをロックする方法:
やること「レコード編集画面をロックする」と条件「レコード編集画面をロックすべき時」をセットで使用します。
この1アクションだけで、レコードロックのカスタマイズは完了です。
カスタマイズを反映したアプリで、同じレコードを同時に編集してみます。
二条次郎さんでログインし、レコードの編集画面に進みます。
すると、下記のような「レコードのロック中」と書かれたポップアップが表示され、レコードがロックされます。
他に誰もこのレコードを編集しておらず、ロックに成功すればそのままレコードの編集が可能です。
編集中画面は、このまま表示しておきます。
次に、同じレコードを別の画面で開いてみます。
「このレコードは 二条次郎 さんが編集中なので同時に編集はできません。」と表示され、強制的に詳細画面に戻されます。
ロックに成功した、編集中の二条次郎さんの編集が終わるまでは、このレコードを編集することはできなくなりました。
なお、一覧画面で鉛筆マークをクリックして編集する場合も、同様にロック/ロック解除が行われます。
ご利用の際の注意点は下記です。
やること「レコード編集画面をロックする」に対しては、「レコード編集画面をロックすべき時」以外の条件を指定することはできない。
逆に、条件「レコード編集画面をロックすべき時」に他のやることを組み合わせることは可能。
編集画面を開いたまま何もしない状態で放置した場合、20分前後で自動的にロックが解除され、他のユーザーが編集できるようになる。
レコードのロック状態の表示方法:
「レコード編集画面をロックする」だけでレコードのロックはできますが、編集ボタンを押してみないとそのレコードがロックされているかどうかわからないため不便です。
こういった場合は、レコードのロック状態を表示する「やること」をご利用ください。
レコードが「ロックされている/されていない」を表示するためのやることは下記の2つです。
上記のカスタマイズ例では、メニュー位置にロック状態を表示します。
なお、それぞれ表示場所が異なるだけで、同じ情報が表示されます。
下記は、「レコードのロック状態をメニュー位置に表示する」の場合です。
編集可能な時:
編集不可の時:
なお、「レコードのロック状態をスペースに表示する」はスペースを設置した位置に表示されます。
スペースを設置した位置にロック状態が表示されます。
利用の際の注意点は下記です。
ロックされているかどうかのチェックはアクションを実行したときのみ行われ、そのあとでほかの誰かがレコードをロック/ロック解除しても表示済みの内容が自動的に更新されることはない。
再表示するためには、ユーザーが画面をリロードするか、他のアクションで再度「レコードのロック状態をメニュー位置に表示する」か「レコードのロック状態をスペースに表示する」を実行する必要がある。
カスタマイズが作成できたら「kintoneアプリへ登録」し、動作を確認してみてください。
まとめ
レコードロックのカスタマイズ、いかがでしたでしょうか?
複数のユーザーが同じレコードを編集するアプリで、きっとお役立ていただけると思います!
とってもシンプルなカスタマイズで実現できますので、是非試してみてくださいね。