МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Московский государственный текстильный университет
имени А.Н.Косыгина»
Кафедра автоматизированных систем обработки информации и управления
Отчет
по курсовой работе
по дисциплине «Базы данных»
Выполнил: Ворожбитов А.П. гр. 45т-10
Принял: Монахов В.И.
Москва 2012
Содержание
|
|
Стр. |
1. |
Проектирование базы данных |
4 |
2. |
Описание программного проекта |
7 |
3. |
Описание алгоритма формирования отчета |
9 |
4. |
Руководство программиста |
13 |
5. |
Руководство пользователя |
14 |
6. |
Описание контрольного примера |
19 |
7. |
Текст программы |
21 |
8. |
Выводы |
35 |
|
Список использованных источников |
|
1.Проектирование базы данных
Имеется склад материальных ценностей. В базе данных хранится информация о подразделениях, о материалах и их остатках, о заявках от подразделений. По подразделениям известный их код и наименование. По материалам известны номенклатурный номер, наименование и цена за единицу. Остатки материалов характеризуются номенклатурным номером, количеством, и зарезервированным количеством. Заявки охарактеризованы их номером, датой составления, кодом подразделения, составившего заявку, номенклатурным номером и количеством заказанных материальных ценностей.
Схема данных приведена на рисунке 1.
|
Справочник материалов |
|
|
|
|
Справочник подразделений |
||
1 |
Номенклатурный номер(PK) |
1 |
|
|
1 |
Код подразделения(PK) |
|
|
|
|
|
|
|
|
|||
|
Наименование |
|
|
|
|
Наименование подразделения |
|
|
Цена |
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Заявки |
|
|
|
|
Остатки материалов |
|
|
|
Уникальный идентификатор(PK) |
|
|
|
1 |
Номенклатурный номер(PK/FK) |
|
|
Номер заявки |
|
|
|
|
||||
|
Дата |
|
|
|
|
Количество |
|
|
|
Код подразделения (FK) |
∞ |
|
|
|
Зарезервированно |
|
|
|
|
|
|
|
||||
∞ |
Номенклатурный номер(FK) |
|
|
|
|
|
|
|
|
|
|
|
|||||
|
Количество |
|
|
|
|
|
|
Рисунок 1 – Схема базы данных
Описание сущностей представленный в таблицах 1-4.
Таблица 1 – Сущность Справочник подразделений (Unit)
Наименование атрибута |
Имя поля БД |
Тип поля |
Дополнительные характеристики |
Код подразделения |
Unit_ID |
I |
PK |
Наименование подразделения |
Unit_Name |
A(50) |
|
Таблица 2 – Сущность Справочник материалов (Materials)
Наименование атрибута |
Имя поля БД |
Тип поля |
Дополнительные характеристики |
Номенклатурный номер |
Mat_N |
I |
PK |
Наименование материала |
Mat_Name |
A(50) |
|
Цена за единицу |
Mat_Price |
$ |
|
Таблица 3 – Сущность Остатки материалов (Ostastok)
Наименование атрибута |
Имя поля БД |
Тип поля |
Дополнительные характеристики |
Номенклатурный номер |
Ost_Nmat |
I |
PK |
Количество |
Ost_Count |
I |
|
Резерв |
Ost_reserv |
I |
|
Таблица 4 – Сущность Заявки (Request)
Наименование атрибута |
Имя поля БД |
Тип поля |
Дополнительные характеристики |
Уникальный идентификатор |
Req_ID |
+ |
PK |
Номер заявки |
Req_N |
I |
|
Дата |
Req_D |
D |
|
Код подразделения |
Req_UnitID |
I |
|
Номенклатурный № |
Req_Nmat |
I |
|
Количество |
Req_Count |
N |
|
Для реализации функций поиска информации в таблицах базы данных были созданы индексы. Описание индексов приведено в таблице 5.
Таблица 5 – Описание индексов
Таблица |
Имя индекса |
Поля |
Unit |
idxUnit_ID |
Unit_ID |
Materials |
idxMat_N |
Mat_N |
idxMat_Name |
Mat_Name |
|
Ostatok |
idxOst_Nmat |
Ost_Nmat |
Request |
idxReq_ID |
Req_ID |
idxReq_N |
Req_N |
|
idxReq_Dat |
Req_Dat |
Для контроля вводимых значений в таблицах были установлены правила контроля. Их описание приведено в таблице 6.
Таблица 6 – Правила контроля полей
Таблица |
Поле |
Правило контроля |
Unit |
Unit_ID |
Minimum value=1 |
Materials |
Mat_N |
Minimum value=1 |
Mat_Price |
Minimum value=0 |
|
Ostatok |
Ost_Count |
Minimum value=0 |
Ost_Reserv |
Minimum value=0,Value< Ost_Count.Value |
|
Request |
Req_N |
Minimum value=1 |
Req_Count |
Minimum value=0 |
2. Описание программного проекта
Программный проект Warhouse включает в себя следующие файлы:
1.Файл проекта: Warhouse.dpr
2.Файлы форм: uDM.dfm, uMat.dfm, uEdMat.dfm, uUnit.dfm, uEdUnit.dfm, uOstatok.dfm, uRptConf.dfm, uRpt.dfm, uWH.dfm
3.Файлы программных подулей: uDM.pas, uMat.pas, uEdMat.pas, uUnit.pas, uEdUnit.pas, uOstatok.pas, uRptConf.pas, uRpt.pas, uWH.pas
Формы предназначены для вывода графических элементов интерфейса для взаимодействия с пользователем. Их назначения описаны в таблице 6.
Таблица 6 – Описания файлов форм проекта.
Имя файла формы |
Назначение |
uDM |
Модуль данных, невидимая форма, осуществляет подключение к базе данных и хранит информации о наборах данных. |
uMat |
Предназначена для работы со справочником материалов |
uEdMat |
Предназначена для редактирования справочника материалов и добавления в него новых записей |
uUnit |
Предназначена для работы со справочником подразделений |
uEdUnit |
Предназначена для редактирования справочника подразделений и добавления в него новых записей |
uOstatok |
Предназначена для работы с информацией по остаткам |
uRptConf |
Предназначена для указания параметров формирования отчета |
uRpt |
Макет отчета |
uWH |
Предназначена для работы с информацией по заявкам, а также является главной формой, реализует доступ ко всем функциям проекта. |
Программные модули это автономно (отдельно) компилируемая программная единица, которая содержит компоненты раздела описаний (меток, констант, типов, переменных, процедур, функций), а также может содержать операторы инициализирующей части. Сам модуль не является выполняемой программой, а предназначен для использования другими программами и модулями. Назначение модулей представлено в таблице 7.
Таблица 6 – Описания файлов форм проекта.
Имя модуля |
Назначение |
uDM |
Модуль данных |
uMat |
Хранит алгоритм работы со справочником материалов |
uEdMat |
Хранит алгоритм редактирования справочника материалов и добавления в него новых записей |
uUnit |
Хранит алгоритм работы со справочником подразделений |
uEdUnit |
Хранит алгоритм редактирования справочника подразделений и добавления в него новых записей |
uOstatok |
Хранит алгоритм работы с информацией по остаткам |
uRptConf |
Хранит алгоритм указания параметров формирования отчета |
uRpt |
Хранит алгоритм построения макета отчета |
uWH |
Хранит алгоритм работы с информацией по заявкам, а также алгоритм построения отчета |
3. Описание алгоритма формирования отчета
Алгоритм формирования отчета имеет следующий вид:
1. Вывод окна для задания параметров отчета. Если нажата кнопка «Отмена» - выход из процедуры. Если номер начала диапазона заявок больше номера конца диапазона то вывод сообщения об ошибке и выход из процедуры.
2. При первом формировании отчета создание временной таблицы, при последующих формированиях ее очистка.
а) Создание полей временной таблицы. Описания полей приведены в таблице 8.
Таблица 8 – Поля временной таблицы
Имя поля |
Описание |
Тип |
MatN |
Номенклатурный номер |
I |
MatName |
Наименование материала |
A(50) |
SvOst |
Свободный остаток |
N |
Zak |
Заказано подразделениями |
N |
Sum |
Сумма недостачи |
N |
б)Создание индексов временной таблицы.Описания индексов приведены в таблице 9
Таблица 9 – Идексы временной таблицы
Имя индекса |
Поле |
Опции |
|
MatN |
ixPrimary |
idxSum |
Sum |
ixDescending |
в)Установка идекса по ключевому полю как текущего.
3. Открытие временной таблицы.
4. В цикле просматриваются строки таблицы «Заявки».
а) По коду товара ищется запись в таблице остатков. Если запись не найдена, то свободный остаток для материала равен нулю.
б) Проверяем запись на соответствие параметрам отчета: номер входит в диапазон, заявка испытывает нехватку материалов.
в) Проверяем наличие во временной таблице записи с номенклатурным номером в текущей строке.
г) Если такой записи нет, то добавляем, если есть - то переводим временную таблицу в режим редактирования.
д) Корректируем значения полей «Свободный остаток», «Заказано подразделениями», «Сумма недостачи».
5. Заполняем заголовок отчета.
6. Устанавливаем индекс idxsum как текущий.
7. Выводим отчет в режиме Priview.
8. Закрываем временную таблицу.
Блоксхема процедуры формирования отчета представлена на рисунках 2–2б.
Рисунок 2 – Блок-схема процедуры формирования отчета
Рисунок 2а – Блок-схема процедуры формирования отчета (продолжение 1)
Рисунок 2б – Блок-схема процедуры формирования отчета (продолжение 2)
Листинг процедуры формирования отчета представлен в разделе 7, в исходном тексте модуля uWH.
4. Руководство программиста
Для установки программы необходимо разместить исполняемый файл Warhouse.exe данных в папке C:\Program Files\Warhouse.
Файлы базы данных необходимо разместить в каталоге C:\Program Files\Warhouse\db. После этого необходимо в программе BDE Administrator создать псевдоним для обращения к базе данных. Псевдоним должен иметь имя WarhouseDB и в поле Path должен быть указан путь размещения файлов базы данных (C:\Program Files\Warhouse\db). Также, драйвер работы с файлами Paradox, должен быть сконфигурирован для работы с кириллицей.
Ярлык приложения необходимо разместить в удобном для пользователя месте (например на рабочем столе), в качестве объекта указать путь к исполняемому файлу (C:\Program Files\Warhouse\Warhouse.exe), именем ярлыка установить «Склад материальных ценностей».