![]() |
#9 |
Иван Захаров
|
Цитата:
Сообщение от glibs
Если речь идет об автоматическом снятии "зависшей" блокировки, то лучше посмотреть соответствующий механизм, который реализован в непрерывных номерных сериях (там используется идентификатор сессии и еще что-то (не помню уже)).
... блондинка, Журналы то это одно - там отдельная форма строк, открытие которой можно заблокировать. А вот форма заказов совсем другая. Представьте себе что имеем 10 заказов. Один пользователь на 1м. Второй на 10м. И начинают они "бежать" (с помощью стрелочек на клавиатуре) по гриду - первый - вниз, второй - вверх. Что происходит в районе примерно 5го по счету заказа если они одновременно на нем "остановились"? Вы вообще думали о той бизнес-логике которая должна при этом отрабатывать? Для каждого пользователя: 1. Перечитать запись из БД. 2. Проверить флаг а. Блокирован - блокируем заказ от изменения текущим пользователем (строки + все кнопки) б. Не блокирован - обновляем в транзакции флаг в заказе. Перечитываем запись в датасорс. Можем осуществлять работу с заказом. 3. Ушли с этого заказа - обновить запись в БД., разбликировать строки и кнопки ... и далее на п.1 Короче, бред.... А кроме обычной формы заказов есть форма "Строки открытых заказов" (или как она там называется... Аксапты под рукой нет). Там такую же хрень реализовывать? |
|
Теги |
ax3.0 |
|
|