|
Как правильно программно записать документ? | ☑ | ||
---|---|---|---|---|
0
evorle145
24.05.17
✎
14:48
|
Штука такая: один пользователь открыл документ и что-то в нем поправил, но еще не записал.
А другой пользователь в это же время пока первый редактирует документ, запустил обработку, в котором этот документ был перезаписан. В результате у первого пользователя при попытке записать вылазит ошибка... Вопрос: как учесть в обработке, что документ уже редактируется? |
|||
1
Джинн
24.05.17
✎
14:50
|
Ответ - никак.
|
|||
2
NuclearWinter
24.05.17
✎
14:55
|
>Таким образом пессимистическая блокировка гарантирует, что пользователь, начав изменять данные объекта, сможет записать эти изменения в информационную базу.
В то же время, разработчик имеет возможность задействовать рассматриваемый механизм, используя средства встроенного языка. Для того, чтобы установить пессимистическую блокировку объекта, можно использовать метод объекта Заблокировать(). |
|||
3
Buster007
24.05.17
✎
14:57
|
ЗаблокироватьДанныеДляРедактирования
|
|||
4
Джинн
24.05.17
✎
14:57
|
(2) Тогда обработка не отработает. Либо одно, либо другое. Но не оба вместе.
|
|||
5
Buster007
24.05.17
✎
14:57
|
в форме и в обработке вызываешь перед изменением
|
|||
6
evorle145
24.05.17
✎
15:00
|
(5) Понял! уже пробую. То есть я в обработке пишу Если Попытка
НовДокумент.Заблокировать(); Исключение Предупреждение(НСтр("ru = 'Невозможно заблокировать документ.';" + " en = 'Can't lock the document.'")); КонецПопытки; |
|||
7
evorle145
24.05.17
✎
15:23
|
(2) спс! Помогло. Все как надо теперь)
|
|||
8
Джинн
24.05.17
✎
15:29
|
(7) Дык обработка же не запишет этот документ.
|
|||
9
Ёпрст
24.05.17
✎
15:31
|
(8) запишет, ибо документ не заблокирован.
|
|||
10
Ёпрст
24.05.17
✎
15:31
|
он же при открытии дока его сам не заблокировал в коде..
|
|||
11
Лефмихалыч
24.05.17
✎
15:33
|
(6) у тебя ни чего не изменилось
|
|||
12
g00d
24.05.17
✎
15:34
|
можно в интерактивном режиме отслеживать изменения версии документа и при изменении обьекта другим пользователем - выполнять прочитать. Можно даже повесить некую форму показывающую изменения и дать возможность пользователю склеить изменения выбрав нужные. Не сложная задача.
|
|||
13
Ёпрст
24.05.17
✎
15:43
|
(11) да ладно, пусть побудет в неведении :))
озарение оно потом, как правило, приходит |
|||
14
evorle145
08.06.17
✎
09:48
|
(11) всмысле?
Тот пользователь, который записывает документ через обработку получает отказ и ждет когда освободят документ. Или как то лучше можно сделать? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |