Record ‘Locking’ in myPractice

In Version 2.22 we introduced the concept of a Client Record Lock.   Note that this only applies to Network Edition users who are all located in the one office with a Direct connection to the database.  It does not apply to Solo edition users, myPractice ‘Live’ users or any Network user that utilises the Sync process. (i.e. those that occasionally work offline)

How does it work?

On computer 1, User ‘A’ opens Client ‘Joe Blow’s record in the Client Details screen – behind the scenes this action sets the lock by recording the Users Name and the Date and Time of the record being opened.

image  User a loads Client record ‘Joe Blow’

Shortly afterwards on computer 2, User ‘B’ also goes to open ‘Joe Blow’s record… but this time the User is presented with a message..

image

User ‘B’ receives a warning that the record is in use by another User

This message is telling User ‘B’ that the User ‘A’ currently has the lock on Joes record and that you have the choice to either proceed and potentially cause the other User to lose their changes – or you can Cancel the loading of the record (Cancel is the Default action if you press enter)

Under normal circumstances User ‘B’ would click Cancel and wait until User ‘A’ has completed their editing and left the record.

Once User ‘A’ navigates to another Client record or closes the Client Detail form, the lock is released.

What happens if User ‘B’ clicks OK and proceeds to load the record?

User ‘B’ will get one last warning and will be required to confirm their action.  We are taking this additional step because of the potential loss of data the User ‘A’ might encounter – we want all Users to be aware that they are taking a potentially hazardous step.

image

User ‘B’ receives their final warning/confirmation dialog

If User ‘B’ continues, an Audit Log entry will be recorded that states the users name and the date and time that the User chose to override the lock.

In addition, a popup alert will be sent to User ‘A’ warning them that User ‘B’ has acquired the Client record.

image

User ‘A’ is notified of the other Users action

If User ‘A’ subsequently tries to save their changes, they will acquire the lock back from User ‘B’, potentially causing that user to lose their changes.  It is possible that User ‘A’ will be able to safely save their changes but only if User ‘B’ has not saved any changes in the meantime.

i.e. User ‘B’ could acquire the lock and ‘view’ the Client record, not save any changes and all would be fine.  When User ‘A’ tries to save, they can re-acquire the lock and update the record.

So is it really a lock?

In the strictest sense – no.  It does not prevent users from opening, viewing or editing a record.  What it does do is put the onus on the User to be responsible and sensible when dealing with Client data.  Rather than ruling with an iron fist, we’ve chosen a softer approach that keeps flexibility in the program.