Операция не может быть выполнена из-за несоответствия версии или отсутствия запи
☑
0
bolobol
28.11.14
✎
16:02
Приветствую!
Открываю форму узла обмена, пока настраиваю то-сё - нажимаю сохранить:
Операция не может быть выполнена из-за несоответствия версии или отсутствия записи базы данных (возможно, запись была изменена или удалена)!
Как заблокировать узел от изменения фоновым заданием пока я в форме?
Толстые формы.
1
Maxus43
28.11.14
✎
16:04
а с какого бодуна фоновое задание меняет узел вобще?
2
bolobol
28.11.14
✎
16:04
Ахритектура такая...((
3
Maxus43
28.11.14
✎
16:04
З.ы. в при открытии
СправочникОбъект.<Имя справочника> (CatalogObject.<Имя справочника>)
Заблокировать (Lock)
Синтаксис:
Заблокировать()
Описание:
Выполняет блокировку объекта от изменения другими режимами или пользователями
4
Maxus43
28.11.14
✎
16:05
(2) ужаснах
5
bolobol
28.11.14
✎
16:06
(3) Не помогает.
В параллельном сеансе - да, форма не открывается, а фоновое задание отработав - спокойно меняет узел и я не могу сохранить форму.
6
Maxus43
28.11.14
✎
16:09
(5) лучше меняйте архитектуру... Что это за ересь когда каждые n-сек происходит перезапись узла обмена?
7
floody
28.11.14
✎
16:10
Объектная блокировка же не запрещает программно менять объект. Ставьте управляемую. Или отключайте задание на время редактирования.
8
Maxus43
28.11.14
✎
16:10
держи мега изврат, хз поможет ли
Кнопка ОткрытьНаверняка()
НачатьТранзакцию()
"Выбрать ДЛЯ ИЗМЕНЕНИЯ
Ссылка Из ПланыОбмена.Траляля
Где Ссылка = &Нужная"
Форма = Ссылка.ПолучитьФорму().ОткрытьМодально();
ЗафиксироватьТранзакцию();
9
bolobol
28.11.14
✎
16:15
(7) (8) О, Пасиба!! ))
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший