|
Как проверить на "Операция не может быть выполнена из-за несоответствия версии"
| ☑ |
0
бегинер
20.10.17
✎
10:32
|
в форме списка Документа выбираю галочками нужные доки и пакетно вношу в отмеченные изменения, как проверить что в отмеченных доках нет изменений - т.е что открыты другим пользователем и внесены изменения?
чтоб не нарваться на "Операция не может быть выполнена из-за несоответствия версии или отсутствия записи базы данных (возможно, запись была изменена или удалена
если такие доки будут - выведу алерт - что мол эти доки редактируются - открыты - в них невозможно внести изменения.
|
|
1
бегинер
20.10.17
✎
10:32
|
программно проверить естественно
|
|
2
DrShad
20.10.17
✎
10:35
|
Заблокировать()
|
|
3
DrShad
20.10.17
✎
10:36
|
Заблокирован()
|
|
4
Волшебник
модератор
20.10.17
✎
10:38
|
Прочитать()...Записать()
|
|
5
бегинер
20.10.17
✎
10:41
|
(2) спасибо!
буду ловить через "попытка" блокировку выделенного дока, если не даст заблокировать - значит кто-то его юзает, выведу алерт
|
|
6
DrShad
20.10.17
✎
10:43
|
(5) капец, а (3) тебе чем не подходит?
|
|
7
бегинер
20.10.17
✎
10:46
|
заблокирован - не подходит, так как:
"Следует учитывать, что этот метод используется для проверки блокировки объекта базы данных конкретным объектом встроенного языка. Он не может быть использован, чтобы проверить, заблокирован ли вообще объект базы данных"
проверил:
открыл отдельный док, внес в него изменения, не записал его, оставил открытым форму дока.
потом пакетно редактирую в том числе открытый, и на тот открытый документ метод
заблокирован() - выдает "нет"
|
|
8
aleksonic
20.10.17
✎
10:48
|
Не просто решить. Ситуация может возникнуть непосредственно перед попыткой произвести запись измененного Документа. Например он загружен из другой базы, решили что-то изменить и происходит повторная выгрузка.
Возможно проверять и блокировать.
|
|