Я добавляю простой веб-интерфейс для отображения данных из коммерческого готового приложения (COTS). Эта COTS создает блокировки для любой записи, которую пользователь активно просматривает (намерены ли они редактировать и обновлять ее или нет).
Я нашел сценарии sp_lock и Microsoft sp_lock2 и могу видеть блокировки, так что все хорошо.
Однако я не могу понять, как определить, была ли затронута конкретная запись, которую я собираюсь обновить, одной из этих блокировок. Если я отправляю запрос на обновление и на самом деле происходит блокировка, веб-интерфейс будет ждать бесконечно, пока пользователь не закроет окно в COTS.
Как я могу:
a) определить перед выпуском обновления, что запись была заблокирована
OR
b) выпустить обновление, которое немедленно вернется со статусом LOCKED, а не будет бесконечно ждать, пока пользователь COTS закроет свое окно для этой записи?