В модуле "Ввод входных данных" (подзадача 1) реализуется ввод содержимого прайс-листов и листов заказа, который осуществляется вручную, автоматизированно, с помощью списков часто используемых товаров, или автоматически, с использованием конвертированных файлов. Модуль "Работа со справочниками" отвечает за введение данных в справочники.
Модуль "Просмотр состояния рынка и спроса" отвечает за решение подзадачи 3 системы, в которой используются входные данные, полученные в результате работы ранее указанных модулей ввода.
Модули "Сформированные заказы", "Разнарядки" и "Столбчатая диаграмма " работают уже с выходными данными, полученными в результате работы подсистемы формирования заказов на товары. Модуль "Сформированные заказы" отвечает за работу пользователя с базой выходных данных, в которой хранится информация о полученных в результате работы программы заказах. Модуль "Разнарядки" реализует выполнение подзадачи 4 системы, а модуль "Столбчатая диаграмма" – подзадачи 5.
На рисунке 2.4 представлена модульная диаграмма подсистемы конвертирования и наполнения базы входных данных.
Если входные данные системы поступают в виде файлов различных форматов, то в модуле "Конвертор входных файлов" осуществляется преобразование этих файлов в текстовый формат и приведение их с помощью пользователя к единой структуре.
В модуле "Внесение информации в БД" на вход поступают конвертированные файлы. Извлекаемая из этих файлов информация обрабатывается с использованием справочников наименований товаров и производителей (см. п. 2.3.3.1), а затем заносится в базу входных данных.
На рисунке 2.5 представлена модульная диаграмма подсистемы формирования заказов на товары.
В модуле " Формирование заказа простыми методами " осуществляется введение установок для формируемого заказа, таких как учет территории поставщика, учет условий поставки, учет содержимого на складе и учет производителей. Затем пользователем выбирается один из четырех методов формирования заказа (включая и генетический алгоритм). Данный модуль реализует только три метода формирования заказа : по минимальным ценам, по максимальным ценам и на одно предприятие.
В модуле " Формирование заказа с помощью Генетического алгоритма " производится сначала выбор пользователем, использовать ли учет производителей как критерий, выбор операторов генетического алгоритма, используемых при формировании заказа и задание вероятностей их осуществления. А затем, после настройки пользователем генетического алгоритма, реализуется метод формирования заказа "генетический алгоритм по минимальной стоимости закупки и поставки товаров".
В следующих подразделах будет детально описана структура подсистемы баз данных, а также структура и работа каждого модуля системы и ее подсистем.
Базы данных системы.
База данных системы поддержки принятия решений для формирования заказа состоит из двух подбаз – базы входных данных и базы выходных данных – и двух наборов справочников. Первый набор справочников используется подсистемой конвертирования и наполнения базы входных данных. Назовем его "Справочники для автоматического занесения входной информации". Второй набор справочников, назовем его "Справочники", обеспечивает базе данных реляционные свойства и облегчает пользователю введение информации в базу входных данных и корректировку базы выходных данных. Ввод информации в базу входных данных может осуществляться пользователем вручную (с бумажных бланков), тогда справочники играют свою роль облегчения ввода информации; автоматизированно – с помощью списков часто используемых товаров, которые составляются пользователем заранее; автоматически – подсистемой конвертирования и наполнения базы входных данных.
Справочники для автоматического занесения входной информации
Справочники для автоматического занесения входной информации используются подсистемой конвертирования и наполнения базы входных данных для корректного занесения наименований товаров и производителей из конвертированных файлов прайс-листов и листов заказа. Дело в том, что такие наименования в прайс-листах разных поставщиков могут звучать одинаково, а писаться по-разному, например, в наименовании может присутствовать вместо знака "– " знак "/" и т.д. Вот здесь то и могут пригодиться вышеуказанные справочники. Справочники для автоматического занесения входной информации показаны на рисунке 2.6. Это реляционные справочники. Родительские таблицы здесь содержат код и основное наименование товара/производителя, а дочерние – наименования, которые могут встречаться в процессе автоматического считывания содержимого прайс-листов и листов заказа.
MAINDRUG (родительская таблица справочника товаров)
Таблица 2.6
Наименование поля | Тип | Логический смысл | Физический смысл |
Numb | Integer | номер основного наименования товара | ключевое поле |
Name | Char(80) | основное наименование товара | значащее поле |
SUBDRUG (дочерняя таблица справочника товаров)
Таблица 2.7
Наименование поля | Тип | Логический смысл | Физический смысл |
Numb | Integer | номер наименования товара | ключевое поле |
MainNumb | Integer | номер основного наименования товара | вторичный ключ для соединения с родительской таблицей |
Name | Char(80) | наименование товара | значащее поле |