Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
автосалон курсач.docx
Скачиваний:
124
Добавлен:
18.02.2016
Размер:
815.79 Кб
Скачать
    1. Постановка задачи

Проектируемая система должна хранить и обрабатывать информацию, введенную на основе входных документов, выдавать результаты обработки пользователю. Число расчетов системы невелико. На входе системы имеются количество заказов, которые необходимо выполнить, а также количество ресурсов (транспорт). Система определяет, каким образом оптимально выполнить все заказы с минимально затраченными ресурсами.

Система должна обеспечивать следующие возможности:

- возможность добавлять сведения обо всех видах автотранспорта (марка, цвет, характеристики, цена закупа, цена продажи автомобиля и др.);

- возможность добавления и изменений сведений о поставщиках и покупателях; возможность редактирования данных;

- учет прихода и реализации автомобилей;

- формировать перечень автомобилей, имеющихся в наличии на складе;

- осуществлять поиск автомобиля по определенным характеристикам;

- ставить автомобиль «на бронь» (если же автомобиль не приобретен через неделю после бронирования, то он снимается с брони);

2 Проектирование базы данных и приложения

2.1 Инфологическая модель предметной области

База данных автосалон по продаже автомобилей.

В соответствии с предметной областью система строится с учётом

следующих особенностей:

а) каждый автомобиль имеет свою характеристику;

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

в) каждого покупателя могут обслужить несколько продавцов персонала;

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

2.2 Даталогическая модель базы данных «Автосалон»

При разработке информационной системы учета деятельности хлебопекарни, были разработаны таблицы Microsoft Access 2010 а так же разработана система управления базой данных. Среда разработки СУБД использовался язык программирования Borland Delphi 7.

Начало проектирования информационной системы учета деятельности хлебопекарни одного и важных компонентов разработки таблиц Microsoft Access. В данных таблицах будут записываться с последующим хранением, а так же производить редактирование данных с помощью СУБД. Создание таблиц производится Файл-Создать. В окне Создание выберем - Новая база данных (рис 5.1).

Рисунок 1 – Создание базы данных.

Именуем базу данных, определим папку, в которой будет размещен этот файл и щелкаем кнопкой мыши на значке Создать (рис 5.2).

Рисунок 2 – Именование базы данных.

Переходим в режим «Конструктора» для того чтобы указать какой тип вводимых данных присвоить полям (рис.3).

Рисунок 3 – переход в режим конструктора

Вводим название полей и указываем тип данных соответствующему полю (рис.5.4).

Переключаемся в режим таблицы Главная - Режим таблицы, предварительно сохранив введенные данные. Откроется готовая таблица для ввода и редактирования, а также хранения в ней данных. Аналогичным образом создаем 6 таблиц (рис.5).

Рисунок 5 – Создание таблиц

Далее сохраняем и выходим из программы Microsoft Access.

2.3 Проектирование приложения базы данных

Для того чтобы пользователю было удобно пользоваться БД, потребуется создание СУБД. Для создаем СУБД будем использовать среду программирования Delphi7.

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

Создаем главную форму именуем ее как TfrmMain. Добавляем на форму компонент MainMenu из вкладки Standart. В MainMenu прописываем выпадающее меню, и в дальнейшем будем указывать каждой кнопке соответствующей ей путь к определенной форме (рис.5.6).

Добавим в проект модуль данных File\New\Data Module. Модуль данных – это не визуальный контейнер для размещения на нем не визуальных компонентов. Также модуль данных часто используют и для хранения глобальных переменных, общих функций и процедур, которые должны быть видны по всей программе. Модуль данных не имеет формы, но сохраняется как модуль в файле *.pas.

Свойству Name модуля данных мы присвоим имя fDM, а модуль сохраним как DM.pas.

Добавляем в модуль компонент ADOConnection с вкладки ADO. Этот компонент обеспечит связь других компонентов с базой данных при помощи механизма ADO. Связь обеспечивается свойством компонента ConnectionString. О основном у таких компонентов, как ADOTable тоже есть это свойство, однако, имея четыре таблицы, придется четыре раза устанавливать связь. Проще один раз соединиться компонентом ADOConnection и использовать его для связи других компонентов.

Двойным щелчком по свойству ConnectionString компонента ADOConnection. Откроется окно подключения компонента к ADO.

Нажимаем кнопку Build. Откроется новое окно, содержащее настройки подключения. Для связи с базой данных MS Access выбираем “Microsoft Jet 4.0 OLE DB Provider”.

Нажимаем на кнопку «Далее», либо переходим на вкладку «Подключение». Здесь необходимо выбрать или ввести базу данных. Так как файл с базой данных находится там же, где находится программа, то можно вручную вписать только имя файла с БД, без полного адреса. В этом случае вы сможете перемещать папку с клиентским приложением и базой данных и не нужно будет заново прописывать к ней путь (рис.5.8).

Рисунок 8 – Ввод имя базы данных

Далее нажимаем кнопку «Проверить соединение» после того как проверка соединения выполнена следует нажать на кнопку«ОК».

Установим свойство LoginPrompt компонента ADOConnection в False. Если этого не сделать, то при каждой попытке соединиться с базой данных будет выходить запрос на пользовательское имя и пароль, нам это не нужно, наша база данных без пароля. Свойство Connected переводим в True. Подключение выполнено.

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

Выделите все десять ADOTable (удерживая клавишу <Shift>), и в их свойстве Connection выберите связь ADOConnection1. Таким образом, все десять ADOTable мы подключим к базе данных.

Выделяем первый компонент ADOTable. Переименуйте его свойство Name в «queryMarka», а в свойстве TableName выберем таблицу базы – queryMarka.. Рядом с компонентом установим компонент DataSource из вкладки Data Access. Компонент DataSource предназначен для организации связи с наборами данных. Свойство Name компонента DataSource переименуем в DSLichData (DS – DataSource). В свойстве DataSet выберем таблицу queryMarka.

То же самое нужно проделать еще пять раз, подключая аналогичным образом компоненты DataSource к другим таблицам.

Свойство Active таблиц переведем в True, открыв их.

Перейдем на главную форму. Выберем команду File\Use Unit и подключим к ней модуль Data Module (DM). Теперь выберем в компонентах DBGrid в свойстве DataSource необходимые таблицы и там увидим содержимое этих таблиц.

Модуль данных со всем компонентами выглядить следующим образом (рис. 5.9).

Рисунок 5.9 – Модуль базыданных с компонентами.

Выделим оба компонента DBGrid и установим в True их свойства ReadOnly – только чтение. Таблицы будут связаны и нам не нужно, чтобы пользователь вводил данные отдельно в каждую таблицу. Мы для этого сделаем отдельную форму, а DBGrid будем использовать только для просмотра.

Необходимо установить связь между таблицами. Это требуется не только для того, чтобы в нижней сетке выходили данные только на сотрудника, выделенного в верхней сетке, но и для того, чтобы мы смогли в дальнейшем вводить связанные данные в окне редактора. Выделим модуль данных. Щелкним дважды по первой таблице, чтобы открыть редактор полей. Правой кнопкой щелкним по этому редактору и выберим команду Add all fields (добавить все поля). В окне редактора полей появились все поля таблицы.

Редактор полей предназначен для настройки параметров каждого поля, для добавления новых полей или удаления имеющихся. Если в редакторе полей нет ни одного поля, то в компоненте DBGrid будут отображены все поля таблицы, имеющие параметры по умолчанию. Если же мы добавили в редактор полей хотя бы одно поле, то сетка DBGrid его и отобразит. В редакторе можно для каждого поля изменить различные параметры, например, ширину колонки, название колонки, видимое это поле или нет, и т.п. Необходимо установить связь между таблицами. Это требуется не только для того, чтобы в нижней сетке выходили данные только на сотрудника, выделенного в верхней сетке, но и для того, чтобы мы смогли в дальнейшем вводить связанные данные в окне редактора. Выделим модуль данных. Щелкним дважды по первой таблице, чтобы открыть редактор полей. Правой кнопкой щелкним по этому редактору и выберим команду Add all fields (добавить все поля). В окне редактора полей появились все поля таблицы.

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

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

Для начала в окно диаграмм нужно добавить наши таблицы. Найдем их в окне дерева объектов Object TreeView. Нужно ухватится в этом окне мышью за название таблицы LichData и перетащиим ее в окно диаграмм. Таблица вместе с полями отобразится в окне. Если бы ранее мы не добавили все поля в окне редактора полей компонента ADOTable, то здесь мы не увидели бы полей. Точно также перетащим остальные таблицы. Связи главная – подчиненная делают кнопкой Master/Detail Connector, которую мы можем увидеть в верхней части окна диаграмм (предпоследняя). Нажмаем на кнопку, затем подведводим указатель мыши к боковой границе главной таблицы, нажмите левую кнопку и, удерживая ее, проведите линию к боковой границе таблицы Adres. Как только мы отпустим кнопку, появится окно связей