Имя: Пароль:
1C
1С v8
Исключение метаданных определенного типа при синхронизации по РЗ
0 Kurbash
 
05.06.15
08:45
Всем привет. Настроены сценарии синхронизации с двумя конфигурациями.

Требуется исключить из обмена справочник Номенклатура.

Захожу в РЗ в Конфигураторе, нахожу РЗ "СинхронизацияДанных".
Открываю модуль обработчика:

    // Вызов ПриНачалеВыполненияРегламентногоЗадания не используется,
    // т.к. необходимые действия выполняются в частном порядке.
    
    ПроверитьВозможностьВыполненияОбменов();
    
    ПроверитьИспользованиеОбменаДанными();
    
    Если Не ЗначениеЗаполнено(КодСценарияОбмена) Тогда
        ВызватьИсключение НСтр("ru = 'Не задан сценарий обмена данными.'");
    КонецЕсли;
    
    ТекстЗапроса = "
    |ВЫБРАТЬ
    |    СценарииОбменовДанными.Ссылка КАК Ссылка
    |ИЗ
    |    Справочник.СценарииОбменовДанными КАК СценарииОбменовДанными
    |ГДЕ
    |         СценарииОбменовДанными.Код = &Код
    |    И НЕ СценарииОбменовДанными.ПометкаУдаления
    |";
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Код", КодСценарияОбмена);
    Запрос.Текст = ТекстЗапроса;
    
    Выборка = Запрос.Выполнить().Выбрать();
    
    Если Выборка.Следующий() Тогда
        ВыполнитьОбменДаннымиПоСценариюОбменаДанными(Ложь, Выборка.Ссылка);
    Иначе
        СтрокаСообщения = НСтр("ru = 'Сценарий обмена данными с кодом %1 не найден.'");
        СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, КодСценарияОбмена);
        ВызватьИсключение СтрокаСообщения;
    КонецЕсли;
    
КонецПроцедуры

наваял код процедуры для снятия регистрации с узла:

ЗаписьXML = Новый ЗаписьXML();
ЗаписьXML.УстановитьСтроку();
УзелБП =ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоКоду("БП");
ЗапСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗапСообщения.НачатьЗапись(ЗаписьXML, УзелБП);
Выборка = ПланыОбмена.ВыбратьИзменения(УзелБП, ЗапСообщения.НомерСообщения);
ПланыОбмена.УдалитьРегистрациюИзменений(УзелБП, Метаданные.Справочники.Номенклатура);
ЗапСообщения.ПрерватьЗапись();
Стр = ЗаписьXML.Закрыть();


не пойму када его вставлять- то ли в начало процедуры то ли в


обход выборки по строчка сценариев  Если Выборка.Следующий() Тогда

и так и так  уже вставлял синхронизация не проходит. Где ошибся?
1 Kurbash
 
05.06.15
08:46
+синхронизация настроена через универсаный формат
2 Kurbash
 
05.06.15
09:06
апну