Отмена синхронизации по условию: различия между версиями
Danamond (обсуждение | вклад) (Новая страница: «Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С т...») |
Danamond (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов. | + | Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов.<br> |
− | Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг". | + | Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг".<br> |
− | Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом. | + | Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом. Далее нужно создать подписку на событие "ПриЗаписи" с указанием нужного объекта метаданных, и в процедуре подписки на событие вставить следующий код: |
Если Источник.НеПереноситьВБухгалтерию Тогда | Если Источник.НеПереноситьВБухгалтерию Тогда | ||
Строка 10: | Строка 10: | ||
КонецЕсли; | КонецЕсли; | ||
− | Готово! Естественно условие может быть любым. | + | Готово!<br> |
+ | Естественно, условие может быть любым.<br> | ||
Данный код снимет с регистрации нужный объект и очистит таблицу регистрации. | Данный код снимет с регистрации нужный объект и очистит таблицу регистрации. |
Текущая версия на 12:13, 12 октября 2021
Периодически возникает ситуация, когда при синхронизации данных между двумя базами 1С требуется НЕ переносить часть однотипных документов.
Например: синхронизация между конфигурацией "Управление торговлей" и "Бухгалтерия", требуется переносить в бухгалтерию только часть документов "Реализация товаров и услуг".
Первое что нужно сделать, это каким либо образом определить признак, какой документ должен выгружаться, а какой нет. Для простоты примем, что в документе добавлен реквизит "НеПереноситьВБухгалтерию" с булевским типом. Далее нужно создать подписку на событие "ПриЗаписи" с указанием нужного объекта метаданных, и в процедуре подписки на событие вставить следующий код:
Если Источник.НеПереноситьВБухгалтерию Тогда Для каждого УзелОбмена Из Источник.ОбменДанными.Получатели Цикл ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, Источник); КонецЦикла; Источник.ОбменДанными.Получатели.Очистить(); КонецЕсли;
Готово!
Естественно, условие может быть любым.
Данный код снимет с регистрации нужный объект и очистит таблицу регистрации.