Разработка информационно-справочной системы по учету вагонов на подъездном пути предприятия

Детальная разработка информационно-справочной системы по учету железнодорожных вагонов на подъездном пути предприятия с целью автоматизации обработки информации по вагонам и расчета затрат на обслуживание подвижного состава. Проект модели базы данных.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 20.10.2008
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

12. Вид услуг (ID, Вид_услуг)

Таблица Вид услуг (Vid_uslug) содержит список услуг, предоставляемых для работы с вагоном. ID - уникальный идентификатор, счетчик. Поле Вид_услуг отводится под перечень услуг.

13. Вес (ID, Вес)

Таблица Вес (Ves) предназначена для хранения единиц измерения для высчитывания стоимости предоставляемых услуг. ID - уникальный идентификатор, счетчик. Поле Вес отводится под перечень единиц измерения.

4.1.2 Инфологическая модель данных "сущность-связь"

Для построения инфологической модели данных использовалось CASE-средство MS Access 2003, которое позволяет проектировать реляционные модели данных. MS Access - является одновременно и CASE-средством, и средой разработки , и очень мощным визуальным средством создания отчетности, ядром СУБД и средой исполнения.

Наиболее распространенным средством моделирования данных являются диаграммы "сущность-связь" (ERD). С их помощью определяются важные для предметной области объекты (сущности), их свойства (атрибуты) и отношения друг с другом (связи).

Модель данных представлена в виде схемы данных на рис.4.1.

Рис.4.1. Инфологическая модель данных "сущность-связь"

Типы связей, их название, связанные сущности и атрибуты, по которым связаны сущности, представлены в таблице 4.1.

Таблица 4.1.

Тип связи

Название связи

Связь между сущностями

Атрибуты

Один ко многим

относится

Station, Operations_s_vagonom

Id, key_Station_otpr

Один ко многим

относится

Station, Operations_s_vagonom

Id, key_Station_naznach

Один ко многим

относится

Front, Operations_s_vagonom

Id, key_Front_naznach

Один ко многим

относится

Front, Operations_s_vagonom

Id, key_Front_otpr

Один ко многим

относится

Vagon, Operations_s_vagonom

Id, key_vagon

Один ко многим

относится

Rod_vagona,

Vagon

Id, key_rod_vagona

Один ко многим

относится

Raion_dvizheniya, Vagon

Id, key_Raion_dvizh

Один ко многим

относится

Operations_s_vagonom, Uslugi_sv

Id, key_vagon

Один ко многим

относится

Operation, Operations_s_vagonom

Id, key_operation

Один ко многим

относится

Gruz, Operations_s_vagonom

Id, key_Gruz

Один ко многим

состоит из

Stoimost, Uslugi_sv

Id, key_uslugi

Один ко многим

состоит из

Ceha, Uslugi_sv

Id, key_na

Один ко многим

относится

Ceha, Uslugi_sv

Id, key_s

Один ко многим

относится

Vid_uslug, Stoimost

Id, key_Vid_uslug

Один ко многим

относится

Ves, Stoimost

Id, key_ves

4.2 Проектирование логической модели базы данных

В качестве даталогической модели базы данных была выбрана реляционная модель, поскольку она обладает всеми ранее перечисленными достоинствами представления структур данных и внутренних связей.

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

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

На данном этапе необходимо также провести нормализацию полученных таблиц с целью устранения избыточности данных. Эта процедура в дальнейшем значительно облегчит усилия, которые будут затрачиваться на поддержании таблиц базы данных в целостном состоянии.

Если проанализировать значения полей таблицы "Вагоны", то видно, что некоторые поля, такие как, Род_вагона, Район_движения принимают некоторые значения из ограниченного набора, кроме того, эти значения представляют собой текстовые константы, которые могут быть довольно большие по длине. Аналогичными свойствами обладают поля Станция_отправления, Станция_назначения, Фронт_отправления, Фронт_назначения, Операция, Груз, Вид_услуг, Цех_отправитель, Цех_получатель, Вес других таблиц. Такие значения лучше всего хранить в отдельной таблице со своими уникальными номерами, а вместо этих длинных строк подставлять значение уникальных номеров, которые назначены каждой строке. Это позволит сократить дисковое пространство для хранения данных. Пользователь, таким образом, может выбрать некоторые значения этих полей из предложенного в списке, что несколько ускорит процесс заполнения базы данных, поскольку освобождает его от набора длинной последовательности одних и тех же строк.

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

4.3 Проектирование физической модели базы данных

База данных организованна в популярном формате локальных баз данных Microsoft Access 2003. Основная цель при разработке Access 2003 состояла в упрощении построения и применения баз данных. Эта цель была достигнута благодаря предоставлению пользователям широкого круга средств, позволяющих легко отыскивать и применять большую часть возможностей продукта. К ним можно отнести: возможность речевого ввода, как для диктовки, так и для сценариев оперативного управления; благодаря новому дополнительному формату файлов Access 2003 ускоряется доступ пользователей и обработка больших баз данных; пользователь имеет возможность многократно отменять в конструкторе действия и восстанавливать результаты отмененного действия при работе с таблицами, запросами. Второй из основных целей разработки Access 2003 было упрощение доступа к важной информации и ее анализа, независимо от места расположения соответствующих данных. В приложении Access 2003 расширены возможности пользователя по доступу к информации баз данных корпоративного уровня, например Microsoft SQL Server.

В Access 2003 в полной мере реализовано управление реляционными базами данных. Система поддерживает первичные и внешние ключи и обеспечивает целостность данных, что предотвращает несовместимые операции обновления или удаления данных. Благодаря развитой системе определения ключевых полей и индексов при создании таблиц запросы будут выполняться с минимальными временными затратами. Кроме того, таблицы в Access 2003 снабжены средствами проверки допустимости данных, пре-дотвращающими некорректный ввод вне зависимости от того, как он осуществляется, а каждое поле таблицы имеет свой формат и стандартные описания, что существенно облегчает ввод данных. Access 2003 поддерживает все необходимые типы полей, в том числе, текстовый, числовой, счетчик, денежный, дата/время, MEMO, логический, гиперссылка и поля объектов OLE. Такое разнообразие типов данных может отвечать даже самым изысканным задачам, которым призвана служить создаваемая база данных. Кроме того, предусмотрена защита на уровне пользователя, что позволяет контролировать доступ к данным отдельных пользователей и целых групп.

База данных "Учет вагонов на подъездном пути на предприятии" представлена 13-ю таблицами (или по терминологии реляционных баз данных - 13-ю реляционными отношениями): Vagon, Operations_s_vagonom, Uslugi_sv, Stoimost, Station, Front, Rod_vagona, Raion_dvizheniya, Operation, Gruz, Ceha, Vid_uslug, Ves. Рассмотрим структуру каждой более подробно.

В таблице Vagon представлена общая информация о вагонах. Поля, их типы, и назначение представлены в таблице 4.2.

Таблица 4.2.

Имя поля

Тип поля

Назначение

Id

счетчик

Код вагона

myMonth

текстовый

Месяц

myYear

текстовый

Год

Nomer_vagona

текстовый

Номер вагона

Invent_nomer

числовой

Инвентарный номер вагона

Year_izgot

текстовый

Год изготовления вагона

Gruzopodemnost

числовой

Грузоподъемность

Key_Rod_Vagona

числовой

Код Рода вагона

Iznos

текстовый

Износ

Key_Raion_dvizh

числовой

Код Района движения

Первичным ключом таблицы является поле Id, которое однозначно определяет каждую запись в таблице. Поле Id поддерживает ссылочную целостность с таблицей Operations_s_vagonom с помощью поля key_vagon.

Некоторые поля, обозначающие однотипную информацию, например, поля Key_Rod_Vagona, Key_Raion_dvizh, имеют целочисленный тип, в котором закодировано определенное значение. Значения этих кодов сведены в таблицы Rod_vagona и Raion_dvizheniya, что продиктовано соображениями экономии памяти на дисковом пространстве.

В таблице Operations_s_vagonov представлена информация об операциях, производимых с вагоном. Поля, их типы, и назначение представлены в таблице 4.3.

Таблица 4.3.

Имя поля

Тип поля

Назначение

Id

счетчик

Код операции с вагоном

Key_Station_otpr

числовой

Код станции отправления

Key_Front_otpr

числовой

Код фронта отправления

Key_Station_naznach

числовой

Код станции назначения

Key_Front_naznach

числовой

Код фронта назначения

myDate

дата/время

Дата проведения операции

myTime

текстовый

Время проведения операции

Key_Operation

числовой

Код операции

Key_Gruz

числовой

Код груза

Weight

числовой

Вес

N_dor_ved

числовой

Номер дорожной ведомости

N_ved

числовой

Номер ведомости

Key_Vagon

числовой

Код вагона

Первичным ключом является поле Id, однозначно определяющее любую запись в таблице. Поле Id поддерживает ссылочную целостность с таблицей Uslugi_sv с помощью поля key_vagon и показывает операции и услуги для каждого вагона. Поля, обозначающие однотипную информацию, например, поля Key_Station_otpr, Key_Front_otpr, Key_Station_naznach, Key_Front_naznach, Key_Operation, Key_Gruz, Key_Vagon. Имеют целочисленный тип, в котором закодировано определенное значение. Значения этих кодов сведены в таблицы Station, Front, Operation, Gruz и Vagon, что продиктовано соображениями экономии памяти на дисковом пространстве. Поля myDate, myTime, N_dor_ved, N_ved были введены для учета времени занесения информации в БД.

Таблица Uslugi_sv представляет собой список предоставляемых услуг с их конечной стоимостью. Поля, их типы, и назначение представлены в таблице 4.4.

Таблица 4.4.

Имя поля

Тип поля

Назначение

Id

числовой

Код услуги со стоимостью

Zakaz

текстовый

Номер заказа

Key_vagon

числовой

Код вагона

Key_uslugi

числовой

Код услуги

Key_na

числовой

Код цеха получателя

Key_s

числовой

Код цеха оправителя

cena

денежный

Стоимость услуги

Первичным ключом является поле Id, однозначно определяющее любую запись в таблице. Поля Key_vagon, Key_uslugi, Key_na, Key_s имеют целочисленный тип, в котором закодировано определенное значение. Значения этих кодов сведены в таблицы Vagon, Stoimost, Ceha, что продиктовано соображениями экономии памяти на дисковом пространстве. Поле Cena является вычисляемым полем.

В таблице Stoimost представлена информация о стоимости предоставления услуги за единицу измерения. Поля, их типы, и назначение представлены в таблице 4.5.

Таблица 4.5.

Имя поля

Тип поля

Назначение

Id

счетчик

Код стоимости

Key_Vid_uslug

текстовый

Код вида услуги

Key_ves

числовой

Код единицы измерения

Stoimost

денежный

Стоимость за единицу измерения

Первичным ключом является поле Id. Поле key_uslugi поддерживает ссылочную целостность с таблицей Uslugi_sv и хранит код услуги. Поля Key_Vid_uslug и Key_ves имеют целочисленный тип, в котором закодировано определенное значение. Значения этих кодов сведены в таблицы Vid_uslug и Ves, что продиктовано соображениями экономии памяти на дисковом пространстве. Поле Stoimost является вычисляемым полем.

В таблице Station представляет собой список станций, по которым двигаются вагоны. Поля, их типы, и назначение представлены в таблице 4.6.

Таблица 4.6.

Имя поля

Тип поля

Назначение

Id

счетчик

Код станции

Station

текстовый

Название станции

Первичным ключом является поле Id. Поля key_station_otpr и key_station_naznach поддерживают ссылочную целостность с таблицей Operations_s_vagonom.

В таблице Front представлен список фронтов прибытия и отправления. Поля, их типы, и назначение представлены в таблице 4.7.

Таблица 4.7.

Имя поля

Тип поля

Назначение

Id

счетчик

Код фронта

Front

текстовый

Фронт

Первичным ключом является поле Id. Поля key_front_otpr и key_front_naznach поддерживают ссылочную целостность с таблицей Operations_s_vagonom. В таблице Rod vagona представлен список родов вагонов. Поля, их типы, и назначение представлены в таблице 4.8.

Таблица 4.8.

Имя поля

Тип поля

Назначение

Id

счетчик

Код рода вагона

Rod_vagona

текстовый

Род вагона

Первичным ключом является поле Id. Поле key_Rod_vagona поддерживает ссылочную целостность с таблицей Vagon.

В таблице Raion_dvizheniya представлен список районов движения вагонов. Поля, их типы, и назначение представлены в таблице 4.9.

Таблица 4.9.

Имя поля

Тип поля

Назначение

Id

счетчик

Код района движения

Raion_dvizh

текстовый

Район движения

Первичным ключом является поле Id. Поле key_Raion_dvizh поддерживает ссылочную целостность с таблицей Vagon. В таблице Operation представлен список предоставляемых операций. Поля, их типы, и назначение представлены в таблице 4.10.

Таблица 4.10.

Имя поля

Тип поля

Назначение

Id

счетчик

Код операции

Operation

текстовый

Наименование операции

Первичным ключом является поле Id. Поле key_Operation поддерживает ссылочную целостность с таблицей Operations_s_vagonom. В таблице Gruz представлен список грузов, перевозимых вагонами. Поля, их типы, и назначение представлены в таблице 4.11.

Таблица 4.11.

Имя поля

Тип поля

Назначение

Id

счетчик

Код груза

Gruz

текстовый

Наименование груза

Первичным ключом является поле Id. Поле key_Gruz поддерживает ссылочную целостность с таблицей Operations_s_vagonom. В таблице Ceha представлен список цехов, участвующих в операциях с вагонами. Поля, их типы, и назначение представлены в таблице 4.12.

Таблица 4.12.

Имя поля

Тип поля

Назначение

Id

счетчик

Код цеха

N_ceha

текстовый

Номер цеха

Bal_schet

числовой

Балансовый счет цеха

Первичным ключом является поле Id. Поля key_na и key_s поддерживают ссылочную целостность с таблицей Uslugi_sv. В таблице Vid uslug представлен список услуг, предоставляемых для работы с вагонами. Поля, их типы, и назначение представлены в таблице 4.13.

Таблица 4.13.

Имя поля

Тип поля

Назначение

Id

счетчик

Код услуги

Vid_uslug

текстовый

Вид услуги

Первичным ключом является поле Id. Поле key_Vid_uslug поддерживает ссылочную целостность с таблицей Stoimost.

В таблице Ves представлен список единиц измерения для вычилсения стоимости услуг. Поля, их типы, и назначение представлены в таблице 4.14.

Таблица 4.14.

Имя поля

Тип поля

Назначение

Id

счетчик

Код единицы измерения

Ves

текстовый

Единица измерения

Первичным ключом является поле Id. Поле key_ves поддерживает ссылочную целостность с таблицей Stoimost. Такой способ представления данных является наиболее удобным, поскольку позволяет легко сохранять целостность базы данных, т.к. данные находятся в одном месте, и при изменении значения нет необходимости изменять значения во всех записях таблицы, использующих это значение.

Глава 5. Реализация проекта

5.1 Набор компонентов, используемых для создания приложений

Созданная структура, схема которой представлена в Microsoft Access (рис. 5.1.), стала основой для разработки приложения, которое предоставит пользователям необходимые им функциональные возможности.

Рис. 5.1. Схема данных

Все описанные таблицы, составляющие основу базы данных, функционируют в рамках созданной системы управления базой данных по учету вагонов на подъездном пути. СУБД по учету вагонов на подъездном пути создана средствами среды программирования Delphi 7.0 и реализует все необходимые требования, которые предъявлялись в постановке задания, и выполняет полный круг задач, с которыми сталкиваются работники предприятия по учету компьютерного оборудования.

5.2 Работа с режимами программы Diplom

В данной дипломной работе описывается информационно-справочная система по учету нахождения вагонов на подъездном пути. Для того чтобы начать работу с программой необходимо включить системный блок и монитор ПК. Для работы программы необходимо наличие операционной системы Windows 98 или выше. После загрузки ПК следует скопировать программу на жесткий диск. Для этого следует установить носитель с программой в привод, затем:

если вы находитесь в операционной системе типа DOS в командной строке, вам необходимо указать путь к приводу, в котором находится носитель с программой, например: "а:\". Затем произвести копирование с носителя в заранее созданный вами каталог на жестком диске;

если вы находитесь в операционной системе Windows вам следует дважды щелкнуть левой кнопкой мышки по иконке "Мой компьютер", затем дважды щелкнуть на иконке привода, в котором установлен носитель с программой, например: "Диск 3,5 (А)". Затем следует выделить и скопировать все файлы с носителя в созданную вами папку на жестком диске.

Процедура копирования выполняется один раз после приобретении данной программы.

После процедуры копирования вам следует зайти в папку, в которую вы скопировали программу, и щелкнуть дважды левую кнопку мышки на файле diplom.exe для запуска программы. На экране появится основная форма программы (рисунок 5.2).

Рисунок 5.2

На главной форме отображена информация обо всех вагонах на подъездных путях (месяц, год, номер вагона, инвентарный номер вагона, год изготовления, износ, род вагона, район движения). При первом запуске программы список вагонов пуст.

Меню главной формы: "Файл" и "Помощь".

При открытии меню "Файл" можно увидеть подменю "Выход" и подменю "Печать отчетов" (рисунок 5.3). Подменю "выход" предназначено для выхода из программы, так же для выхода можно использовать крестик (х), располагающийся на окне в правом верхнем углу.

Рисунок 5.3

Подменю "Печать отчетов" открывает форму отчетов (рисунок 5.4)

Рисунок 5.4

В этой форме представлена вся информация, необходимая для отчетности по вагонам. Форма содержит меню "Сортировка", "Фильтрация", "Полная", "Печать".

При нажатии клавишей мыши на меню "Сортировка" появится форма "Сортировка" (рисунок 5.5).

Рисунок 5.5

В этой форме можно отсортировать информацию в отчете по выбранному одному или нескольким выбранным критериям. Для этого следует выбрать сначала тип сортировки (по возрастанию или по убыванию), затем выбрать критерий сортировки. Если сортировка производится по одному критерию, то после его выбора следует нажать мышью кнопку "Close". Если сортировка будет производиться по нескольким критериям, то после выбора каждого из них следует нажимать кнопку "Next", после окончания выбора следует нажать кнопку "Close".

При открытии меню "Фильтрация", появляется подменю "В диапазоне" и "Вне диапазона". В зависимости от выбранного критерия фильтрации, будет отобрана информация, принадлежащая указанному диапазону (в диапазоне) или не принадлежащая диапазону (вне диапазона). При нажатии на какое-либо из подменю появляется форма "Фильтрация" (рисунок 5.6).

Рисунок 5.6

Информацию можно отфильтровать либо по одному полю, либо нескольким. Управление производится аналогично управлению формой "Сортировка". Диапазон указывается в нижних полях.

Меню "Полная" позволяет отобразить все имеющиеся в БД вагоны и информацию о них.

Меню "Печать" открывает форму отчета (рисунок 5.7).

Рисунок 5.7

В форме можно увидеть информацию, которая будет выведена на печать. Для вывода на печать следует кликнуть мышью значок принтера.

Меню "Помощь" содержит подменю "Справка" и "О программе" (рисунок 5.8)

Рисунок 5.8

При входе в подменю "О программе" появляется окно со справкой о программе (в данном случае фамилия разработчика) (рисунок 5.9). При входе в меню "Справка" открывается окно помощи по работе с программой (рисунок 5.10).

Рисунок 5.9

Рисунок 5.10

В главной форме (рисунок 5.1) при нажатии правой кнопки мыши на поле в списке вагонов, появляется всплывающее меню, которое состоит из следующих пунктов: "Добавить", "Удалить" и "Редактировать".

При нажатии пункта "Добавить" появляется диалоговое окно для ввода данных (рисунок 5.11). Вводимыми данными являются: месяц и год занесения данных, номер вагона, инвентарный номер вагона, год изготовления, грузоподъемность, литер, принадлежность, износ (%), род вагона, район движения.

Рисунок 5.11

Поля Номер, Инвентарный номер, Грузоподъемность являются числовыми, а потому вводить можно только числа. В противном случае появляется диалоговое окно (рисунок 5.12), в котором следует нажать "ОК" и правильно ввести данные.

Рисунок 5.12

При помещении курсора в поле Род вагона, появляется диалоговое окно (рисунок 5.13), в котором можно выбрать требуемый род вагона.

Рисунок 5.13

Поля в этом диалоговом окне можно добавлять и удалять. Для добавления данных следует в поле Род вагона ввести наименование, после чего нажать "Оk" и данные будут добавлены в список. Для удаления следует правой клавишей мыши щелкнуть на строке, которую следует удалить и в появившемся меню нажать "Удалить" левой кнопкой мыши. Для выбора данных из списка следует левой кнопкой мыши щелкнуть на нужной строке. После этой откроется диалоговое окно (рисунок 5.14) "Район движения".

Рисунок 5.14

Это диалоговое окно также можно вызвать, поместив курсор в поле "Район движения" в диалоговом окне "Информация по вагону".

Поля в диалоговом окне "Район движения" можно добавлять и удалять. Для добавления данных следует в поле Район движения ввести наименование, после чего нажать "Оk" и данные будут добавлены в список. Для удаления следует правой клавишей мыши щелкнуть на строке, которую следует удалить и в появившемся меню нажать "Удалить" левой кнопкой мыши. Для выбора данных из списка следует левой кнопкой мыши щелкнуть на нужной строке.

После заполнения всех полей следует нажать кнопку "ОК". Если заполнены были не все поля, то появится сообщение (рисунок 5.15):

Рисунок 5.15

В сообщении следует нажать кнопку "Оk" левой клавишей мыши и заполнить все поля в диалоговом окне. После чего снова нажать " Оk ". Если такая запись уже есть, то появится сообщение об этом (рисунок 5.16):

Рисунок 5.16

В сообщении следует нажать "Оk" левой клавишей мыши и проверить введенную информацию и нажать кнопку "Оk" в диалоговом окне "Информация по вагону".

Если все было введено верно, то нижняя часть диалогового окна станет активной (рисунок 5.16)

Рисунок 5.16

Нижняя часть озаглавлена как "Операции с вагоном". Здесь находится список операций, проводимых с вагоном. Изначально список пуст. Для его заполнения нужно на поле данных щелкнуть правой кнопкой мыши и выбрать из появившегося меню "Добавить". Откроется диалоговое окно "Информация по вагону" (рисунок 5.17), где нужно внести данные: Номер ведомости, Номер дорожной ведомости, Дата проведения операции, Время проведения операции, Станция отправитель, Фронт отправления, Станция получатель, Фронт получения, Операция, Груз, Вес груза.

Рисунок 5.17

Поля Номер ведомости, Номер дорожной ведомости, Вес груза являются числовыми. Поэтому в случае ввода букв или символов появится сообщение (рисунок 5.18):

Рисунок 5.18

В появившемся окне необходимо нажать "Оk" и исправить неверно введенные данные.

Данные для заполнения полей Станция отправитель, Станция получатель берутся из списков (рисунок 5.19).

Рисунок 5.19

Для выбора станции нужно щелкнуть два раза левой клавишей мышки на нужной станции. Для того чтобы добавить в список станцию нужно ввести в поле Станция отправитель/получатель название станции и нажать "Оk", после чего новая станция появится в списке. Для того чтобы удалить из списка станцию, необходимо щелкнуть правой клавишей мыши на названии станции в поле данных и в появившемся меню выбрать "Удалить". Станция будет удалена.

Данные для заполнения полей Фронт отправления, Фронт получения берутся из списков (рисунок 5.20).

Рисунок 5.20

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

Данные для заполнения поля Операция берутся из списка (рисунок 5.21).

Рисунок 5.21

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

Данные для заполнения поля Груз берутся из списка (рисунок 5.22).

Рисунок 5.22

Для выбора груза нужно щелкнуть два раза левой клавишей мышки на нужном грузе. Для того чтобы добавить в список груз нужно ввести в поле Груз название груза и нажать "Оk", после чего новый груз появится в списке. Для того чтобы удалить из списка груз, необходимо щелкнуть правой клавишей мыши на названии груза в поле данных и в появившемся меню выбрать "Удалить". Груз будет удален.

После ввода всех данных необходимо нажать кнопку "Оk" в диалоговом окне "Информация по вагону".

Если все было введено верно, то нижняя часть диалогового окна станет активной (рисунок 5.23)

Рисунок 5.23

Нижняя часть озаглавлена как "Перечень работ". Здесь находится список работ, проводимых с вагоном. Изначально список пуст.

Для его заполнения нужно на поле данных щелкнуть правой кнопкой мыши и выбрать из появившегося меню "Добавить". Откроется диалоговое окно "Заказ" (рисунок 5.24), где нужно внести данные: Номер заказа, Цех заказчик, Цех исполнитель и выбрать из предлагаемого списка в нижней части диалогового окна вид услуги.

Рисунок 5.24

Поле Номер заказа является числовым. Поэтому в случае ввода букв или символов появится сообщение (рисунок 5.25):

Рисунок 5.25

В появившемся окне необходимо нажать "Оk" и исправить неверно введенные данные.

Данные для заполнения полей Цех заказчик, Цех исполнитель берутся из списков (рисунок 5.26).

Рисунок 5.26

Для выбора цеха нужно щелкнуть два раза левой клавишей мышки на нужном номере цеха. Для того чтобы добавить в список цех нужно ввести в поле Цех заказчик/исполнитель номер цеха и нажать "Оk", после чего новый номер цеха появится в списке. Для того чтобы удалить из списка номер цеха, необходимо щелкнуть правой клавишей мыши на нужном номере цеха в поле данных и в появившемся меню выбрать "Удалить". Цех будет удален.

Чтобы выбрать необходимый вид услуги из списка в нижней части диалогового окна, нужно дважды щелкнуть левой кнопкой мыши по нужной услуге. После чего данные будут добавлены. Услуги можно добавлять, удалять и редактировать.

Для добавления услуги нужно правой кнопкой мыши нажать на поле данных и в появившемся меню выбрать "Добавить". После чего появится диалоговое окно "Справочник по ценам" (рисунок 5.27).

Рисунок 5.27

В этом окне можно добавить услугу, внеся данные по ней: Вид работы, Единица измерения, Цена за единицу измерения. Исходя из этих данных, рассчитывается стоимость услуги, оказанной для конкретного вагона. После ввода данных нужно нажать кнопку "Оk". После чего новый вид услуги появится в списке.

Данные для заполнения поля Вид работы берутся из списка (рисунок 5.28).

Рисунок 5.28

Для выбора вида услуги нужно щелкнуть два раза левой клавишей мышки на нужной услуге. Для того чтобы добавить в список новую услугу нужно ввести в поле Вид услуг название услуги и нажать "Оk", после чего новая услуга появится в списке. Для того чтобы удалить из списка услугу, необходимо щелкнуть правой клавишей мыши на названии услуги в поле данных и в появившемся меню выбрать "Удалить". Услуга будет удалена.

Данные для заполнения поля Единица измерения берутся из списка (рисунок 5.29).

Рисунок 5.29

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

Для редактирования уже имеющейся услуги, необходимо правой кнопкой мыши щелкнуть на нужной строке и в появившемся меню выбрать "Редактировать". После чего появляется окно редактирования (рисунок 5.30).

Рисунок 5.30

В этом окне можно изменить вид работы, единицу измерения и цену за единицу измерения описанным выше способом.

Для удаления какой-либо услуги из списка необходимо правой клавишей мыши нажать на нужной строке и в появившемся меню выбрать "Удалить".

После введения всех данных, в главном диалоговом окне появляется новая строка с добавленной информацией.

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

Также в главной форме организован поиск. Для этого необходимо нажать сочетание клавиш ctrl+f, после чего появится окно поиска (рисунок 5.31).

Рисунок 5.31

Поиск производится по инвентарному номеру вагона. Для поиска необходимо в поле ввести инвентарный номер вагона и нажать кнопку "Ok".

Глава 6. Выбор инструментальных средств

6.1 Выбор аппаратных средств

При выборе аппаратных средств для разработки программного продукта (ПП) наибольшую роль играет фактор быстродействия работы ПЭВМ. Поскольку именно от него зависит время разработки ПП, а соответственно затраты на разработку и его себестоимости.

Требования, предъявляемые к операционной системе: операционная система Win 2K SP4 или WinXP с установленными MDAC (Microsoft Data Access Components) 2.6 и ранее, а также Microsoft Jet 4.0.

Требования к аппаратной части компьютера определяются установленной операционной системой.

6.2 ERwin - современное средство проектирования баз данных

Проектирование инфологической модели базы данных осуществлялось с помощью инструментов автоматизированного проектирования и создания программ, которые принято называть CASE-инструментами (Computer-Aided Software Engineering), а именно, ERwin компании Computer Associates. Использование CASE-инструментов способствует повышению производительности труда разработчиков и обеспечению эффективности самой разрабатываемой системы.

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

ERwin облегчает проектирование баз данных. Для этого достаточно создать графическую ER-модель (сущность-связь), удовлетворяющую всем требованиям к данным и ввести правила для создания логической модели, которая отображает все элементы, атрибуты, отношения и группировки. Можно расширить возможности ERwin, воспользовавшись уникальной поддержкой пользовательских свойств для ввода в модель любой дополнительной информации, значимой для деятельности предприятия.

ERwin - не просто инструмент для "рисования"; он автоматизирует процесс проектирования. Например, ERwin предусматривает возможность создания каталога наиболее часто используемых атрибутов, что обеспечивает согласованность имен и описаний по всему проекту. Представления БД поддерживаются как интегрированные компоненты модели, что позволяет автоматически отображать в их описаниях изменения, внесенные в базовые таблицы. Автоматический перенос ключей обеспечивает ссылочную целостность базы данных. Кроме того, ERwin позволяет работать с большими моделями общекорпоративного масштаба, разбивая их на фрагменты и легко управляемые подмножества, предоставляя отдельным специалистам возможность сосредоточить свои усилия в определенной области. Возможность сохранения отображений позволяет хранить множество представлений одной предметной области, ориентированных на различную целевую аудиторию. Созданные с помощью ERwin модели данных можно редактировать, просматривать и распечатывать различными способами.

ERwin - не только лучший инструмент для проектирования баз данных, но и средство для их быстрого создания. ERwin оптимизирует модель в соответствии с физическими характеристиками целевой базы данных. В отличие от других инструментальных средств ERwin автоматически поддерживает согласованность логической и физической схем и осуществляет преобразование логических конструкций, таких как отношения "многие ко многим", в их реализацию на физическом уровне.

ERwin устанавливает естественную динамическую связь между моделью и базой данных, что позволяет реализовать как прямой, так и обратный инжиниринг. Используя эту связь, ERwin автоматически генерирует таблицы, представления, индексы, правила поддержания целостности ссылок (первичных и внешних ключей), устанавливает значения по умолчанию и ограничения для доменов/столбцов.

ERwin интегрирует проектирование базы данных в процесс разработки приложения. Благодаря возможностям взаимодействия с популярными средствами разработки для архитектуры клиент/сервер и Web, ERwin поддерживает соответствие между серверной базой данных и формами в клиентской части, позволяя ускорить создание высококачественных приложений.

CASE-средство ERWin было выбрано в качестве средства проектирования базы данных по следующим причинам:

ERWin поддерживает прямое (создание БД на основе модели) и обратное (генерация модели по имеющейся базе данных) проектирование для 20 типов СУБД;

увеличивает производительность труда благодаря удобному интерфейсу и уменьшает число рутинных операций, облегчает и сокращает работу;

позволяет максимально повысить производительность информационной системы благодаря поддержке работы с БД на физическом уровне, учитывая особенности каждой конкретной СУБД;

поддерживает методологию структурного моделирования;

позволяет повторно использовать компоненты созданных ранее моделей, а также использовать наработки других разработчиков, что повышает эффективность работы;

позволяет переносить структуру БД из СУБД одного типа СУБД в другой;

позволяет документировать структуру БД (позволит получить отчеты презентационного качества);

продукт можно использовать на всех стадиях жизненного цикла баз данных: при проектировании, разработке, тестировании и поддержке;

позволяет получить точную и наглядную информацию, где хранятся данные и как получить к ним доступ;

позволяет, используя визуальные средства, описать структуру БД, а затем автоматически сгенерировать файлы данных для любого типа СУБД;

продукт легко освоить.[11]

6.3 Microsoft Access 2003

Microsoft Access 2003 представляет собой мощную и устойчивую 32-разрядную систему управления реляционными базами данных (СУРБД), которая предназначена для создания настольных приложений и приложений клиент/сервер, работающих под управлением Windows 2000 и XP, а также.

Microsoft Access со дня своего появления в 1992г. остается одним из наиболее гибких и эффективных приложений пакета Office. Об этом свидетельствует развитый набор средств, достоинства которых признаются даже самыми опытными пользователями баз данных, а простота использования, присущая всем приложениям Office, делает эти средства доступными и для начинающих пользователей. В приложении Access 2003 отмеченные качества получили дальнейшее развитие, предоставив в распоряжение разработчикам и опытным пользователям новые функциональные возможности, позволяющие осуществлять доступ к важным данным и производить их глубокий анализ, а также создавать эффективные новые решения в этой области. В то же время Access упрощает для начинающих пользователей знакомство с возможностями данного приложения.

Производительность и эффективность.

Применяется ли база данных для фиксации сведений о продажах в пределах компании или просто для ведения каких-либо списков для личного пользования, работа с ней зачастую далеко не так проста и интуитивно понятна, как хотелось бы. Основная цель при разработке Access 2003 состояла в упрощении построения и применения баз данных. Эта цель была достигнута благодаря предоставлению пользователям широкого круга средств, позволяющих легко отыскивать и применять большую часть возможностей продукта.

Доступ к информации и ее анализ.

Второй из основных целей разработки Access 2003 было упрощение доступа к важной информации и ее анализа, независимо от места расположения соответствующих данных. В приложении Access 2003 расширены возможности пользователя по доступу к информации баз данных корпоративного уровня, например Microsoft SQL Server. Кроме того, в этой версии приложения Access усовершенствованы способы анализа пользователями этих данных с помощью динамических сводных таблиц и сводных диаграмм, ранее имевшихся только в приложении Excel, а также с помощью страниц доступа к данным, позволяющих пользователям распространять приложения корпоративных баз данных в Internet.

Расширенные возможности программирования для разработчиков.

Третья основная цель создателей Access состояла в предоставлении разработчикам средств, необходимых для создания развитых сложных баз данных, легко интегрирующихся со структурой данных предприятия, обеспечивая при этом прямую и обратную совместимость с существующими и новыми решениями. Access 2003 предоставляет средства для создания решений, интегрирующих и использующих преимущества Internet-стандартов, таких как XML, XSL и динамические веб-страницы. Эти решения позволяют лучше учитывать возможности совместного использования и представления данных в интрасетях и Internet.

Поддержка нескольких языков.

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

В Access в полной мере реализовано управление реляционными базами данных:

· система поддерживает первичные и внешние ключи;

· обеспечивает целостность данных на уровне ядра, что предотвращает несовместимые операции обновления или удаления данных;

· таблицы в Access снабжены средствами проверки допустимости данных, предотвращающими некорректный ввод;

· поддерживает все необходимые типы полей;

· система обеспечивает полную поддержку пустых значений;

· система Access поддерживает обработку транзакций с гарантией их целостности;

· предусмотрена защита на уровне пользователя, что позволяет контролировать доступ к данным отдельных пользователей и целых групп;

· предусмотрена контекстно-зависимая справка;

· позволяет импортировать и экспортировать файлы многих известных форматов.[12]

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

6.4 Язык SQL как стандартный язык баз данных

Определение реляционной системы требует, чтобы весь диалог с базой данных велся на едином языке - иногда его называют общим подъязыком данных (comprehensive data sublanguage). В мире коммерческих систем управления базами данных такой язык получил название SQL.

Язык SQL стал стандартом языков запросов для работы с реляционными базами, для архитектуры файл-сервер, клиент-сервер, а также в условиях применения системы управления распределенными базами данных, достаточно мощный язык для взаимодействия с СУБД, которая обрабатывает запрос, находит требуемые данные и посылает их пользователю.

SQL используется для манипуляций с данными (data manipulation) выборки и модификации, определения данных (data definition) и администрирования данных (data administration).

SQL является инструментом, предназначенным для обработки и чтения данных, содержащихся в компьютерной базе данных. SQL - это сокращенное название структурированного языка запросов (Structured Query Language). Как следует из названия, SQL является языком программирования, который применяется для организации взаимодействия пользователя с базой данных. На самом деле SQL работает только с базами данных реляционного типа.

В вычислительной системе имеется база данных, в которой хранится важная информация. Компьютерная программа, которая управляет базой данных, называется системой управления базой данных (СУБД). Если пользователю необходимо прочитать данные из базы данных, он запрашивает их у СУБД с помощью SQL. СУБД обрабатывает запрос, находит требуемые данные и посылает их пользователю. Процесс запрашивания данных и получения результата называется запросом к базе данных.[10]

6.4.1 Функциональные возможности языка SQL

Сегодня SQL представляет собой нечто гораздо большее, чем простой инструмент создания запросов, хотя именно для этого он и был первоначально предназначен. Несмотря на то, что чтение данных по-прежнему остается одной из наиболее важных функций SQL, сейчас этот язык используется для реализации всех функциональных возможностей, которые СУБД предоставляет пользователю, а именно:

Организация данных. SQL дает пользователю возможность изменять структуру представления данных, а также устанавливать отношения между элементами базы данных.

Чтение данных. SQL дает пользователю или приложению возможность читать из базы данных, содержащиеся в ней данные, и пользоваться ими.

Обработка данных. SQL дает пользователю или приложению возможность изменять базу данных, т.е. добавлять в нее новые данные, а также удалять или обновлять уже имеющиеся в ней данные.

Управление доступом. С помощью SQL можно ограничить возможности пользователя по чтению и изменению данных и защитить их от несанкционированного доступа.

Совместное использование данных. SQL координирует совместное использование данных пользователями, работающими параллельно.

Целостность данных. SQL позволяет обеспечить целостность базы данных, защищая ее от разрушения из-за несогласованных изменений или отказа системы.[10]

Таким образом, SQL является достаточно мощным языком для взаимодействия с СУБД.

6.4.2 Достоинства SQL

SQL - это легкий для понимания язык и в то же время универсальное программное средство управления данными. Успех языку SQL принесли следующие его особенности:

* независимость от конкретных СУБД;

* переносимость с одной вычислительной системы на другую;

* наличие стандартов;

* поддержка со стороны компании Microsoft (протокол ODBC);

* реляционная основа;

* высокоуровневая структура;

* возможность выполнения специальных интерактивных запросов;

* обеспечение программного доступа к базам данных;

* возможность различного представления данных;

* полноценность как языка, предназначенного для работы с базами данных;

* возможность динамического определения данных;

* поддержка архитектуры клиент/сервер.[10]

Все перечисленные выше факторы явились причиной того, что SQL стал стандартным инструментом для управления данными на персональных компьютерах, мини-компьютерах и больших ЭВМ.

SQL - это промышленный стандарт набора команд для управления базой данных, который используется средой разработки приложений Delphi.

6.5 Среда Delphi как средство для разработки СУБД

При разработке системы учета компьютерного оборудования на предприятии главными критериями выбора программных средств разработки являлись:

скорость разработки приложений;

возможность быстрого внесения изменений в программу;

возможность редактирования и просмотра БД, используя средства разработки.

Среди большого разнообразия продуктов для разработки приложений Delphi занимает одно из ведущих мест. С помощью Delphi написано колоссальное количество приложений, десятки фирм и тысячи программистов разрабатывают для Delphi дополнительные компоненты.

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

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

Язык, на котором предстоит работать пользователю Delphi, отличается от Pascal не только наличием множества новых понятий и конструкций, но и идейно: в нем вместо минимизации числа понятий и использования самых простых конструкций, предпочтение отдается удобству работы профессионального пользователя. Язык Turbo Pascal существенно превосходит Basic за счет полноценного объектного ориентированного подхода (ООП). [2]

По сравнению с традиционными способами программирования ООП обладает рядом преимуществ. Главное из них заключается в том, что эта концепция в наибольшей степени соответствует внутренней логике функционирования операционной системы (ОС) Windows. Программа, состоящая из отдельных объектов, отлично приспособлена к реагированию на события, происходящие в ОС. К другим преимуществам ООП можно отнести большую надежность кода и возможность повторного использования отработанных объектов.

6.5.1 Высокопроизводительный компилятор в машинный код

Компиляторы языка Pascal компании Borland никогда не заставляли пользователя подолгу ждать результатов компиляции. Производители утверждают, что на сегодня данный компилятор - самый быстрый в мире. Компилятор, встроенный в Delphi позволяет обрабатывать 120 тыс. строк исходного текста в минуту на машине 486/33 или 350 тыс. - при использовании процессора Pentium/90. Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения (4GL) и в то же время обеспечивает качество кода, характерного для компилятора 3GL.

В смысле проектирования Delphi мало отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем код при помощи интерпретатора. В Delphi компиляция производится непосредственно в родной машинный код. Это не может не сказаться на фактическом быстродействии готового приложения.

По всей вероятности, такая высокая скорость объясняется в первую очередь отказом от демонстрации в процессе работы числа скомпилированных строк. Следует отметить также, что благодаря опции оптимизации сегментов удается существенно сократить размер выполняемого файла. Можно запустить компилятор в режиме проверки синтаксиса. При этом наиболее длительная операция компоновки и изготовления исполняемого файла выполняться не будет. Среда Delphi включает в себя такие технические средства - интегрированный отладчик, пакетный компилятор и утилиты WinSight и WinSpector. Основное назначение утилиты WinSight - наблюдение за системой передачи сообщений Windows. Утилита WinSpector - позволяет узнать причины ошибочного завершения того или иного приложения.[2]

6.5.2 Библиотека визуальных компонент

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

Все классы библиотеки визуальных компонентов произошли от группы базовых классов, которые лежат в основе иерархии Visual Component Library (VCL). Поэтому иерархия базовых классов VCL продумана чрезвычайно тщательно - ведь на их основе создано все множество компонентов, используемых в Delphi. Особое место среди базовых классов, помимо TObject, занимают TComponent (от него происходят все компоненты) и TControl (от него происходят все элементы управления). В целом иерархия базовых классов обеспечивает полноценную работу разработчиков в Delphi, позволяя проектировать любые типы приложений.

Вслед за классом TComponent в иерархии базовых классов располагается группа из трех классов, которые обеспечивают создание различных визуальных компонентов. Визуальные компоненты - это разнообразные стандартные для Windows и специальные (созданные разработчиками Inprise) элементы управления.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.