Notice: Undefined variable: shm_str in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 57

Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50564 Library:50645 in /var/www/u3757017/data/www/business-semantic.ru/core/mysql.ext on line 36

Notice: Undefined index: constants in /var/www/u3757017/data/www/business-semantic.ru/core/constants.ext on line 3

Notice: Undefined index: setlang in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 122

Notice: Undefined index: setlang_data in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 129

Notice: Undefined index: lang in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 136

Notice: Undefined index: lang_data in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 144

Notice: Undefined index: 3_1_1 in /var/www/u3757017/data/www/business-semantic.ru/interfaces/classes/Security.class on line 29

Notice: Undefined index: container in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 167

Notice: Undefined index: fragments in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 168

Notice: Undefined index: subsites in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 63

Notice: Undefined index: business-semantic.ru in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 64

Notice: Undefined index: path in /var/www/u3757017/data/www/business-semantic.ru/core/util.ext on line 57

Notice: Undefined index: /products/bus/oracle in /var/www/u3757017/data/www/business-semantic.ru/core/util.ext on line 58

Notice: Undefined index: 1_11_1 in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 215

Notice: Undefined index: allparents_1_254 in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 104

Notice: Undefined index: templates in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 116

Notice: Undefined offset: 11 in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 117

Notice: Undefined property: page::$namecontent in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 205

Notice: Undefined property: page::$description in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 206

Notice: Undefined property: page::$keywords in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 207

Notice: Undefined property: page::$script_include in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 236

Notice: Undefined variable: s in /var/www/u3757017/data/www/business-semantic.ru/core/serialize.ext on line 43

Notice: Undefined variable: s in /var/www/u3757017/data/www/business-semantic.ru/core/serialize.ext on line 47

Notice: Undefined index: modules in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 29

Notice: Undefined index: s_top_menu in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 30

Notice: Undefined index: modules_extensions in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 43

Notice: Undefined offset: 160 in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 44

Notice: Undefined index: 2__1 in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 74

Notice: Undefined index: 2_160_1 in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 88

Notice: Undefined property: LangContainer::$pagename in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 102

Notice: Undefined index: getxml in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 75

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined index: s_menu in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 30

Notice: Undefined offset: 161 in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 44

Notice: Undefined index: business-semantic.ru/products in /var/www/u3757017/data/www/business-semantic.ru/core/util.ext on line 58

Notice: Undefined index: business-semantic.ru/products/bus in /var/www/u3757017/data/www/business-semantic.ru/core/util.ext on line 58

Notice: Undefined index: business-semantic.ru/products/bus/oracle in /var/www/u3757017/data/www/business-semantic.ru/core/util.ext on line 58

Notice: Undefined index: url in /var/www/u3757017/data/www/business-semantic.ru/core/page.ext on line 277

Notice: Undefined index: 2_161_1 in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 88

Notice: Undefined property: LangContainer::$pagename in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 102

Notice: Undefined index: getxml in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 75

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined index: s_top_menu_divs in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 30

Notice: Undefined offset: 166 in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 44

Notice: Undefined index: 2_166_1 in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 88

Notice: Undefined property: LangContainer::$pagename in /var/www/u3757017/data/www/business-semantic.ru/core/module.ext on line 102

Notice: Undefined index: getxml in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 75

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined variable: result in /var/www/u3757017/data/www/business-semantic.ru/core/parser.ext on line 270

Notice: Undefined index: fragments in /var/www/u3757017/data/www/business-semantic.ru/index.php on line 182
Пример интеграции CRM и системы документооборота (MySQL, Oracle) при помощи продукта "Бизнес Семантика"
English version
+7(343) звоните:2 110 256

Пример интеграции CRM и системы документооборота (MySQL, Oracle) при помощи продукта "Бизнес Семантика"

Описываемый проект реализован в компании "Росэнерготранс", входящей в группу "Свердловэлектро". Профиль деятельности предприятия - разработка трансформаторов и другого оборудования для электроподстанций. Менеджеры по продажам используют в качестве основной рабочей среды систему index.CRM, основанную на сервере баз данных MySQL. В нее заносятся заявки на расчет и проектирование различных вариантов исполнения трансформаторов, которые менеджеры предлагают заказчикам. Проектировщики, выполняющие расчеты, работают в другой информационной системе, "Заказчик". Эта система основана на БД Oracle, и реализует функции документооборота заявок. Задачей интеграции является обеспечение сквозного движения заявок в этих двух системах. На приведенном ниже рисунке показана схема программных компонентов, участвующих в обмене информацией.

 

Процесс работы с заявками на расчет стоимости оборудования выглядит так:

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

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

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

Особенностью проекта, кооторый позволяет подчеркнуть преимущества именно семантического подхода к интеграции, является тот факт, что между таблицами MySQL и Oracle нет однозначного мэппинга. Например, в системе документооборота есть такое понятие, как "Строки заявки", а в CRM его нет; с другой стороны, в CRM параметры изделия хранятся в отдельной таблице, а в системе документооборота - в той же самой. Использование адаптеров для семантической трансформации данных позволяет легко и элегантно решить эту проблему с минимальными затратами труда программиста, которая обязательно возникла бы при простой интеграции "точка-точка". Также использование семантического представления информации существенно облегчает поддержку решения, за счет того, что мы избежали написания большого количества кода, жестко привязанного к структуре той или иной базы данных.