Имя: Пароль:
1C
1С v8
Установить блокировку на запись объекта данных
0 AlteZ
 
25.06.14
16:25
Пока ревизор редактируют документ ИнвентаризацияТоваров через его форму некто запускает обмен, обмен изменяет объект и сохранение его ревизором становится невозможным.
Поставил костыль в виде выгрузки-загрузки тч.
А можно ли заблокировать документ с открытой формой для редактирования?
1 AlteZ
 
25.06.14
16:27
2 Жан Пердежон
 
25.06.14
16:29
(1) жаль только, что тебе это никак не поможет)
3 AlteZ
 
25.06.14
16:29
обменданными.загрузка=истина помешает?
4 SUA
 
25.06.14
16:43
не надо редактировать 1 документ в двух базах
5 YF
 
25.06.14
16:44
(0) Пусть ревизор начнет его редактирование, тогда док должен заблокироваться
6 SUA
 
25.06.14
16:44
а то после сохранения второй ревизор от которого пришел обмен удивится сильно
7 AlteZ
 
25.06.14
16:47
(5) обмен проходит

на тек. момент вижу решение в хранении данных в буферной обработке, дабы переоткрыв форму документа можно было вернуть актуальные данные на место неактуальных, пришедших с обменом.

универсального способа заблокировать объект не нашел

(6) ревизор один, остальные-бухи, они ему по тел. советы дают из офиса документы блокируют)
8 bolobol
 
25.06.14
16:54
+(4) Не надо редактировать 1 документ в двух базах.
+(2) Костыли не помогут. Будет ругаться другой исправляющий.
(7) Универсальный способ - наложить блокировку. Но как только ревизор снимет блокировку - данные его тут же перезапишутся от другого редактирующего, а у другого перезапишутся данными текущего, пойдёт циклический обмен до тех пор, пока не останется одна случайная версия.
+(4) Не надо редактировать 1 документ в двух базах!
(0) Обдумайте написанное.
9 bolobol
 
25.06.14
16:58
+(8)
(6) >> "ревизор один, остальные-бухи"
- чудес не бывает. Только не в 1С. Я бы не поверил. Хоть оператором назови, но кто-то меняет данные, раз они приходят с обменом. Достаточно отключить возможность внесения изменений на всех сторонах, кроме работающей с документом - вот тебе и костыль. Введи константу и проверяй её перед записью, после проверки на режим обмена = истина
Программист всегда исправляет последнюю ошибку.