Автор работы: Пользователь скрыл имя, 21 Декабря 2011 в 18:56, курсовая работа
При поиске нужного объекта (суммы, документа, количества) автоматизация позволит сделать выборку по данной позиции и значительно сократит объем подходящих документов или сведет к одному единственному искомому документу.
Возникают сложности и с составлением прайс-листа. Если в каталог внесли новый вид товаров или если изменилась цена на старые товары, необходимо будет заново переделывать весь прайс-лист. Внедрение автоматизированной системы позволит автоматически делать все эти действия при добавлении новой позиции номенклатуры.
Введение…………………………………………………………………….4
Постановка задачи на разработку базы данных………………………5
1.1Анализ предметной области……………………………………………5
1.2 Требования к информационной системе……………………………..6
2 Проектирование модели данных………………………………………..7
2.1 Семантическая модель данных………………………………………..7
2.2 Логическая модель данных……………………………………………8
2.3 Определение физических характеристик атрибутов………………..9
3 Реализация системы…………………………………………………….10
3.1 Создание, связывание и заполнение таблиц………………………...10
3.2 Реализация запросов к базе дынных…………………………………15
3.3 Создание отчетов……………………………………………………...32
3.4 Создание форм………………………………………………………...33
Заключение………………………………………………………………..36
Список использованных источников…
Динамическая таблица должна содержать поля «КодТовара», «Название», «Вид» и «КоличествоТовара».
Чтобы создать этот запрос сначала необходимо нажать кнопку «КонструкторЗапросов» на панели «Создание» окна базы данных. Далее щелчком мыши выделяем таблицы «Товары», «Накладная», «Заказы» и нажмем кнопку «Добавить», затем кнопку «Закрыть». Затем в бланк запроса добавляем поля «КодТовара», «Название», «Вид», «ДатаЗаказа» и «КоличествоТовара». Проверим наличие флажков в строке «Вывод на экран» бланка запроса для всех добавленных полей, кроме поля «ДатаЗаказа».
Чтобы
вывести на экран только те товары,
которые заказывались в данный период
времени на панели «Конструктор запросов»
выбираем «Итоги». Появится строка «Групповая
операция», где для поля «ДатаЗаказа»
вписываем «Условие», а для поля «КоличествоТовара»
- «Sum», для всех остальных - «Группировка».
Теперь для поля «ДатаЗаказа» вместо названия
впишем «Month(Date())-Month([Заказы]!
Рисунок
12 – Запрос «Заказанные
товары за последние
месяцы» в режиме
конструктора
Результат
запроса в режиме таблицы представлен
на рисунке 13.
Рисунок
13 – Запрос «Заказанные
товары за последние
месяцы» в режиме
таблицы
Текст запроса «Заказанные товары за последние месяцы» на языке SQL:
SELECT
Товары.Название, ВидТовара.Вид, Sum(Накладная.
FROM (ВидТовара INNER JOIN Товары ON ВидТовара.КодВида = Товары.КодВида) INNER JOIN (Заказы INNER JOIN Накладная ON Заказы.НомерЗаказа = Накладная.НомерЗаказа) ON Товары.НомерТовара = Накладная.НомерТовара
WHERE
(((Month(Date())-Month([
GROUP BY Товары.Название, ВидТовара.Вид;
Запрос 2. Далее создадим запрос для отбора данных о клиентах по номеру заказов.
Динамическая таблица должна содержать поля «НомерЗаказа», «ФИО», «Телефон» и «СтоимостьЗаказа».
Чтобы
создать этот запрос сначала необходимо
нажать кнопку «КонструкторЗапросов»
на панели «Создание» окна базы данных.
Далее щелчком мыши выделяем таблицы
«Заказы», «Клиенты» и нажмем кнопку
«Добавить», затем кнопку «Закрыть».
Затем в бланк запроса
Запрос
в режиме конструктора представлен
на рисунке 14.
Рисунок
14 – Запрос «Заказы
и Клиенты» в режиме
конструктора
Результат
запроса в режиме таблицы представлен
на рисунке 15
Рисунок
15 – Запрос «Заказы
и Клиенты» в режиме
таблицы
Текст запроса «Заказы и Клиенты» на языке SQL:
SELECT Заказы.НомерЗаказа, Клиенты.ФИО, Клиенты.Телефон, Заказы.СтоимостьЗаказа
FROM Клиенты INNER JOIN Заказы ON Клиенты.НомерКлиента = Заказы.НомерКлиента;
Запрос 3. Создадим запрос, который будет отражать стоимость заказов на все виды товаров в период времени, указанный пользователем.
Динамическая таблица должна содержать поля «КодВида», «Вид» и «Sum-Стоимость».
Чтобы создать этот запрос сначала необходимо нажать кнопку «КонструкторЗапросов» на панели «Создание» окна базы данных. Далее щелчком мыши выделяем таблицы «Товары», «Накладная», «Заказы», «ВидТовара» и нажмем кнопку «Добавить», затем кнопку «Закрыть». Затем в бланк запроса добавляем поля «КодВида», «Вид», «Стоимость», «ДатаЗаказа» (добавим дважды). Проверим наличие флажков в строке «Вывод на экран» бланка запроса для полей «КодВида», «Вид», «Стоимость».
Чтобы
вывести на экран только те виды
товаров, которые заказывались в данный
период времени на панели «Конструктор
запросов» выбираем «Итоги». Появится
строка «Групповая операция», где для
полей «ДатаЗаказа» вписываем «Условие»,
а для поля «Стоимость» - «Sum». Для «ВидТовара»
пишем «Группировка». Теперь для поля
«ДатаЗаказа» вместо названия впишем
«Month([Заказы]![ДатаЗаказа])»
Рисунок
16 – Запрос
«Продажа товаров
по видам» в режиме конструктора
Результат
запроса в режиме таблицы представлен
на рисунке 17
Рисунок
17 – Запрос «Продажа
товаров по видам» в
режиме таблицы
Текст запроса «Продажа товаров по видам» в режиме SQL:
SELECT ВидТовара.КодВида, ВидТовара.Вид, Sum(Накладная.Стоимость) AS [Sum-Стоимость]
FROM (ВидТовара INNER JOIN Товары ON ВидТовара.КодВида = Товары.КодВида) INNER JOIN (Заказы INNER JOIN Накладная ON Заказы.НомерЗаказа = Накладная.НомерЗаказа) ON Товары.НомерТовара = Накладная.НомерТовара
WHERE
(((Year(Заказы!ДатаЗаказа))>=[
GROUP BY ВидТовара.КодВида, ВидТовара.Вид
ORDER BY Sum(Накладная.Стоимость) DESC;
Запрос 4. Далее создадим запрос, который отражает сезонность спроса, т.е. подсчитывает количество заказов по месяцам.
Динамическая таблица должна содержать поля «Месяц», «КоличествоЗаказов».
Чтобы создать этот запрос сначала необходимо нажать кнопку «КонструкторЗапросов» на панели «Создание» окна базы данных. Далее щелчком мыши выделяем таблицу «Заказы» и нажмем кнопку «Добавить», затем кнопку «Закрыть». Затем в бланк запроса добавляем поля «ДатаЗаказа», «НомерЗаказа». Проверим наличие флажков в строке «Вывод на экран» бланка запроса для всех добавленных полей.
Чтобы
подсчитать количество заказов на панели
«Конструктор запросов» выбираем «Итоги».
Появится строка «Групповая операция»,
где для поля «ДатаЗаказа» вписываем «Группировка»,
а для поля «НомерЗаказа» - «Count». Запрос
в режиме конструктора представлен на
рисунке 18.
Рисунок
18 – Запрос «Сезонность
спроса» в режиме конструктора
Результат
запроса в режиме таблицы представлен
на рисунке 19.
Рисунок
19 – Запрос «Сезонность
спроса» в режиме
таблицы
Текст запроса «Сезонность спроса» в режиме SQL:
SELECT "Месяц " & DatePart("m",[ДатаЗаказа]) AS Месяц, Count(Заказы.НомерЗаказа) AS [Количество заказов]
FROM Заказы
GROUP BY "Месяц " & DatePart("m",[ДатаЗаказа]);
Запрос 5. Теперь создадим запрос для выявления наиболее перспективных клиентов за определенный период времени, указанный пользователем.Будет подсчитана средняя стоимость заказов каждого клиента и отсортирована по убыванию этой суммы.
Чтобы
создать этот запрос сначала необходимо
нажать кнопку «КонструкторЗапросов»
на панели «Создание» окна базы данных.
Далее щелчком мыши выделяем таблицы
«Заказы», «Клиенты» и нажмем кнопку
«Добавить», затем кнопку «Закрыть».
Затем в бланк запроса
Чтобы
вывести на экран только те виды
товаров, которые заказывались в
данный период времени на панели «Конструктор
запросов» выбираем «Итоги». Появится
строка «Групповая операция», где для
полей «ДатаЗаказа» вписываем «Условие»,
а для поля «Стоимость» - «Avg». Для
«ВидТовара» и «ФИО» пишем «Группировка».
Теперь для поля «ДатаЗаказа» вместо названия
впишем «Month([Заказы]![ДатаЗаказа])»
Рисунок
20 – Запрос «Средняя
стоимость заказов клиентов»
в режиме конструктора
Результаты
запроса в режиме таблицы представлены
на рисунке 21.
Рисунок 21 - Запрос «Средняя стоимость заказов клиентов» в режиме таблицы
Текст запроса «Средняя стоимость заказов клиентов» в режиме SQL:
SELECT Клиенты.НомерКлиента, Клиенты.ФИО, Avg(Заказы.СтоимостьЗаказа) AS [Средняя стоимость]
FROM Клиенты INNER JOIN Заказы ON Клиенты.НомерКлиента = Заказы.НомерКлиента
WHERE
(((Year([Заказы]![ДатаЗаказа])
GROUP BY Клиенты.НомерКлиента, Клиенты.ФИО
ORDER BY Avg(Заказы.СтоимостьЗаказа) DESC;
Запрос 6. Создадим запрос на обновлегие, который заполнит поле "СтоимостьЗаказа» таблицы «Заказы».
Чтобы
создать этот запрос сначала необходимо
нажать кнопку «КонструкторЗапросов»
на панели «Создание» окна базы данных.
Далее на панели «Работа с запрросами»
выбираем «Обновление». После чего
щелчком мыши выделяем таблицы «Накладная»,
«Товары» и нажмем кнопку «Добавить»,
затем кнопку «Закрыть». Затем в
бланк запроса добавляем поле
«Стоимость». Проверим наличие флажка
в строке «Вывод на экран» бланка запроса.
Для вычисления стоимости в строке «Обновление»
указываем «[Накладная]![
Запрос
в режиме конструктора представлен
на рисунке 22.
Рисунок 22 – Запрос «Вычисление стоимости товара в накладной» в режиме конструктора
Данный
запрос в режиме таблицы представлен
на рисунке 23.
Рисунок
23 – Запрос «Вычисление
стоимости товара в
накладной» в режиме
таблицы
Текст запроса «Вычисление стоимости товара в накладной» в режиме SQL:
UPDATE
Товары INNER JOIN Накладная ON Товары.НомерТовара
= Накладная.НомерТовара SET Накладная.Стоимость
= [Накладная]![КоличествоТовара]
Запрос 7. Создадим итоговый запрос для подсчета стоимости заказов клиентов.
Чтобы
создать этот запрос сначала необходимо
нажать кнопку «КонструкторЗапросов»
на панели «Создание» окна базы данных.
Далее щелчком мыши выделяем таблицу
«Заказы», «Стоимость» и нажмем кнопку
«Добавить», затем кнопку «Закрыть».
Затем в бланк запроса
Информация о работе Разработка базы данных для автоматизации учета продаж продукции фирмы Орифлейм