Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Обмен данными через обработку Универсальный обмен данными в формате xml / Номер сообщения

Обмен данными через обработку Универсальный обмен данными в формате xml / Номер сообщения
Я
   KazSever
 
11.09.20 - 16:36
Всем добрый вечер.
Ситуация такая: нужно из базы УНФ в базу БК 3.0 передать контактную информацию контрагентов.
Т.к. типовые правила этого не делают, а КД3 еще не освоил решено сделать план обмена с авторегистрацией для спр.Коснтрагенты и выгрузку с помощью обработки универсальный обмен xml, в которую грузятся программно правила обмена (КД2) и выгружаются в файл.
Вот сам текст выгрузки:
&НаСервере
Процедура ВыгрузитьНаСервере()
    
    УзелПланаОбмена = ПланыОбмена.SP_Контрагенты.НайтиПоКоду("G");

    ФайлПравилОбмена = "C:\1С Базы\УНФ обмен\ПравилаОбменаДанными_Контрагенты.xml";
    ИмяФайлаОбмена   = "C:\1С Базы\УНФ обмен\УНФ 20200911\ФайлОбмена.xml";
    
    Обработка = Обработки.УниверсальныйОбменДаннымиXML.Создать();
    
    Обработка.РежимОбмена="Выгрузка";
    Обработка.ИмяФайлаПравилОбмена=ФайлПравилОбмена;
    
    Обработка.ЗагружатьДанныеВРежимеОбмена=Истина;
    Обработка.ЗаписыватьРегистрыНаборамиЗаписей=Истина;
    Обработка.ЗапоминатьЗагруженныеОбъекты=Истина;
    Обработка.ИспользоватьОтборПоДатеДляВсехОбъектов=Ложь;
    
    //Обработка.ДатаНачала=ДатаНачалаВыгрузки;
    //Обработка.ДатаОкончания=ДатаКонцаВыгрузки;
    
    Обработка.ВыгружатьТолькоРазрешенные=Истина;
    
    Обработка.ИмяФайлаОбмена = ИмяФайлаОбмена;
    
    Обработка.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки = 0; // 0 - не снимать регистрацию,
                                                                            // 1 - снимать регистрацию
    
    Обработка.ЗагрузитьПравилаОбмена();

    
    Для Каждого Стр Из Обработка.ТаблицаПравилВыгрузки.Строки Цикл
        Стр.Включить=1;
        Для Каждого Стр1 Из Стр.Строки Цикл
            Стр1.Включить=1;
            Стр1.СсылкаНаУзелОбмена = УзелПланаОбмена;
        КонецЦикла;
    КонецЦикла;
    
    Обработка.ВыполнитьВыгрузку();    
КонецПроцедуры

Формируемый файл выгружает нужные данные - контрагент, контакты (все как положено), загрузка идет тоже правильно.
НО формируемый файл формируется как просто выгрузка данных, а не сообщение обмена, т.е. без номеров сообщений и всего что там надо для обмена, что в свою очередь усложняет регистрацию и удаление регистрации объектов для обмена данными.

Подскажите пожалуйста как решить данный вопрос, ибо мои познания в этой области уже закончились, заранее благодарен! ))
   Ёпрст
 
1 - 11.09.20 - 16:46
(0)
выкинуть универсальныйобмен данными вестимо, пользоваться обменданнымиxml из конфы (хз, есть он там в унф ? )
   d4rkmesa
 
2 - 11.09.20 - 16:46
(0) Универсальный обмен вроде как просто изменения читает, но не реализует полную инфраструктуру сообщений. Хотя, можно извратиться, см. старую тему: v8: Выгрузка через ПланОбмена
   Ёпрст
 
3 - 11.09.20 - 16:46
и..в самом предприятии настроить выгрузку по правилам обмена для твоего плана обмена с регистрацией нужных элементов, усё
   KazSever
 
4 - 11.09.20 - 16:47
(3) там все правила на КД3, а мои КД2
   KazSever
 
5 - 11.09.20 - 16:51
(2) Спасибо, почитаю...
   KazSever
 
6 - 11.09.20 - 16:57
(2) В общем есть пару идей как "на костылях" организовать, буду пробовать. Спасибо!

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.