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