Томск — 2008
Обзор информационной системы для торговли и складского учёта Indocs
Всероссийская научно-практическая конференция «Свободное программное обеспечение: разработка и внедрение», г. Томск, 18 мая 2008 г.
Программный пакет Indocs создан для организации процесса торговли и складского учёта. Система разработана на базе СУБД PostgreSQL. Клиентская часть реализована на языке Java (j2se).
К основным возможностям системы относятся:
- организация иерархического каталога товаров с неограниченной глубиной вложенности;
- складской учёт с указанием серийных номеров товара;
- построение прайс-листов;
- окружение для выписки счетов клиентам;
- оформление расходных документов;
- хранение информации о клиентах.
Складской учёт ведётся через систему накладных. Приходные накладные работают одновременно в двух валютах — рублях и долларах. Цена товаров рассчитывается автоматически с указанием надбавки и текущего курса иностранной валюты.
Такие характеристики, как многопользовательский сетевой доступ, разделение прав пользователей, поддержка транзакций, полная переносимость клиентской части на любую платформу, являются следствием возможностей базовых компонентов (PostgreSQL и Java). Печатные формы строятся при помощи библиотеки JasperReports.
Система имеет двухуровневую архитектуру. Первый слой — это ядро операций с данными, второй — пользовательский интерфейс. Операции с данными реализованы только для хранения в реляционных СУБД при поддержке языка SQL. Локальная работа системы может быть реализована при помощи пакета hsqldb. Оконная пользовательская часть выполнена на основе библиотеки Swing.
В настоящий момент система Indocs используется в компьютерной фирме "Интек" в г. Северске. Её исходный код публикуется под лицензией GPL.
Главная цель разработки — максимальная независимость от лицензионных ограничений. Кроме этого, данная система позволяет организовать работу предприятия с использованием только открытого программного обеспечения. Исходный код системы хорошо структурирован и допускает возможность модификации для требований, не предусмотренных текущей реализацией.
К недостаткам системы относятся невозможность репликации удалённых пользователей и полная реализация логики работы приложения на стороне клиента (модель "толстый клиент").