Автор работы: Пользователь скрыл имя, 12 Октября 2013 в 02:17, курсовая работа
Ведется учет продажи ж/д билетов. По каждому поезду известны: номер, тип поезда (экспресс, скорый, пассажирский), пункт назначения, дата и время отправления.
Поезда включают вагоны разных типов: код, наименование (плацкарт, купе, и т.д.), пассажировместимость.
При продаже билетов учитывается: фамилия И.О. пассажира, номер удостоверения личности, дата отправления, номер поезда, номер вагона, тип вагона, номер места, стоимость билета.
1.	Проектирование базы данных	4
2.	Описание программного проекта	7
3.	Описание алгоритма формирования отчета	9
4.	Руководство программиста	13
5.	Руководство пользователя	14
6.	Описание контрольного примера	19
7.	Текст программы	22
8.	Выводы	38
	Список использованных источников
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное 
государственное бюджетное 
высшего профессионального образования
«Московский государственный текстильный университет
имени А.Н.Косыгина»
Кафедра автоматизированных систем обработки информации и управления
Отчет
по курсовой работе
по дисциплине «Базы данных»
Выполнил: Ильин Р.С. гр. 45т-10
Принял: Монахов В.И.
Москва 2012
 
Содержание
| Стр. | ||
| 1. | Проектирование базы данных | 4 | 
| 2. | Описание программного проекта | 7 | 
| 3. | Описание алгоритма формирования отчета | 9 | 
| 4. | Руководство программиста | 13 | 
| 5. | Руководство пользователя | 14 | 
| 6. | Описание контрольного примера | 19 | 
| 7. | Текст программы | 22 | 
| 8. | Выводы | 38 | 
| Список использованных источников | 
 
1.Проектирование базы данных
Ведется учет продажи ж/д билетов. По каждому поезду известны: номер, тип поезда (экспресс, скорый, пассажирский), пункт назначения, дата и время отправления.
Поезда включают вагоны разных типов: код, наименование (плацкарт, купе, и т.д.), пассажировместимость.
При продаже билетов учитывается: фамилия И.О. пассажира, номер удостоверения личности, дата отправления, номер поезда, номер вагона, тип вагона, номер места, стоимость билета.
Схема данных приведена на рисунке 1.
| Справочник поездов | 
| Номер поезда | 
| Тип поезда | 
| Пункт назначения | 
| Дата отправления | 
| Время отправления | 
| Продажа билетов | 
| ID | 
| Фамилия И.О. | 
| Номер удостоверения личности | 
| Дата отправления | 
| Номер поезда | 
| Номер вагона | 
| Тип вагона | 
| Номер места | 
| Стоимость билет | 
                              
1                             
∞
| Справочник вагонов | 
| Код вагона | 
| Наименование вагона | 
| Пасажировместимость | 
1
                              
Рисунок 1 – Схема базы данных
Описание сущностей 
Таблица 1 – Сущность Справочник поездов(SPRP)
| Наименование атрибута | Имя поля БД | Тип поля | Дополнительные характеристики | 
| Номер поезда | N_poezda | S | PK | 
| Тип поезда | Tip_poezda | A(50) | |
| Пункт назначения | Punkt_nazn | A(50) | |
| Дата отправления | Dat_otpr | D | |
| Время отправления | Vremya_otpr | T | 
Таблица 2 – Сущность Справочник Вагонов(SPRV)
| Наименование атрибута | Имя поля БД | Тип поля | Дополнительные характеристики | 
| Код вагона | Kod_tip | S | PK | 
| Наименование вагона | Naimen | A(50) | |
| Пасажировместимость | Pass_dvest | I | 
Таблица 3 – Сущность Продажа билетов (Book)
| Наименование атрибута | Имя поля БД | Тип поля | Дополнительные характеристики | 
| ID | ID | + | PK | 
| Фамилия И.О. | FIO_pas | A(50) | |
| Номер удостоверения личности | N_udost_lichn | S | |
| Дата отправления | Dat_otpr | D | |
| Номер поезда | N_poezda | S | |
| Номер вагона | N_vagona | S | |
| Тип вагона | Tip_Vagona | A(50) | |
| Номер места | N_mesta | S | |
| Стоимость билет | Stoim_bileta | $ | 
Для реализации функций поиска информации в таблицах базы данных были созданы индексы. Описание индексов приведено в таблице 4.
Таблица 4 – Описание индексов
| Таблица | Имя индекса | Поля | 
| SPRP | N_poezda_ind | N_poezda | 
| SPRV | Kod_tip_ind | Kod_tip | 
| Sale_Book | Dat_ind | Dat_otpr | 
| N_poezda | N_Poezda | |
| N_udost | N_udost_lichn | |
| N_Vagona | N_Vagona | |
| FIO_ind | FIO_pas | 
Для контроля вводимых значений в таблицах были установлены правила контроля. Их описание приведено в таблице 5.
Таблица 5 – Правила контроля полей
| Таблица | Поле | Правило контроля | 
| SPRV | N_Vagona | Minimum value=0 | 
| Book | N_mesta | Minimum value=1 | 
| SPRP | N_Poezda | Minimum value=1 | 
 
2. Описание программного проекта
Программный проект включает в себя следующие файлы:
1.Файл проекта: project.dpr
2. Файлы программных модулей: uDM.pas, uBook.pas, uRPTconf. pas, uSPRP.pas, uSPRV. pas, uSPRPizmdob.pas, uSPRVizmdob.pas, uSPRPsohr.pas, uSPRVsohr.pas, uRPT.pas.
3. Файлы форм: uDM.dfm, uBook.dfm, uRPTconf.dfm, uSPRP.dfm, uSPRV.dfm, uSPRPizmdob.dfm, uSPRVizmdob.dfm, uSPRPsohr.dfm, uSPRVsohr.dfm, uRPT.dfm.
Формы предназначены для вывода 
графических элементов 
Таблица 6 – Описания файлов форм проекта.
| Имя файла формы | Назначение | 
| uDM | Модуль данных, невидимая форма, осуществляет подключение к базе данных и хранит информации о наборах данных. | 
| uSPRP | Предназначена для работы со справочником поездов и добавления в него новых записей | 
| uSPRV | Предназначена для редактирования справочника вагонов и добавления в него новых записей | 
| uRPTConf | Предназначена для указания параметров формирования отчета | 
| uRPT | Макет отчета | 
| uBook | Предназначена для работы с продажами билетов, а также является главной формой, реализует доступ ко всем функциям проекта. | 
Программные модули это автономно (отдельно) компилируемая программная единица, которая содержит компоненты раздела описаний (меток, констант, типов, переменных, процедур, функций), а также может содержать операторы инициализирующей части. Сам модуль не является выполняемой программой, а предназначен для использования другими программами и модулями. Назначение модулей представлено в таблице 7.
 
Таблица 6 – Описания файлов форм проекта.
| Имя модуля | Назначение | 
| uDM | Модуль данных | 
| uSPRV | Хранит алгоритм работы со справочником вагонов и добавления в него новых записей | 
| uSPRP | Хранит алгоритм редактирования справочника поездов и добавления в него новых записей | 
| uRPTConf | Хранит алгоритм указания параметров формирования отчета | 
| uRPT | Хранит алгоритм построения макета отчета | 
| uBook | Хранит алгоритм работы с информацией о продаже билетов, а также алгоритм построения отчета | 
 
3. Описание алгоритма 
Алгоритм формирования отчета имеет следующий вид:
1. Вывод окна для задания 
2. При первом формировании 
а) Создание полей временной таблицы. Описания полей приведены в таблице 8.
Таблица 8 – Поля временной таблицы
| Имя поля | Описание | Тип | 
| N_Vag | Номер вагона | I | 
| Tip_Vagona | Тип вагона | A(50) | 
| Kol_prod_bil | Количество проданных билетов | I | 
| Stoimost | Стоимость | $ | 
| Proc_prod_mest | Процент проданных мест | I | 
б)Создание индексов временной таблицы.Описания индексов приведены в таблице 9
Таблица 9 – Идексы временной таблицы
| Имя индекса | Поле | Опции | 
| N_Vag | ixPrimary | 
в)Установка индекса по ключевому полю как текущего.
3. Открытие временной таблицы.
4. В цикле просматриваются 
4.1 ищется запись в 
таблице, если запись не 
а) Проверяем запись на соответствие параметрам отчета: дата входит в диапазон, указан город.
б) Проверяем наличие во временной таблице записи с номенклатурным номером в текущей строке.
в) Если такой записи нет, то добавляем, если есть - то переводим временную таблицу в режим редактирования.
г) Корректируем значения полей «количество», «стоимость»
5. Заполняем заголовок отчета.
6. Выводим отчет в режиме Priview.
7. Закрываем временную таблицу.
Блок-схема процедуры формирования отчета представлена на рисунках 2