Современные информационные технологии/3. Программное обеспечение

Старший преподаватель Крючин О.В., аспирант Квашенкин Д.О.

Тамбовский государственный университет им. Г.Р. Державина, Россия

Синхронизация 1с версии 7 и интернет-магазина при помощи системы евриптерид

 

Введение. Традиционно в России управление торговым предприятием (магазин и т.п.) в большинстве случаев осуществляется при помощи программ , занимающих в настоящее время более 75% рынка. В тоже время стремительно возрастает значение интернет-магазинов, число которых пока уступает аналогичному на Западе, но постепенно приближается к нему. Таким образом, интеграция интернет-магазинов и приобретает все большую актуальность. Программистами создано несколько решений, но все они требуют существенной доработки.

Исходя из вышесказанного, целью данной работы является разработка системы, позволяющей интегрировать 1С версии 7 «Торговля и склад» и интернет-магазин, основанный на движке EuripterideShop.

Общее описание и принципы работы. Предлагаемая система состоит из двух компонентов — Vendor, размещаемого на машине с (на рис. 1 — и DLL) и Server, размещаемого на хосте с интернет-магазином (на рис. 1 — СУБД и Web-интерфейс). Система позволяет отображать содержимое справочника номенклатуры и предоставляет возможность производить заказы через интернет. Изменения в справочниках сразу же учитываются инетернет-магазином, а сделанные пользователем заказы поступают в в короткий срок. Помимо заказов web-интрфейс позволяет проводить регистрацию новых покупателей (если это необходимо). Информация о новых заказах и контрагентах автоматически заносится в базу 1С, пользовательский интерфейс которого содержит набор отчетов, позволяющих просмотреть список изменений, сделанных через web-интерфейс.

Web-интерфейс (интернет-магазин) обращается не к справочникам , а к СУБД, содержащей необходимую для него информацию. Таблицы этой базы содержат те поля некоторых справочников(номенклатура, контрагенты и т. д.) и регистров (заявки покупателей и т. д.), которые необходимы для web-интерфейса.

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

 

Рис. 1. Структура системы Евриптерид.

 

Кроме того, 1С периодически вызывает функцию, возвращающую наличие изменений, сделанных через web-интерфейс (поступление новых заказов и регистрация новых контрагентов)

Структура системы. Система состоит из нескольких частей: 

l                    СУБД, дублирующей содержимое нескольких справочников ;

l                    набора динамических библиотек (dll), записывающих и считывающих информацию в СУБД;

l                    системы оформления заказов и систем регистрации (php) — web-интерфейс на рис. 1 ;

l                    обработок , которые вызывают функции динамических библиотек.

Структура базы данных содержит ряд таблиц:

l                    T_Nomenclatures — хранит информацию о номенклатуре (товарах);

l                    T_Counterparts — хранит информацию о зарегистрированных контрагентах;

l                    T_Buers_Orders — хранит информацию о заказах покупателей.

Динамические библиотеки (DLL) содержат следующие функции:

·                      addNomenclature(nomenclature) – добавление новой номенклатуры; получает массив данных о новой номенклатуре; записывает новую строку в таблицу T_Nomenclatures;

·                      removeNomenclature(nomenclatureId) – удаление номенклатуры; получает код удаляемой номенклатуры, удаляет строку с этой номенклатурой из таблицы T_Nomenclatures;

·                      updateNomenclature(numenclature) – обновление номенклатуры; получает массив данных о номенклатуре; находит соответствующую ей строку в таблице T_Nomenclatures и  вносит необходимые изменения;

·                      addCounterpart(counterpart) – добавление нового контрагента; получает массив данных о новом контрагенте; записывает новую строку в таблицу T_Counterparts;

·                      removeCounterpart(counterpartId) – удаление контрагента; получает код удаляемого контрагента; удаляет строку с этим контрагентом из таблицы T_Counterparts;

·                      updateCounterpart(counterpart) – обновление контрагента; получает массив данных о контрагенте; находит соответствующую ему строку в таблице T_Counterparts и  вносит необходимые изменения;

·                      getNewOrders() - получение необработанных заказов; возвращает массив строк из таблицы Т_Buers_Orders;

·                      getNewContragents() - получение новых зарегистрированных контрагентов; возвращает массив строк из таблицы T_Counterparts, которые были внесены в таблицу после предыдущего вызова функции.

Для вызова dll-библиотек в добавлено несколько обработок:

·                      UpdateNemenclatureAndContragent – обновление номенклатуры и контрагентов, содержит ряд функций:

·          addNomenclature(nomenclature) – добавление новой номенклатуры; получает объект номенклатуры и вызывает функцию addNomenclature из dll;

·          removeNomenclature(nomenclatureId) – удаление номенклатуры; получает код номенклатуры и вызывает функцию removeNomenclature из dll;

·          updateNomenclature(numenclature) – обновление номенклатуры; получает объект номенклатуры и вызывает функцию updateNomenclature из dll;

·          addCounterpart(counterpart) – добавление нового контрагента; получает объект контрагента и вызывает функцию addCounterpart из dll;

·          removeCounterpart(counterpartId) – удаление контрагента; получает код контрагента и вызывает функцию removeCounterpart из dll;

·          updateCounterpart(counterpart) - получает объект контрагента и вызывает функцию updateCounterpart из dll;

·                      GetNewOrders – получение необработанных заказов; вызывает функцию dll возвращающую новые заказы (getNewOrders); данная обработка вносит заказы в регистр и предоставляет отчет о них;

·                      GetNewContragents – получение новых контрагентов; вызывает функцию dll возвращающую новые заказы (getNewCounterparts); данная обработка вносит контрагентов в регистр и предоставляет отчет о них.

Заключение. Таким образом разработана система, позволяющая интегрировать версии 7 «Торговля и склад» и интернет-магазин, основанный на движке EuripterideShop.

 

Литература

1.       Рязанцева Н., Рязанцев Д. 1С Предприятие: Торговля и склад. Секреты работы // СПб.:БХВ-Петербург, 2003. — 368 с.: ил.