Делаю движения:
Движение = Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Склад = Склад;
Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
Движение.Количество = ТекСтрокаТовары.Количество;
Движения.ОстаткиТоваров.БлокироватьДляИзменения = Истина;
Движения.ОстаткиТоваров.Записывать = Истина;
Движения.ОстаткиТоваров.Записать(Истина);
Ставлю точку останова после Записать(истина). То есть транзакция еще не закончилась и регистр заблокирован. Под другим сеансом запускаю запрос по остаткам на ОстаткиТоваров в ТРАНЗАКЦИИ по ВСЕМ измерениям и периодам. Блокировки нет.
НачатьТранзакцию(РежимУправленияБлокировкойДанных.Управляемый);
Запрос = Новый Запрос(
"ВЫБРАТЬ
| ОстаткиТоваровОстатки.Склад,
| ОстаткиТоваровОстатки.Номенклатура,
| ОстаткиТоваровОстатки.КоличествоОстаток
|ИЗ
| РегистрНакопления.ОстаткиТоваров.Остатки КАК ОстаткиТоваровОстатки"
);
Запрос.Выполнить();
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "work!";
Сообщение.Сообщить();
ЗафиксироватьТранзакцию();
Блокировка также не происходит, если перепровожу другой документ такого же типа с такими же значениями полей наборов данных движений.
Так и должно быть? СУБД MSSQL 2005. 1c 8.3