nodalt,
sv_mikh,
Ура!!! Я, кажется, нашёл.
http://partners.v8.1c.ru/forum/thread.jsp?id=724841#739246 В примере, прилагаемом к новой книге по 8.2, описывается новая конструкция на стр. 320:
Движения.ТоварныеЗапасы.БлокироватьДляИзменения = Истина;
Аналогично ли это полной блокировке пространства имен блокировки "РегистрНакопления.ТоварныеЗапасы"? Если нет, то в чем отличие?
Ответить«« Действия
Re: Нужно пояснение по свойству набора записей БлокироватьДляИзменения 30.09.2009 22:02 Нуралиев Сергей (1С, Москва)
725084
Это свойство обеспечивает блокировку в пространстве регистра по тем комбинациям измерений, которые записываются в наборе записей.
Смысл в том, что если заблокировать нужно именно те комбинации, по которым записываются записи, то можно не использовать объект БлокировкаДанных, а использовать это свойство. Это существенно сокращает код (вместо формирования состава блокировки устанавливаем одно свойство) и уменьшает количество действий платформы.
Это применяется в методике, когда проверка остатков выполняется после записи движений. Тогда мы сначала записываем движения с установкой БлокироватьДляИзменения, а потом проверяем остатки запросом.
Можно посмотреть в демо-конфигурации в документе РасходТовара.
========
Re: Нужно пояснение по свойству набора записей БлокироватьДляИзменения 12.11.2009 21:35 Нуралиев Сергей (1С, Москва)
2,0 739246
Логика такая (случая для управляемого режима блокировок и включенного
в метаданных и в ИБ разделителях итогов):
Если свойство БлокироватьДляИзменения Ложь, то два набора с одними комбинациями измерениями могут записываться в двух параллельных транзакциях (целостность хранимых итогов обеспечивается за счет использования разделителя). Так же как и в 8.1
Если свойство БлокироватьДляИзменения Истина, то два таких набора не записываются параллельно и установка блокировки в языке в другой транзакции по этим же комбинациям тоже не сможет быть выполнена.
То есть:
- разделитель итогов обеспечивает отсутствие необходимости
блокировки при записи наборов
- а свойство БлокироватьДляИзменения заменяет явный вызов блокировки из языка,
если заблокировать нужно именно все комбинации, которые есть
в наборе записей
Добавлено (19.04.2012, 11:57)
---------------------------------------------
то есть имхо не нужно писать
...БлокироватьДляИзменения = Истина;
перед записью пустого набора
Добавлено (19.04.2012, 12:00)
---------------------------------------------
Несколько ссылок на kb.1c.ru:
Типичные причины неоптимальной работы запросов и методы оптимизации:
http://kb.1c.ru/articleView.jsp?id=44#vtable_join Типичные причины избыточных блокировок и методы оптимизации:
http://kb.1c.ru/articleView.jsp?id=45 Блокировки данных в 1С:Предприятии 8
Автор: Белоусов Павел (Альтер Лого, Москва)
http://kb.1c.ru/articleView.jsp?id=30