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