Блокировка данных обязательна на экзамене 1с-специалист.
Блокировка – это информация о том, что данный ресурс захвачен «кем-то», для выполнения какого-то действия.
Создавать Блокировки будем по схеме. Блокировка данных в 1с в экзаменационных билетах используется в Оперативном и Бухгалтерском учете.

В системе 1С:Предприятие 8 существуют два механизма, при работе которых используется термин блокировка.

Объектные и транзакционные блокировки
Все данные информационной базы хранятся в некоторой СУБД. А любая СУБД должна обеспечивать целостность и непротиворечивость хранимых данных. Для согласованного изменения данных в СУБД используется механизм транзакций, а для обеспечения конкурентного доступа к данным – механизм транзакционных блокировок.
Механизм объектных блокировок
Механизм объектных блокировок как раз и позволяет осуществлять конкурентный доступ пользователей к данным 1С:Предприятия в терминах объектов информационной базы. Как правило в большинстве случаев это связано с интерактивной работой пользователей в формах: редактирование существующих объектов, удаление, создание новых и др.
Блокировка данных при проведении документа “Расходная накладная”
Во-первых создадим объект Блокировка.
БлокировкаДанных = Новый БлокировкаДанных;
Во-вторых добавляем объект Блокировок. Для задач экзамена 1С:Специалист это Регистр Накопления “ОстаткиНоменклатуры”
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
В-третьих установим Реквизит документа “Расходная накладная”, для которого будем использовать Блокировку.
ЭлементБлокировки.УстановитьЗначение("Партия", Партия);
В четвертых в “Источник данных” поместим табличную часть документа “Расходная накладная”.
ЭлементБлокировки.ИсточникДанных = СписокНоментклатуры;
На пятом шаге укажем какие поля, мы будем использовать из табличной части документа. Практические для всех задач экзамена 1С:Специалист нужно использовать параметр “Номенклатура”. Если в табличной части указывается еще какое-то Измерение Регистра, то его тоже добавляем в источники. Например может быть склад.
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
Полный код Блокировки указан ниже:
// Блокировка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
ЭлементБлокировки.УстановитьЗначение("Партия", Партия);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = СписокНоментклатуры;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
Блокировка.Заблокировать();