Коробочная интеграция с SAP Business One

SAP Business One — это система, обеспечивающая полный контроль над всеми аспектами деятельности коммерческой компании. А именно — управление продажами, финансовыми потоками, закупками, производственным процессом и т.д.  SAP Business One может разворачиваться, как в офисе, так и на виртуальном сервере. Использование этой системы помогает в ведении всех аспектов бизнеса.

Интеграции с SAP стоит строго разделять по назначению. Мы выделим два основных сценария и вопроса, на которые они помогают ответить:

  • Репликация данных — существует ли подмножество таблиц в базе данных SAP B1, действующей в качестве совместно используемой мастер-БД? Или копию этих данных хранят внешние БД?
  • Синхронизация данных — если данные дублируются, они синхронизируются всегда или только периодически?

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

Подведем промежуточный итог — суть процесса интеграции с SAP кроется в ответе на два важных вопроса: каков тип сценария репликации данных и какова периодичность их синхронизации?

Для получения исчерпывающего ответа перейдем к самим механизмам интеграции. А для затравки предложим вашему вниманию стандартные решения, которые поставляются в комплекте SAP B1 SDK (впрочем, комплект не означает что все будет работать, как вам нужно — такова коммерческая подоплека):

  • SAP Business One DI-API
  • SAP Business One DI Server

SAP Business One DI-API

DI-API предоставляет интерфейс объектам SAP Business One, с типичным для API CRUD набором действий (вы можете читать, просматривать, создавать, обновлять или удалять объекты в базе данных SAP B1, а также выполнять некоторые XML-операции). Из приятного: SAP обеспечивает максимально полную проверку данных и автоматически заполняет значения полей, основанные на бизнес-правилах SAP B1. Таким образом, консистентность данных в базе гарантированна.

На самом деле DI API дает доступ не только внешней системы к базе данных с объектами, но и частично — к бизнес логике, реализованной в SAP B1.

DI-API реализован в виде DLL на основе Microsoft COM. Это обеспечивает совместимость с любой COM или .NET средой разработки, включая Microsoft Visual Studio или Visual Studio .NET. Кроме того, имеется возможность адаптировать DI-API под Ruby on Rails. Для этого потребуется использовать небольшую прослойку на Savon, способствующую реализации интерпретатора SOAP протокола и генерации полезного XML.

DI-API действует, как COM на основе фасадной капсулы, за которой скрывается множество внутренних служб (рис. 1), обеспечивающих:

  • доступ к функциям базы данных и метаданных (менеджер данных)
  • расширенные функциональные возможности XML (схемы Generator)
  • SAP B1 бизнес-логики (ObserVer).

Обратите внимание, что DI-API представляет собой мононаправление и синхронный интерфейс. Интеграция данных требуется также и для получения уведомлений о создании, удалении и обновлении объектов в SAP Business One DB.

SAP-B1-DI-API-Structure-e1458900776882

SAP Business One DI Server

DI-сервер предоставляет SOAP интерфейс для SAP B1. Набор операций, осуществляемых этим интерфейсом является подмножеством методов, экспортируемых DI-API. В целом, он обеспечивает проведение CRUD операций на объектах (как и в DI API), но с одним ограничением: не поддерживаются функции метаданных. DI Server не позволяет изменять структуру пользовательских таблиц в БД.

Однако он дает возможность передачи нескольких операций в течение одной транзакции. Впрочем, подобным функционалом наделен и API.

Главное положительное отличие DI Server от DI API — поддержка более   широкого спектра клиентских технологий. А это автоматически означает и наличие больших возможностей интеграции (конечно после предварительной обработки “напильником”). DI Server позволяет использовать: COM, COBRA, или TCP/IP для взаимодействия с SAP Business One с помощью XML. В отличие от DI-API c COM-оберткой, его можно рассматривать как SOAP-обертку вокруг внутренних служб SAP Business One.

На приведенной ниже схеме показана архитектура для DI Server (рис 2).

SAP-B1-DI-Server-Structure-e1458900788179

Интеграция с мобильными клиентами (IOS и Android)

Команда JetRuby также имеет опыт интеграции SAP с мобильным приложениями на базе IOS и Android. В этом деле на первый план выходит дополнительная прослойка с конвертацией в JSON формате. Кроме того, интеграция SAP с мобильными устройствами требует внедрения отдельных вспомогательных сервисов и дополнительных ресурсов препроцессинга выдачи данных. Например, для быстрого поиска и выдачи предварительно подготовленных результатов мы используем ElasticSearch.

Что же касается действий на запись или вычислений, они проходят асинхронно в фоновых потоках. Если вычисления занимают более 10 секунд для одного клиента, для этого используются дополнительные адаптеры Ruby или GoLang.

Будьте в курсе всех агро новостей

Ищи больше интересной информации в нашем TG-канале Подписаться

Похожие статьи

Похожих статей не найдено.

Заполните форму или свяжитесь
удобным для Вас способом

Контакты

г. Севастополь, ул. Руднева, д.41, 4 этаж технопарк ИТ-Крым +7 978 679-76-353 agro@crimeadigital.ru

Социальные сети

Нажимая на кнопку, вы даете согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности

Крым Диджитал приняла участие в стратегической сессии

Руководители Крым Диджитал приняли участие в стратегической сессии, которая прошла на базе СевГУ 10 июня. Вместе с Правительством Севастополя, Институтом информационных технологий и управления в технических системах СевГУ и приглашенными ИТ-компаниями города обсудили перспективу развития системы высшего образования в Севастополе.Представители бизнеса, власти и образовательной системы выступали со своим видением будущих потребностей региона в кадрах, поднимали насущные вопросы обучения студентов, прохождения практики и дальнейшего трудоустройства. Крым Диджитал является амбассадором идеи образования и взращивания молодых кадров, развивает образовательные проекты и на протяжении 5 последних лет ведет активную работу в направлении поддержки и развития молодых специалистов ИТ-отрасли Крыма.

Руководители Крым Диджитал приняли участие в стратегической сессии, которая прошла на базе СевГУ 10 июня.

Вместе с Правительством Севастополя, Институтом информационных технологий и управления в технических системах СевГУ и приглашенными ИТ-компаниями города обсудили перспективу развития системы высшего образования в Севастополе.
Представители бизнеса, власти и образовательной системы выступали со своим видением будущих потребностей региона в кадрах, поднимали насущные вопросы обучения студентов, прохождения практики и дальнейшего трудоустройства.

Крым Диджитал является амбассадором идеи образования и взращивания молодых кадров, развивает образовательные проекты и на протяжении 5 последних лет ведет активную работу в направлении поддержки и развития молодых специалистов ИТ-отрасли Крыма.

Выпуск курса Software Testing

Мы поздравляем выпускников нашего первого в этом году курса Крым Диджитал Академии по Software Testing! Всего курс успешно завершили 13 человек. В течение 2 месяцев несмотря на теплую погоду и манящее море ребята ответственно посещали занятия 2 раза в неделю, делали домашние задания и проверочные работы. Трое начинающих специалистов теперь стажеры нашей компании. Следующий курс намечен на август. Не пропусти анонс записи!

Мы поздравляем выпускников нашего первого в этом году курса Крым Диджитал Академии по Software Testing!

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

Следующий курс намечен на август. Не пропусти анонс записи!

Лицензия на образовательную деятельность

В 2022 году мы получили лицензию на образовательную деятельность по программам дополнительного профессионального образования! Теперь мы можем обучать специалистов по направлениям Ruby on Rails, ReactJS и Software Testing и выдавать удостоверения о повышении квалификации государственного образца.
В 2022 году мы получили лицензию на образовательную деятельность по программам дополнительного профессионального образования! Теперь мы можем обучать специалистов по направлениям Ruby on Rails, ReactJS и Software Testing и выдавать удостоверения о повышении квалификации государственного образца.

Мы вошли в Реестр эффективно и социально значимых предприятий.

По результатам ежегодной финансово-экономической аналитики Межотраслевой рейтинговой компании Крым Диджитал включена в Реестр эффективных и социально значимых предприятий. По итогу аналитики, в рамках отрасли (ОКВЭД 62.01) и региона Крым, CDG вошло в 4% лучших компаний страны, с результатом – 92 балла!
По результатам ежегодной финансово-экономической аналитики Межотраслевой рейтинговой компании Крым Диджитал включена в Реестр эффективных и социально значимых предприятий. По итогу аналитики, в рамках отрасли (ОКВЭД 62.01) и региона Крым, CDG вошло в 4% лучших компаний страны, с результатом – 92 балла!