Отмена синхронизации по условию: различия между версиями

Материал из system.c
Перейти к навигации Перейти к поиску
(Новая страница: «Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С т...»)
 
Строка 1: Строка 1:
 
Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов.
 
Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов.
 
Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг".
 
Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг".
Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом.
+
Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом. Далее нужно создать подписку на событие "ПриЗаписи" с указанием нужного объекта метаданных, и в процедуре подписки на событие вставить следующий код:
  
 
   Если Источник.НеПереноситьВБухгалтерию Тогда
 
   Если Источник.НеПереноситьВБухгалтерию Тогда

Версия 12:12, 12 октября 2021

Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов. Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг". Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом. Далее нужно создать подписку на событие "ПриЗаписи" с указанием нужного объекта метаданных, и в процедуре подписки на событие вставить следующий код:

 Если Источник.НеПереноситьВБухгалтерию Тогда
   Для каждого УзелОбмена Из Источник.ОбменДанными.Получатели Цикл
     ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, Источник); 
   КонецЦикла;
   Источник.ОбменДанными.Получатели.Очистить();
 КонецЕсли;

Готово! Естественно условие может быть любым. Данный код снимет с регистрации нужный объект и очистит таблицу регистрации.