Автоматический обмен между 2 разными базами через обработку "Универсальный обмен данными XML"

01.05.23

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Пример реализации автоматического обмена между УТ и БП через обработку "Универсальный обмен данными XML".

Скачать файлы

Наименование Файл Версия Размер
Обработка выгрузки из УТ
.epf 10,56Kb
0
.epf 10,56Kb Скачать
Обработка загрузки в БП
.epf 7,67Kb
0
.epf 7,67Kb Скачать
Архив содержит обработку выгрузки и загрузки.
.zip 13,32Kb
3
.zip 13,32Kb 3 Скачать

Данная статья рассчитана на:

1) минимальные навыки работы с КД2, т.к. необходимо будет дорабатывать правила обмена, если правил нет то их необходимо будет создать самостоятельно.

2) Обработки выгрузки/загрузки служат как пример, код которого можно скопировать и немного доработав под свои нужды  автоматического запуска.

 

Привет всем. Решил поделиться реальным примером автоматизации обмена через правила КД2.

Задача: Сделать автоматический обмен из УТ в БП(Подобный алгоритм подойдет и для обратного обмена из БП в УТ).

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

 

Приступим:

Заходим в конфигурацию в УТ и  добавим новый план обмена, заполним состав документами, которые будут участвовать в обмене

 

 

Для удобства создаем форму списка и добавляем кнопку "НастройкиОбменов" (можно ее скопировать с других обменов, как сделал я. Но если не хотите, то добавляйте просто кнопку. Картинка кнопки называется "МониторСостоянияОбмена"). 

У кнопки создаем процедуру с кодом:

 

	Если ЭлементыФормы.ПланОбменаСписок.ТекущиеДанные = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	ПроцедурыОбменаДаннымиКлиент.ПоказатьЗарегистрированныеИзмененияДляУзла(ЭлементыФормы.ПланОбменаСписок.ТекущиеДанные.Ссылка, ЭтаФорма);


Далее заходим в режим предприятие в УТ и добавляем свой узел в план обмена.

 

 

Обязательно вручную назначьте у своего и узла по умолчанию код. Если у узла по умолчанию не назначить код, то потом при обращении к своему узлу могут возникнуть ошибки (с чем связано подобное поведение, не разбирался).

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

 

Правила:

Открываем наши правила в КД2(если правил нет, то их надо создать. Как создать правила обмена между базами в этой статье не затрагивается, предполагается что они уже присутствуют) и добавляем в нашу конвертацию параметр. Он будет служить нам для возможности снятия с регистрации документа в УТ.

 

 

Если нам по каким-то условиям надо документ снять с регистрации в УТ, то перед выгрузкой делаем проверку, ставим Отказ и удаляем регистрацию объекта в нашей базе (в моем случае в УТ).

 

 

В правила конвертации добавляем параметр, в который будем записывать наши загруженные документы, для последующего удаления их с регистрации в базе (в моем случае УТ).

 

 

В ПКО добавляем подобный код. Здесь если все прошло успешно, то мы добавляем этот документ на снятие с регистрации (в моем случае в УТ).

 

 

После загрузки мы будем снимать записанные документы с регистрации (в моем случае в УТ).

 

 

Добавляем новый "Алгоритм", который будем выполнять. Код можно вставить и после загрузки, здесь уже на ваше усмотрение.

 

 
 Код алгоритма "СнятьРегистрациюИзмененийВУТ".

 

Предварительные действия перед обменом описал.

Обработку загрузки и выгрузки добавил ниже.

Обработка выгрузки

См. также

SALE! 20%

Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки

Обмен между базами 1C Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) в продаже с 2015 года, постоянно работаем над их развитием | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

45650 36520 руб.

04.08.2015    159733    364    267    

345

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 22572 руб.

12.06.2017    134979    721    291    

388

SALE! 20%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | В продаже с 2019г. | Воспользовались более 176 предприятий! | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой, обращайтесь!

34650 27720 руб.

15.04.2019    68448    180    138    

111

SALE! 20%

Перенос данных из ERP 2 / КА 2 в ЗУП 3. Переносятся остатки, документы и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Воспользовались более 79 предприятий! | Предлагаем приобрести готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | В продаже с 2020г. | Оперативно обновляем правила до актуальных релизов 1С | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

43450 34760 руб.

03.12.2020    34181    80    58    

78

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.16.x).

28000 25200 руб.

23.07.2020    46322    196    64    

158

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9217    9    8    

10

SALE! 10%

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.223.x) и БП 3.0 (3.0.149.x). Правила подходят для версии ПРОФ и КОРП.

28000 25200 руб.

15.12.2021    20266    132    38    

90

SALE! 10%

Перенос данных из БП 3.0 в УТ 11 / КА 2 / ERP 2. Переносятся начальные остатки, документы и справочники

Обмен между базами 1C Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

В продаже с 2014г. | Воспользовались более 122 предприятий! | Перенос данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных)

50722 45650 руб.

31.10.2014    231441    124    327    

296
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Pro-tone 163 03.05.23 11:54 Сейчас в теме
Ну не предназначен кукурузник для ведения боевых действий. Конечно, можно на него посадить двух автоматчиков, но результат работы такого "истребителя" будет не сильно хорош.
Обмен по СОМ к тому же регулярный это самое плохое что можно придумать. Я уже не говорю что версии платформ могут у баз быть разными (а часто это именно так), в этом случае нужно долго танцевать с бубном и регистрировать 2 версии comctrl.dll в реестре Windows. Сама обработка универсального обмена в режиме СОМ работает не совсем корректно, заваливаясь по ошибке там где файловый обмен без проблем проходит. Плюс к этому не видно номеров сообщений, нет отработки события "удаление объекта". В идеале должно быть логирование при каждой итерации обмена что было выгружено, а ещё более лучшим решением будет автоматическая отправка на почту письма если обмен завершился с ошибкой с текстом ошибки. Параметры подключения в вашем случае захардкоживаются в правила обмена что тоже остановит обмен если имя сервера решат изменить (если точнее, имя кластера серверов в консоли администрирования), а такое хоть и нечасто, но бывает. Файловый обмен лишён этих недостатков, ему главное чтоб была доступна сетевая папка. Так что полноценным автоматическим обменом назвать это нельзя. Но как временное решение для одностороннего обмена это имеет право на жизнь.
В числе моих поделок есть подсистема обмена данными по правилам КД2 которая приносит в любую конфигурацию возможность регулярного обмена с полным функционалом независимо от версии платформ и толщины клиента.
_Ramzes; dsdred; cheshirshik; viktor3d; +4 Ответить
2. kvaleksandr 22 04.05.23 08:12 Сейчас в теме
(1) Спасибо за комментарий. То что вы описали не требовалось в рамках моей задачи. Я поделился тем как автоматизировал обмен и это работает без каких-либо проблем и заморочек.

Можно придумать кучу минусов подобного решения в текущем состоянии как оно есть сейчас, но факт остается фактом. Оно работает и у меня проблем с обменом не наблюдается.

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

COM как вариант можно заменить на:
1) веб-сервис
2) запись в файлы
3. yasaniok 06.05.23 08:34 Сейчас в теме
(2)для тех, кто не знает с чего начать и ни разу такого не делал, статья полный 0. Вообще не понятно ничего.
На каком скрине БП, на каком УТ, где КД, скрины обрезаны, всё заблюрено. Откуда взялись "наши правила", которые нужно открыть в КД. Новички не знают, что такое КД в принципе.
Сами перечитайте статью.
4. kvaleksandr 22 06.05.23 09:36 Сейчас в теме
(3) Спасибо за ваше замечание.
6. cheshirshik 63 07.05.23 17:17 Сейчас в теме
(2)

Согласен с замечанием. Ещё добавлю, что сом будет работать только на Винде. Если сервер переедет на Линукс, то все. Ещё сом достаточно медленная технология. Анахронизм. Удивительно, что до сих пор на инфостате полно статей по использованию.
7. acces969 343 10.05.23 08:50 Сейчас в теме
(6) COM медленный? Не замечал такого, сколько работал в своей консоли запросов (https://infostart.ru/public/1640927/). Может быть, медленно из-за того, что COM соединение создавалось по несколько раз за вызов во время выполнения некоторой работы?
10. cheshirshik 63 10.05.23 16:20 Сейчас в теме
(7) Да. Когда появляется некий посредник между базой и клиентом/сервером, то имхо работа с этой технологией становится медленной. Вы скорее всего не переносили большие объемы данных. Поэтому у вас СОМ "нормально" работает. Но... я бы эту технологию сегодня использовать бы не стал по причинам описанным выше.
11. acces969 343 11.05.23 06:22 Сейчас в теме
(10) Какой же способ тогда быстрый? Внешние источники данных? Запись и чтение в промежуточных базах данных MySql?
12. cheshirshik 63 11.05.23 11:29 Сейчас в теме
(11)

HTTP сервисы, КД 2.0, КД 3.0 (при грамотном подходе к созданию правил обмена).
13. acces969 343 11.05.23 14:02 Сейчас в теме
(12) Не хочу спорить, но теоретически должно быть иначе. COM-соединение, это сеанс во внешней БД. Исполнение платформой команд чтения-записи, отправленных по COM-соединению, должно производиться быстрее, чем выполнение этих же операций через интерфейсы http и enterprise data и тем более - через правила обмена на конвертации данных 2.0. Надо будет провести расследование и написать статью с разбором и замерами, интересная тема.
14. cheshirshik 63 11.05.23 16:05 Сейчас в теме
(13)

Я бы не стал тратить время. Вот честно. СОМ - это устаревшая технология. А ее киллер финча - это платформа на Винде. Все. Дальше уже особо-то обсуждать будет нечего. Ваше решение зависит от платформы, а писать надо код так, чтобы работал везде, а не только на платных ОС от Майкрософт.
acces969; +1 Ответить
5. cheshirshik 63 07.05.23 17:11 Сейчас в теме
С боевым крещением. Я про опыт с кд 2.0.
8. kvaleksandr 22 10.05.23 12:37 Сейчас в теме
(5) Спасибо. Раньше думал что КД2 это сложно и правила ставили в ступор, но постепенно втянувшись я понимаю что написать правила на КД2 это так просто и быстро по ним можно сделать любой обмен между разными базами.
cheshirshik; +1 Ответить
9. cheshirshik 63 10.05.23 16:17 Сейчас в теме
(8) Ну я бы не сказал, что там все так уж просто. Надо воспринимать обмен, как обработку выгрузки/загрузки данных через ХМЛ, тогда все встанет на свои места. Это я к тому, что тот кто ругает обмен данных через КД, просто не умеет его готовить. Если будут затыки и затупы по обменам, то см. в отладке. Там же можно найти много интересного. Например те же запросы в циклах.
15. Tarlich 115 11.10.23 13:52 Сейчас в теме
А если обмен не прошел а из плана обмена уже удалилось инфа ?
Оставьте свое сообщение