План обмена в формате "EnterpriseData" для 1С 7.7

Обмен - Обмен через XML

Пример организации надёжной синхронизации данных через универсальный формат "EnterpriseData" между конфигурациями на базе 1С 7.7 и произвольными приложениями.

Обработка настроена на выгрузку и загрузку измененных документов Реализация и Заказ покупателя. В ручном режиме возможно добавить к выгрузке элементы справочников Номенклатура, Контрагенты, Организации.

Требования

  • 1С Предприятие 7.7 для SQL
  • Наличие внешней компоненты 1cpp.dll (для прямых запрос к SQL)
  • Наличие внешней компоненты v7plus.dll (для работы с XML)
  • Наличие УРБД (для регистрации измененных данных)

Установка

В режиме конфигуратора, через меню Администрирование - Распределенная ИБ - Управление, добавляем новую периферийную ИБ (код EDI, только получатель). Выгрузку данных не производить. 

Добавление нового узла ИБ

В режиме конфигуратора, для документов Реализация и Заказ покупателя изменим параметры миграции. Область распространения либо Все информационные базы, либо Место создания и центр с дополнением "EDI". Автоматическая регистрация изменений включена.

Параметры миграции

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

Активация узла

Для программного вызова обмена, нужно открыть форму с параметром "ЗапуститьСинхронизацию". Например:

ОткрытьФорму("Отчет","ЗапуститьСинхронизацию","c:\REPO\ExchangePlan77\EnterpriseData_1_2_1.ert");

Техническая информация

Для хранения идентификаторов из периферийного узла, в каталоге ИБ создается файл ref7ref8.DBF.

GUID ссылочных данных в ИБ создается на основании данных функции ЗначениеВСтрокуВнутр.

Каталог обмена и номер последнего полученного пакета сообщения сохраняется в каталоге ИБ, в файле EnterpriseData.cfg.

Номер отправляемого сообщения вычисляется по данным УРБД.

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

Наименование Файл Версия Размер
EnterpriseData_1_2_1.ert
.ert 210,00Kb
07.01.17
3
.ert 210,00Kb 3 Скачать

См. также

Комментарии
1. Денис Новосёлов (binex) 204 13.01.17 20:51 Сейчас в теме
2. Сергей (Che) Коцюра (CheBurator) 3383 14.01.17 12:42 Сейчас в теме
Правильно я понимаю, что "между " УРБД EDI и собственно выгрузкой я смогу вставить сфои фильтры/код, чтобы например избежать ситуации когда "перемещение тмц" (миграция место создания и центр) созданное в центре уйдет только на току-склад-получатель, а не на все точки?
3. Денис Новосёлов (binex) 204 14.01.17 14:08 Сейчас в теме
Если вы будете выгружать только через эту обработку, то естественно вы можете контролировать то что выгружаете. Но регистрация изменений всё-равно происходит в соответствии с настройками миграций.
К примеру, в данной версии обработки, стоит фильтр, не выгружать заказы, которые не были ранее загружены из узла "EDI". Хотя все заказы регистрируются в УРБД.

В гите версия посвежее - можно отдельно делать загрузка и выгрузку.
4. Денис Новосёлов (binex) 204 07.02.17 11:55 Сейчас в теме
Обновил версию. Парсинг XML через объект XmlLiteReader, компоненты 1С++
5. Сергей (Che) Коцюра (CheBurator) 3383 08.02.17 02:05 Сейчас в теме
6. iddqd (iddqd) 361 01.05.17 19:16 Сейчас в теме
Спасибо огромное!
Пишу сейчас нечто аналогичное, ваша обработка очень сильно помогла!
Отдельно хочу отметить, что код просто приятно читать :)
7. Xer shi (Xershi) 249 01.05.17 20:21 Сейчас в теме
Возьму на заметку. Интересно когда клюшки вымрут как шестерка.
8. iddqd (iddqd) 361 02.05.17 04:36 Сейчас в теме
(7) XP вон тоже все ждут-ждут.. )
9. Денис Новосёлов (binex) 204 02.05.17 07:31 Сейчас в теме
(6)
код просто приятно читать

Спасибо! Стараемся. ))

Небольшое замечание - в обработке не проработана очистка таблицы 1SDWNLDS. Не сильно прирастает записью.
Оставьте свое сообщение