База данных Access Продажи автомобилей
Вариант №3 – БД «Продажи автомобилей».
Постановка задачи. Создать базу данных «Продажи автомобилей» содержащую информацию о продажах автомобилей различных производителей.
1) База данных должна содержать следующую информацию:
• Таблицу «Производители», содержащую следующую информацию о производителях автомобилей: Название фирмы, Страна, Город, Телефон.
• Таблицу «Модели», содержащую информацию о моделях автомобилей: Модель, Цвет, Коробка передач, Тип кузова, Цена.
• Таблицу «Клиенты», содержащую информацию о клиентах: Фамилия, Имя, Отчество, Пол, Страна, Город, Телефон.
• Таблицу «Заказы», содержащую информацию о заказах автомобилей:Дата заказа, Количество.
2) Определить первичные и вторичные (внешние) ключи (если необходимо добавьте поля). Ввод данных в поля внешнего ключа, а также в поля с небольшим набором возможных значений организовывать с помощью мастера подстановок, а также предусмотреть маску ввода, где это возможно.
3) Установить связь между таблицами, предусмотрев обеспечение целостности данных, каскадное обновление связанных полей и каскадное удаление связанных записей.
4) Ввести не менее 4 записей в таблицы без внешнего ключа и не менее 10 записей в таблицы, содержащие поле внешнего ключа.
5) Создать следующие запросы, задав для них смысловые имена:
• Запрос на выборку. Для отображения количества заказов за первые 9 месяцев каждого года. На экран вывести следующие поля: Дата заказа, Количество.
• Параметрический запрос. Для определения клиентов каждого города, определяемого параметром, с указанием всех характеристик заказанных им автомобилей. На экран вывести следующие поля: Фамилия, Город, Телефон, Количество, Дата заказа.
• Запрос на обновление. Для снижения в таблице «Модели1» заводской цены на автомобили произвольной марки на 5% в связи проведением рекламной акции. Для этого создайте резервную копию таблицы «Модели», реализовав запрос на создание таблицы.
• Запрос на вычисляемое поле. Для отображения общего количества заказов определенной марки и цены автомобиля. Цена автомобиля составляет 85%, если количество заказов меньше 15 штук и 115%, если количество заказов больше 70 штук, в противном случае цена автомобиля остается неизменной.
• Перекрестный запрос. Для отображения общей суммы заказов автомобилей определенного цвета той или иной коробки передач.
• Запрос на групповые операции. Для отображения средней цены на автомобили разной коробки передач.
6) Создать следующие формы, задав для них смысловые имена.
• Подчиненную форму, отображающую данные из таблиц «Клиенты» и «Заказы». В созданную форму добавить кнопки для перехода между записями.
• Создать форму, отображающую следующую информацию: Название фирмы, Страна, Город, Телефон, Модель, Цвет, Коробка передач, Тип кузова, Цена.
7) Создать отчет, отображающий следующую информацию о заказах: Дата заказа, Количество, Фамилия, Модель, Цена. В область примечаний добавить общую сумму заказа данного клиента по следующей формуле =Количество*Цена.
8) Создать макросы для открытия всех таблиц базы данных. Задать смысловые имена макросам.
9) В режиме конструктора создать форму «Пользовательский интерфейс», позволяющую работать с созданной базой данных. На форме отобразить информацию о названии базы данных и об авторе. Поместить на форме командные кнопки, позволяющие открывать все таблицы, запросы, формы и отчеты, задать для них смысловые имена. Отредактировать форму с помощью элементов рисования панели элементов. Поместить на нее свою фотографию.
10) Создать макрос для автоматического открытия формы «Пользовательский интерфейс».
Таблица «Модели» — База данных Access Продажи автомобилей
Таблица «Заказы» — База данных Access Продажи автомобилей
Запрос «Всего продано» — База данных Access Продажи автомобилей
Форма «Клиенты» — База данных Access Продажи автомобилей
Отчет — База данных Access Продажи автомобилей
Пользовательский интерфейс — База данных Access Продажи автомобилей
Готовая база данных Access Продажи автомобилей доступна для скачивания по ссылке ниже.
Курсовая работа: Автоматизация работы фирмы по продаже автомобилей
Название: Автоматизация работы фирмы по продаже автомобилей Раздел: Рефераты по информатике, программированию Тип: курсовая работа Добавлен 06:00:46 27 ноября 2009 Похожие работы Просмотров: 1343 Комментариев: 15 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно Скачать | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Таблица «Счет-фактура» и «Торговый-чек» связана с таблицей «Автомобили» следующими связями:
Связь «Приобретение товара по номеру счета-фактуры» подразумевает, что при вводе нового счета-фактуры в таблицу «Автомобили» автоматически добавляется поле “номер счета-фактуры”.
Связь «Отпуск товара по номеру счета-фактуры» подразумевает, что при вводе нового поля “номер торгового чека” в таблицу «Автомобили» автоматически добавляется номер этого торгового чека.
Связь «Отпуск товара по коду покупателя» подразумевает, что при вводе нового покупателя в таблицу «Торговый-чек» в таблицу «Автомобили» автоматически добавляется код-покупателя.
Примечание: * — ключевые поля во всех таблицах.
2.4 Структурный анализ с помощью диаграмм “сущность — связь”
В данной курсовой работе присутствуют следующие таблицы:
Таблица 1: Автомобили (Avtom.db);
Имя поля | Тип данных | Размер поля |
N_Scheta_Fak | Числовой | |
Kod_Modeli | Счетчик | |
Name_Modeli | Текстовый | 15 |
Color | Текстовый | 10 |
Predlag_Zena | Денежный | |
Kol_vo_Door | Числовой | |
Engine_Power | Числовой | |
Type_Salon | Текстовый | 10 |
Таблица 2: Покупатели (Pok.db);
Имя поля | Тип данных | Размер поля |
Kod_Pokup | Текстовый | 10 |
Seria_Pass | Текстовый | 10 |
N_Pass | Текстовый | 10 |
L_Name | Текстовый | 20 |
F_Name | Текстовый | 20 |
S_Name | Текстовый | 20 |
Adres | Текстовый | 20 |
Phone | Текстовый | 20 |
Таблица 3: Счет-фактура (SchFa.db);
Имя поля | Тип данных | Размер поля |
N_Scheta_Fak | Числовой | |
Kol_vo_zakup_modelei | Текстовый | 10 |
Nazv_Zakup_Modeli | Текстовый | 15 |
Zavodsk_Zena | Денежный | |
Date_Zakup | Дата |
Таблица 4: Торговый чек (Torg_Chek);
Имя поля | Тип данных | Размер поля |
N_Torg_Cheka | Счетчик | |
Kod_Pokup | Текстовый | 10 |
Kod_Modeli | Текстовый | 10 |
Kol_Prod_Avto | Числовой | |
Zena_Prod | Денежный | |
Date_Prod | Дата |
Определение ключевых полей в таблицах:
Название таблицы | Название ключевого поля |
Автомобили | Номер Счета-фактуры |
Покупатели | Код покупателя |
Счет-фактура | Номер Счета-фактуры |
Торговый-чек | Номер Торгового чека |
Рис 2. Диаграмма “сущность-связь” (IDEF 1x).
Первичные ключи следующие:
Таблица: Автомобили – Kod_Modeli.
Таблица: Покупатель – Kod_Pokup.
Таблица: Счет-фактура – N_Scheta_Fak.
Таблица: Торговый чек – N_Torg_Cheka.
Внешние ключи следующие:
Таблица: Автомобили – N_Scheta_Fak.
Таблица: Автомобили – N_Torg_Cheka.
Таблица: Автомобили – Kod_Pokup.
Таблица: Торговый чек – Kod_Pokup.
Таблица: Автомобили – N_Scheta_Fak.
Рис 3. Диаграмма “сущность-связь” на русском языке.
Входными данными являются данные с формы Счет-фактура, т.к. закупка товара производится по “Счету-фактуре”.
Ввод данных осуществляется с помощью формы “новый счет-фактура”.Выходными данными являются данные с формы “Торговый чек”, т.к. отпуск товара осуществляется по этой форме.
Ввод данных на отпуск товара осуществляется с помощью формы “новый торговый чек”.
Замечание: На форме новый “новый торговый чек” присутствует элемент DBNavigator, он необходим для того чтобы, выбрать необходимую модель автомобиля. Причем цена на автомобиль выставляется автоматически в зависимости от выбранного кода модели.
Delphi – это среда разработки приложений с использованием графического интерфейса Windows. Программирование является:
а) Объектно-ориентированным (программирование осуществляется над объектами и с помощью объектов)
б) Событийно-ориентированным (раз есть объект, то должно быть и событие на которое реагирует объект). Программирование в Delphi осуществляется с помощью объектов, каждый объект имеет свойства.
Средства Delphi для разработки приложений, использующих базы данных:
Взаимодействие приложения, созданного в среде разработке Delphi, и базы данных обеспечивает процессор баз данных BorlandDatabaseEngine. Он представляет собой набор динамических библиотек, функции которых позволяют не только обращаться к данным, но и эффективно управлять ими на стороне приложения. Компоненты доступа к данным Delphi для работы с базами данных используют возможности BDE, обращаясь к его функциям и процедурам. Механизм доступа к BDEинкапсулирован в базовом классе TBDEDataSet. BDE взаимодействует с базами данных посредствам драйверов. Для наиболее распространенных СУБД разработан набор стандартных драйверов. Однако при всех преимуществах BDE не претендует на всеобъемлющую универсальность и имеет некоторые недостатки. К ним, например, относится снижение скорости работы приложения, недостатки реализации некоторых драйверов.
Приложения Delphi обращаются к данным при помощи BDE, при этом способы доступа к данным различаются в зависимости от типа базы данных. К локальным БД Paradox, dBASE, MSAccess, FoxProBDE обращается посредствам стандартных драйверов. Данные от серверов SQL поступают благодаря использованию специальной системы драйверов SQLLinks. Важнейшую роль при обработке и отправлении запроса играет составная часть процессора БД-система обработки запросов. Локальные СУБД не используют язык SQL в качестве основного при работе с данными. Тем не менее, BDE при помощи соответствующего стандартного драйвера транслирует поступающие от приложений запросы в понятный для локальной СУБД вид и принимает ответы. Так как запрос к любой локальной БД выполняется одним механизмом, то существует и единый синтаксис SQL для работы с такими данными. Этот вариант носит название локальный SQL и является подмножеством стандарта SQL 92. Все серверы БД, работающие через SQLLinks, являются серьезными промышленными системами и работают на собственных расширениях языка.
Для успешного доступа к данным приложение и BDE должны обладать информацией о местоположении файлов требуемой базы данных. Самый простой способ заключается в явном задании полного пути к каталогу, в котором хранятся файлы БД. Но в случае изменения пути, что случается не так уж редко (например, при переносе готового приложения на компьютер заказчика), разработчик должен перекомпилировать проект с учетом будущего местонахождения БД или предусмотреть специальные элементы управления, в которых можно задать путь к БД. Для решения такого рода проблем разработчик может использовать псевдоним базы данных, который представляет собой именованную структуру, содержащую путь к файлам БД и некоторые дополнительные параметры. Помимо маршрута к файлам базы данных, псевдоним BDE обязательно содержит информацию о драйвере БД, который используется для доступа к данным. Наличие других параметров зависит от типа драйвера, а значит от типа СУБД. Для управления псевдонима баз данных, настройки стандартных и дополнительных драйверов в составе BDE имеется специальная утилита — ВDЕ Adminstrator (см. выше, исполняемый файл BDEADMIN.EXE). Стандартная конфигурация BDE сохраняется в файле IDAPI.CFG.
Это программа для создания, редактирования, удаления, изменения логической структуры таблиц баз данных.
3.1 Конфигурация системы с помощью утилиты
Данная курсовая работа не нуждается в создании псевдонима. Она лишь требует следующего:
а) Наличия на компьютере BDEAdministrator-a.
б) Папка, где хранятся таблицы баз дынных, не должна переименовываться.
Таблица 1: Автомобили имеет следующий вид
Таблица 3: Счет-фактура
Таблица 4: Торговый чек
Примечание: Таблица “Автомобили” и “Счет-фактура” связаны связью 1:M (один-ко-многим), следовательно, прежде чем удалять поле из таблицы “Счет-фактура”, сначала следует удалить соответствующее поле в таблице “Aвтомобили”. Таблица “Торговый чек” и ”Покупатель” также связаны связью 1:M, следовательно, прежде чем удалять поле из таблицы “Торговый чек”, сначала следует удалить соответствующее поле в таблице “Покупатель”, для сохранения ссылочной целостности.
После загрузки приложения появляется первая форма ввода пароля:
После успешной идентификации пользователя загружается следующая форма:
При помощи этой формы можно корректировать цену автомобилей с
учетом роста (падения) курса доллара. После того как курс доллара был установлен, загружается следующая форма.
Данная форма является формой-заставкой.
После успешной загрузки этой формы появляется главная форма.
На главной форме находится пять кнопок, четыре из которых указывают на таблицы. Нажатием пятой кнопки осуществляется выход из программы.
Также, на этой форме еще присутствуют кнопки изменения времени сохранения, установив которые на нужной цифре, можно установить период, через который программа будет осуществлять автосохранение.
Рассмотрим одну из форм (меню у всех форм практически одинаковы) автомобили. Она имеет вид:
Рассмотрим все меню по порядку:
Меню — здесь осуществляется выход из программы. По сочетанию клавиш Alt+F4 или непосредственно нажатием.
Формы – здесь осуществляется навигация по формам.
Примечание: Для остальных форм текст такой же только изменяется номер форм.
Действия – здесь организованы различные режимы работы с базой данных (ввод, редактирование, поиск, поиск и замена, фильтрация).
Организация формы ввода нового автомобиля осуществляется следующим образом:
Внешний вид этой формы:
Марка автомобиля и цена добавляются автоматически.
Процедура кнопки добавить:
Организация формы поиска осуществляется следующим образом:
Форма поиска выглядит так:
Процедура кнопки “Поиск”:
procedure TForm24.Button1Click(Sender: TObject);
if (Form24.Edit1.text=»)or (Form24.Edit2.text=») or (Form24.Edit3.text=»)
Showmessage(‘Значения не введены, возможен неправильный поиск!’);
with Form24.table1 do
if (locate(‘Name_Modeli’,edit1.text,[])=false) and
Showmessage(‘Такого автомобиля нет!’);
Пример поиска автомобиля:
Такой автомобиль программа не нашла, но после поиска было задано условие, найти по цвету. Также можно задать еще два других условия, или все сразу, поставив галочку в соответствующем окошке.
Следующий компонент меню – это поиск и замена данных об автомобиле.
Организация формы поиска:
Внешний вид формы
Процедура кнопки найти:
with Form5.table1 do
if (Locate(‘Kod_Modeli’,Edit1.text,[])=true) then