Интерфейс для обмена между базами 1С посредством 1С:Шины

10.10.24

Интеграция - Перенос данных 1C

Для решения интеграционных задач между информационными базами были написаны модули, формирующие под каждый справочник/документ свой json пакет. И вот спустя год, количество таких процедур возросло и появилось желание придумать что-то более универсальное. || Получилось что-то внешне похожее на КД 2.0, так как интерфейс пытался максимально приблизить к таковому. Суть следующая: есть справочник с правилами, где пользователь указывает объект источник и формирует посылку / объект приемник и объект источник, где пользователь формирует распаковку посылки. Для каждого из реквизитов можно написать отдельные "субправила".

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Интерфейс для 1С:Шина:
.cfe 43,64Kb
27 4 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

 

Принцип работы наглядно

Подсистема содержит в себе 3 справочника:

  1. Правила взаимодействия
  2. Правила обработки реквизитов
  3. Управление сервисами интеграции (ИШ) (хранилка для логина и пароля)

 

 

Для демонстрации работы было собрано приложение, где "PLM" и "PLMPLM" одна и та же база. Схема приложения представлена на рисунке ниже:

 

 

Сохраним ключи в нашу хранилку:

 

 

Сделаем "интеграцию" справочником "Номенклатура".

1) Создадим правило для отправки в справочнике "Правила взаимодействия".
Указали действие - Отправка, выбрали объект конфигурации и увидели список реквизитов доступных для обмена.

 

 

Галочками, отмечаем те реквизиты, которые мы бы хотели отправлять. Чтобы нам увидеть какие-то изменения, добавим правила для реквизитов.

 

 

В создании правила, ориентируясь на подсказки, напишем свою обработку реквизита.

 

 

В поле обработки правой кнопкой мыши вызовем конструктор запроса и напишем "кое-какой" запрос.

 

 

Получилась следующая бессмыслица, но если результат запроса будет найден, то мы должны будем увидеть в комментарии "СтрокаРезультатаЗапроса".

 

 

Для второго реквизита напишем что-то, чтобы было. Например, просто всегда будем передавать значение ИСТИНА в пометку удаления.

 

 

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

 

 

При необходимости в сформированном коде можно внести правки, написать запрос с помощью конструктора и т.д.

 

 

Теперь выгрузим наши настройки в файлик и получим сообщение после выбора каталога, что файл с именем "" успешно записан / получим описание ошибки.

 

 

2) Создадим правило для приема сообщения в справочнике "Правила взаимодействия".
Указали действие - Прием, выбрали объект конфигурации, и теперь необходимо загрузить файл с настройками.

 

 

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

 

 

Создадим правило на прием реквизита Артикул.

 

 

Снова подтверждаем настройки, чтобы сформировать код. После чего можно опять же внести правки/добавить код обработки.

 

 

3) Имеем два готовых и активных правила для номенклатуры: для отправки и приёма.

 

 

4) Создадим тестовую номенклатуру со следующим наполнением:

 

 

Записываем и после этого перечитываем наш объект (имитируем отправку и прием).

 

 

Получили ожидаемый результат!

 

Возможности для редактирования

 
 Правила взаимодействия
 
 Правила реквизитов

 

Объекты в конфигураторе

В конфигураторе расположены:

  • Модуль "ИШ_ОтправкаСообщений" - в нем расположены процедуры, осуществляющие непосредственную обработку и отправку сообщений
  • Модуль "ИШ_ПриемСообщений" - в нем расположены процедуры, осуществляющие прием сообщений и их последующую обработку
  • Справочник "Правила взаимодействия" - это и есть те самые правила, формирующие создание и распаковку сообщений
  • Справочник "Правила обработки реквизитов" - здесь хранятся правила для реквизитов. Они являются универсальными и могут использоваться для любых реквизитов в разрезе одного правила (правило ... является их владельцем, чтобы при дальнейшей работе не возникло путаницы)
  • Сервис интеграции "Шина" - в сервисе расположены два канала, на которые и ссылается код

 

Не исключаю, что кто-то захочет адаптировать или же доработать имеющийся инструмент, поэтому код оставляю открытым.

 

Как начать пользоваться

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

Для использования в одной базе нескольких сервисов интеграции, необходимо в модуле "ИШ_ОтправкаСообщений" внести соответствующие изменения, так как расчет был на наличие единственного сервиса в базе.

Теперь остаётся только добавить правила в справочнике с обеих сторон, как в примере выше и включить их активность.

 

Зачем и почему оно именно такое?

Исходя из опыта написания обменов для собственного предприятия, был сделан вывод, что объекты с одинаковой структурой синхронизируются довольно редко. Для каждой новой пары необходимо было скопировать старый код - адаптировать. Переписывать написанное и работающее - занятие не из приятных. Поэтому переход на что-то универсальное, да ещё и поправимое в режиме реального времени, без каких-либо обновлений самой информационной базы - решение на мой взгляд крайне привлекательное!

Надеюсь, что помогу вам сэкономить кучу вашего времени!

P.S. На момент выпуска данной статьи система поддерживает обмены такими объектами как Справочники и Документы и думаю стоит отметить, что система ещё достаточно "хрупкая".

Режим совместимости в расширении установлен 8.3.16, в силу того что разработка велась на достаточно старой конфигурации.

Разработка и тестирование велись на платформе 8.3.25.1386.

Вступайте в нашу телеграмм-группу Инфостарт

шина интерфейс обмен

См. также

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

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

58000 руб.

04.08.2015    192961    465    309    

463

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

50050 руб.

25.02.2015    191163    372    295    

428

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

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

58000 руб.

15.04.2019    86472    232    182    

168

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    163524    993    329    

487

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам.

50200 руб.

24.04.2015    209846    180    253    

299

SALE! 10%

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

Переносите справочную информацию, остатки и документы из УПП 1.3 в Бухгалтерию 3.0 с помощью готовых правил. Переносится более 50 видов документов. Простой интерфейс и понятные настройки.

42000 37800 руб.

15.12.2021    35973    263    68    

201

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Системный администратор Программист Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Платные (руб)

Обработка не только формирует начальные остатки по всем счетам на нужную дату (экономя время на свёртке базы БП 3), но и полностью переносит справочные данные и документы за заданный период. Гибкая настройка включает фильтр по организациям и множество параметров выгрузки. Работайте в удобном формате: выполните однократный полный переход или настройте регулярную догрузку только новых документов из БП 3 в БП 3.0. Интеграция правил конвертации в план обмена гарантирует точную выгрузку исключительно зарегистрированных объектов.

70760 руб.

10.04.2026    1124    3    8    

2

Рабочее место Производство готовой продукции (работ, услуг) Перенос данных 1C Пользователь 1С:Предприятие 8 1С:Управление производственным предприятием 1С:Документооборот 1С:Комплексная автоматизация 2.х 1С:КА 1С:ДО Платные (руб)

Продукт "Интеграция с 1С:Документооборот" позволяет использовать функции программы "1С:Документооборот 8" напрямую из учетной системы (1С:УПП; 1С:КА, 1С:УТ 10.3, 1С:БГУ 1.0, 1С:ЗБУ 1.0, 1С:УПП для Казахстана и отраслевых решений, разработанных на их основе) на платформе "1С:Предприятие 8": выполнять и ставить задачи, просматривать документы, скан-копии и прочие файлы, штрих-кодировать документы отправлять письма, вести учет рабочего времени - не входя в "1С:Документооборот 8", работая в одной программе, что значительно сокращает время и делает работу более комфортной и эффективной. Продукт прошел сертификацию 1С-Совместимо

135530 руб.

11.06.2015    63480    39    20    

51
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Pavel_Vladivostok 58 20.06.24 03:45 Сейчас в теме
Мне кажется что для обмена между базами 1с удобнее использовать КД2, шина больше подходит для сценарием обмена со сторонними приложениями.
Ни один современный обмен 1с-1с не обходится без переноса контактной информации, свойств, разных регистров сведений с данными фио документов и прочей нси. Если рассматривать простые сценарии с переносом справочников, документов между двумя 1cv8, без выгрузки сопутствующих рсв то здесь по скорости разработки КД2 вообще вне конкуренции.
11. laperuz 47 24.06.24 06:31 Сейчас в теме
(1)Вы сравниваете зелёное и горячее.
Шина это в первую очередь транспорт. КД2 - это структура сообщений, к транспорту отношения никакого не имеет.

Вы спокойно можете написать правила на КД2, выгрузить из источника сообщение в формате КД2, отправить его в шину, которая доставит сообщение до приемника, а в приемнике загрузить сообщение, опять же, средствами КД2.
2. NikusXXZ 20.06.24 08:15 Сейчас в теме
Пользуем 1С.Шина версия 3 активно. Около 300 ИнфоСистем. 6 приложений. Шина используется только как транспорт доставки сообщений. Сообщения типовых обменов.
Хочу сказать : что есть проблемы. Например: фоновые задания приёма и отправки сообщений платформы 1с просто игнорируют новые сообщения в 1с Шине. Хотя они лежат в таблице полученных или отправленных сообщений. Иногда помогает перезапуск службы агента 1с. ТЖ ни чего не показывает. Как то так.
d4rkmesa; user1226788; Sergik_D; user2041697; -_ABC; ksnik; +6 Ответить
12. pavelmael 10 25.06.24 08:56 Сейчас в теме
(2) Отключите в свойствах кластера перезапуск рабочих процессов. Интервал 0. И убрать галку принудительно завершать проблемные процессы.
А так эта проблема признана самой 1С примерно с 20.04.23
NikusXXZ; +1 Ответить
3. gybson 13 20.06.24 11:25 Сейчас в теме
Ближе к КД3 получается вроде. Как транспорт шина даже по стоимости не может конкурировать с бесплатными Rabbit и Kafka
4. rambomax 22 20.06.24 14:39 Сейчас в теме
(3) Есть мнение, что "бесплатность" кроликов нивелируется платностью компонент протокола)))
-_ABC; Somebody1; ARMOR; +3 Ответить
9. gybson 13 21.06.24 12:21 Сейчас в теме
(4) http бесплатно работает
5. BackinSoda 21.06.24 08:33 Сейчас в теме
6. Sapiens_bru 4 21.06.24 08:45 Сейчас в теме
(5) Шина это транспортный слой. Если не настраивать, можно воспринимать просто как почтовый сервер или общую папку.
А если в обмене участвуют менее умные чем 1С системы, то внутри Шины можно написать код, кторый будет преобразовывать сообщения, маршрутизировать итд.
7. Sergik_D 23 21.06.24 11:00 Сейчас в теме
Сергей, спасибо за труд. Только начал писать тоже самое для Шины, а тут Ваша статья.
METAL; serezh1a; +2 Ответить
8. serezh1a 193 21.06.24 11:54 Сейчас в теме
(7) благодарю! Очень рад это слышать
10. ktb 701 21.06.24 12:22 Сейчас в теме
Гляньте, вот такое еще есть: https://github.com/arkuznetsov/SerLib1C может пригодиться.
METAL; serezh1a; +2 Ответить
Для отправки сообщения требуется регистрация/авторизация