Для того чтобы не произошла автоматическая регистрация изменений данных, необходимо перед вызовом процедуры записи данных (объекта, набора записей или менеджера значения константы) установить свойство АвтоЗаполнение коллекции узлов-приемников в значение Ложь. Это приведет к тому, что список узлов, для которых должно быть зарегистрировано изменение данных, автоматически заполнен не будет. Если в процессе записи коллекция узлов-примеников останется пустой, то регистрации изменения данных не произойдет.
Например: в одном из узлов распределенной информационной базы, созданной на основе демонстрационной конфигурации "Обмен данными", необходимо очистить все наборы записей регистра накопления "УчетНомеклатуры", для которых в данной информационной базе отсутствует регистратор. Однако регистрировать подобные изменения нельзя, т.к. иначе пустые наборы записей будут переданы в остальные узлы распределенной информационной базы. Теоретически, такое действие может потребоваться при изменении схемы миграции данных между узлами распределенной информационной базы. Произведем описанные выше действия над наборами записей регистраторов, отсутствующих в данной информационной базе:
Пока ОтсутствующиеРегистраторы.Следующий() Цикл
НаборЗаписей = РегистрыНакопления.УчетНоменклатуры.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Значение = ОтсутствующиеРегистраторы.Регистратор;
НаборЗаписей.Отбор.Регистратор.Использование = Истина;
НаборЗаписей.ОбменДанными.Получатели.АвтоЗаполнение = Ложь;
НаборЗаписей.Записать();
КонецЦикла;
Где ОтсутствующиеРегистраторы - выборка результата запроса, отбирающего все ссылки на регистраторов, отсутствующих в данном узле информационной базы.
ВАЖНО!
Подобный прием не окажет влияние на процесс регистрации изменений данных в том случае, когда обработчики записи данных содержат код, заполняющий коллекцию узлов-приемников.