По условию нужно было сделать так, чтобы данные выгружались из "Управление торговлей" в "Бухгалтерия предприятия". В обратном направлении ничего передаваться не должно.

При настройке обмена по условию возникли проблемы:

  • Если в БП делаются изменения в данных, а затем эти же данные выгружаются из УТ, то все изменения в БП перезаписываются без предупреждения.
  • Подсистема "Конфликты", которая должна показывать коллизии – не работает. Она всегда пустая, как будто коллизий нет.

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

В итоге было решено настроить двухсторонний обмен, чтобы в плане обмена происходила регистрация объектов к выгрузке, но при этом сделать так, чтобы ничего из БП не выгружалось.

В конфигурацию внесены следующие изменения:

Общий модуль ОбменДаннымиXDTOСервер
Процедура ПроизвестиВыгрузкуДанных

Закомментированы строки:

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

Этот код отвечает за выгрузку данных из БП.

Общий модуль МенеджерОбменаЧерезУниверсальныйФормат
Процедура ПередКонвертацией

В самом начале процедуры добавлены строки:

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

Этот код регистрирует в БП все данные к выгрузке.
"ER" – префикс базы, с которой производится обмен данными.

Таким образом, из БП ничего не выгрузится, а при загрузке данных из УТ система разрешения коллизий отработает нормально.

Комментарии

  • Гринёв 20.12.2017 09:45
    Только надо иметь ввиду, что СтандартнаяОбработка = Ложь в процедуре ПриКомпоновкеРезультата отключает стандартную расшифровку полей отчёта.

    Подробнее...

     
  • proekt 06.12.2017 10:03
    Привет. Обработка проведения РасходнойНакладной запрос от проведения ПланаПродаж необходимо подправить запрос для Расходной. Такой вопрос при проведении Расходной накладной почему сразу в запросе не ...

    Подробнее...

     
  • Ivan 01.11.2017 14:14
    Неверно. Так мы узнаем DNS сервер по умолчанию, но он не обязательно совпадает с контроллером домена. Нужно так > set logon В ответе получим имя сервера, на котором мы залогинились.

    Подробнее...