Смекни!
smekni.com

Внедрение автоматизированной системы торговой деятельности для предприятия ЗАО "Полиграфия и коммуникации" (стр. 7 из 12)

Редактирование свойств товара. Позволяет изменить входную цену и наименование товара. Входная информация: Наименование и цена товара. Выходная информация – измененный прайс-лист.

Поиск, сортировка, фильтрация. Стандартные операции для набора товаров, облегчающие работу с прайс-листом. Входная информация: товар, параметры сортировки или условия фильтра соответственно. Выходная информация – набор товаров.

Группы товаров

Добавление группы в дерево товаров прайс-листа. Позволяет внести новую группу в дерево товаров прайс-листа. Добавление происходит в текущую группу, которая автоматически становится родителем. Входная информация: Наименование группы, родитель. Выходная информация – измененный прайс-лист.

Удаление. Позволяет удалить группу товаров из прайс-листа. Удаляет все товары, содержащиеся в группе и все подгруппы. Входная информация: группа(номер). Выходная информация – измененный прайс-лист.

Редактирование группы. Позволяет изменить наименование группы. Входная информация: Наименование группы. Выходная информация – измененный прайс-лист.

Другие

Выгрузить группу товаров. Позволяет получить *.xls или *.rtfфайл с содержимым активной группы товаров или распечатать эту информацию без сохранения. Входная информация: Группа. Выходная информация – *.xls или *.rtf файл или его печатная копия.

Выгрузить прайс-лист. Позволяет получить *.xls или *.rtfфайл содержащий полный прайс-лист или распечатать эту информацию без сохранения. Входная информация: Прайс-лист. Выходная информация – *.xls или *.rtf файл или его печатная копия.

Для более детального описания приложения рассмотрим его UML-диаграмму, представленную на рисунке 7.

Рис.7 UML-диаграмма приложения “Прайс”.

Из рисунка видно, что дерево товаров является классом, унаследованным от абстрактного класса “Дерево”. Оно использует класс “Группа” для описания каждого элемента дерева и хранит атрибут “Текущая группа” для определения элемента-родителя каждого товара в списке, представленного классом “Список товаров”. В свою очередь, для хранения товаров класс “Список товаров” использует класс “Товар”, а для описания параметров поиска, сортировки и фильтрации класс “Интерфейс”. Еще два класса “Интерфейс” отвечают за пользовательский интерфейс для работы с деревом и списком товаров. Таким образом, реализовано взаимодействие классов внутри приложения.

2.7 Проектирование приложения “Счета”

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

Для удобства пользователя, счета организованы в виде списка, над которым можно выполнять операции поиска, сортировки и фильтрации по интересующим параметрам, а также добавления и удаления элемента списка. При выборе элемента списка, открывается окно для работы со счетом. В нем содержится полная информация о нем, реализована возможность изменения содержимого. Для внесения изменения в счет предусмотрен визуальный механизм работы с деревом товаров, что позволяет быстро и легко формировать и изменять наборы товаров, “подгонять цену”. Отметим, что добавление или удаление товара по счету не влечет за собой никаких изменений на складе товаров. Форма для работы со списком счетов и со счетом показаны на рисунках 7 и 8.


Рис.7 Приложение “Счет” – список счетов.

Основные операции для работы со списком счетов:

Добавить счет – создание нового счета. Входные данные: дата. Выходные данные – новый счет, измененный список счетов.

Удалить счет – удаляет счет из списка. Входные данные: счет(номер). Выходные данные – измененный список счетов.

Копировать счет – создает копию счета с теми же параметрами, но другим порядковым номером. Входные данные: счет(номер). Выходные данные – измененный список счетов.

Печать – вызывает диалог выбора отчета и его формата для печати. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Фильтр – вызывает диалог для внесения параметров фильтрации счетов. Входные данные: условия фильтрации. Выходные данные – список счетов, входящих в диапазон.

Редактировать счет – вызывает форму для работы со счетом. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Рис.8 Приложение “Счет” – работа со счетом.

Основные операции для работы с содержимым счета:

Добавить товар – добавляет товар в счет. Входные данные: товар(номер). Выходные данные – измененный счет.

Удалить товар – удаляет товар из счета. Входные данные: товар(номер). Выходные данные – измененный счет

Сумма – вычисляет сумму товаров, включенных в счет. Входные данные: счет(номер). Выходные данные – сумма в долларах, рублях и евро.

Печать – вызывает диалог выбора отчета и его формата для печати счета. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Скидка – пересчитывает позиции счета с учетом скидки. Входные данные: размер скидки. Выходные данные – измененный счет.

Состояние – позволяет изменить состояние счета вручную. Входные данные: состояние. Выходные данные – счет.

UML-диаграмма приложения “Счет” представлена на рисунке 9.

Рис.9 UML-диаграмма приложения “Счет”.

Из рисунка видно, что дерево товаров является классом, унаследованным от абстрактного класса “Дерево”. Оно использует класс “Группа” для описания каждого элемента дерева и хранит атрибут “Текущая группа” для определения элемента-родителя каждого товара в списке, представленного классом “Список товаров”. В свою очередь, для хранения товаров класс “Список товаров” использует класс “Товар”, а для описания параметров поиска, сортировки и фильтрации класс “Интерфейс”. Еще два класса “Интерфейс” отвечают за пользовательский интерфейс для работы с деревом и списком товаров. Таким образом, реализовано взаимодействие классов внутри приложения.

2.8 Проектирование приложения “Склад”

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

Для удобства пользователя, поставки организованы в виде списка, над которым можно выполнять операции поиска, сортировки и фильтрации по интересующим параметрам, а также добавления и удаления элемента списка. При выборе элемента списка, открывается окно для работы с содержимым поставки. В нем содержится полная информация о пришедших в рамках этой поставки товарах, и реализована возможность изменения ее содержимого. Стоит отметить, что добавление или удаление товаров вне поставок заносится в протокол работы приложения, что является специфичной функцией, добавленной по просьбе заказчика. На рисунке 10 показана форма для работы с деревом товаров приложения “Склад”.


Рис.10 Приложение “Склад” – Главная форма.

Основные операции для работы со складом перечислены ниже.

Со списком поставок:

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

Удалить поставку – удаляет поставку из списка. Входные данные: поставка(номер). Выходные данные – измененный список поставок.

Копировать поставку – создает копию поставки с теми же параметрами, но другим порядковым номером. Входные данные: поставка(номер). Выходные данные – измененный список поставок.

Печать – вызывает диалог выбора отчета и его формата для печати. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма списка поставок.

Фильтр – вызывает диалог для изменения параметров фильтрации списка поставок. Входные данные: условия фильтрации. Выходные данные – список поставок, входящих в диапазон.

Редактировать поставку – вызывает форму для работы с содержимым поставки. Входные данные: поставка(номер). Выходные данные содержимое поставки.

Пункты меню формы для работы с содержимым поставки:

Добавить товар – добавляет товар в поставку. Входные данные: товар(номер). Выходные данные – измененная поставка.

Удалить товар – удаляет товар из поставки. Входные данные: товар(номер). Выходные данные – измененная поставка.