|
Как узнать из обработки открыт ли документ? | ☑ | ||
---|---|---|---|---|
0
ferry
09.09.13
✎
10:45
|
Не знаю как правильно спросить, но задача следующая: есть обработка, которая делает изменения в документах. Надо узнать при старте обработки открыт ли где то обрабатываемый документ. Как это сделать?
|
|||
1
Rie
09.09.13
✎
10:47
|
(0) Спросить насчёт блокировок? Не?
|
|||
2
cw014
09.09.13
✎
10:47
|
Заблокирован() ???
|
|||
3
Fish
09.09.13
✎
10:47
|
(1) Если просто открыта форма документа, но не внесены изменения, то имхо не поможет.
|
|||
4
ferry
09.09.13
✎
10:49
|
так дело в том что он не заблокирован если его просто открыли и ничего там не поменяли. а вот потом начинаются проблемы: изменения то обработка вносит, а у пользователей, у которых документ открыт на просмотр база вешается.
|
|||
5
ferry
09.09.13
✎
10:49
|
(3) ага
|
|||
6
cw014
09.09.13
✎
10:50
|
Вешается??? Просто возникает текст, дескать было изменено, пока вы втыкали в форму... Закрываешь, открываешь и дальше работай
|
|||
7
ferry
09.09.13
✎
10:53
|
(6) вот именно вешается. на форме есть событие приактивациистроки. вот оно начинает работать в цикле и вылетает при достижении максимально возможного количества таких обработок этого события.
|
|||
8
Fish
09.09.13
✎
10:55
|
(7) А вот вешаться не должно.
|
|||
9
Maxus43
09.09.13
✎
10:55
|
(7) ну очевидно, что код кривой.
Есть способ дебильный - при открытии формы блокировать документ, в итоге при попытке записать из обработки будет исключение. Но реально не стоит |
|||
10
Maxus43
09.09.13
✎
10:57
|
В обработке сделать Оповестить, в доке в ОбработчикеОповещения - перечитать объект, правда если там вносят изменения - они волшебным образом исчезнут для пользователя
|
|||
11
ferry
09.09.13
✎
10:59
|
(10) да, видимо так и придется сделать. потому что вешается именно строчка реквизитформывзначение("объект") в документе
|
|||
12
palpetrovich
09.09.13
✎
11:09
|
мо попытаться удалить в транзакции+попытке? если незаблокирован - транзакцию отменить
|
|||
13
Maxus43
09.09.13
✎
11:09
|
(12) дак он и не заблокирован, просто форма открыта, не ведёт к блокировке
|
|||
14
palpetrovich
09.09.13
✎
11:11
|
(13) если он у кого-то открыт - пометку удаления поставить не удастся - стало-быть вопрос из (0) решен :)
|
|||
15
palpetrovich
09.09.13
✎
11:12
|
хотя - насчет транзакции - эт я погарячился, она там вообще не нужна
|
|||
16
Maxus43
09.09.13
✎
11:16
|
(14) нет, с чего бы?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |