Основные требования к системе

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

 

1. Он должен обеспечивать передачу из ERP-системы в систему РБУ всей информации, которая необходима для формирования отчетности в соответствии с российскими стандартами: это проводки хозяйственных операций и все элементы справочников, на которые имеются ссылки в проводках.

2. Он должен обеспечивать передачу из системы РБУ в ERP-систему информации из тех разделов учета, которые по тем или иным причинам ведутся в системе РБУ, а данные из них требуются для работы разделов, обслуживаемых в ERP-системе.

3. Он должен гарантировать полноту передаваемой информации с учетом возможного внесения изменений и дополнений в информационную базу.

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

5. В нем должна присутствовать процедура верификации переданной информации.

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


Варианты реализации

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

В таблицы ERP-системы, содержащие информацию о проводках и сопутствующую им аналитику, добавляются триггеры, обеспечивающие периодический опрос состояния соответствующих таблиц на предмет наличия или отсутствия изменений. Программа управления обменом резидентно присутствует в памяти, через ODBC-драйвер следя за состоянием этих триггеров; при обнаружении факта модификации данных она передает произошедшие изменения в систему РБУ. Аналогично происходит передача в обратном направлении данных по кадрам и зарплате. Преобразование проводок из формата их хранения в ERP-системе в формат системы РБУ может выполняться как процедурами обслуживания соответствующих триггеров, так и программой управления обменом.

Для такого варианта организации обмена данными характерна высокая оперативность. Однако для его успешной реализации требуется подробная информация об организации данных в обеих системах на табличном уровне представления. Далеко не во всех случаях такая информация доступна стороннему разработчику. Поэтому наилучшие результаты при реализации такого варианта будут достигнуты в том гипотетическом случае, если система обмена данными будет создаваться совместными усилиями фирм-разработчиков объединяемых ERP-системы и системы РБУ.

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

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

Этот подход реализуется в двух вариантах, первый из которых инициирует процедуру экспорта или импорта данных по запросу пользователя. Он менее оперативен по сравнению с остальными, но не требует резидентного присутствия в памяти каких-либо приложений, а его реализация требует минимальных трудозатрат. Второй вариант осуществляет автоматический обмен данными с заданной периодичностью. Он обеспечивает более высокую оперативность обмена, но требует постоянной активности специально выделенного для этих целей приложения системы РБУ.

Еще один подход - использование системы РБУ как OLE-сервера. Естественно, он применим только при условии, что система РБУ может выступать в таком качестве.

Этот подход потенциально способен обеспечить максимальную оперативность обмена (вплоть до режима реального времени). Для его функционирования потребуется резидентное присутствие в памяти программы управления обменом и приложения системы РБУ, выступающего в роли OLE-сервера.

В тех же случаях, когда ERP-система допускает непосредственное обращение к OLE-серверу, отпадает необходимость в программе управления обменом.