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

Регистрация и вход в Oracle Application Express, структура и взаимосвязь элементов базы данных. Создание запросов, основы для приложения, отчетов, диаграммы, главной страницы. Формирование руководства пользователя и листинг разработанной программы.

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

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

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Курсовой проект

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

Введение

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

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

Среди наиболее ярких представителей систем управления базами данных можно отметить: Microsoft Access, Microsoft Visual FoxPro, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер».

В данном курсовом проекте база данных проектируется средствами облачного сервиса http://apex.oracle.com/. Основным преимуществом данной среды является возможность полного отсутствия специализированного ПО на рабочем месте, за исключением любого браузера для выхода в Интернет. Другие возможности среды рассмотрены в ходе курсового проектирования.

1. Анализ предметной области

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

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

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

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

- расчет суммарной стоимости заказов по дням, месяцам и годам;

- расчет количества заказов по группам товаров;

- ввод, коррекция и вывод прейскурантов на заданный период времени.

Для решения задач будут использоваться следующие входные данные:

- данные о клиентах (название фирмы, руководитель, БИК, телефон, адрес);

- данные об услугах (вид услуги, услуга, цена).

В процессе решения будут получены следующие выходные данные:

- информация об услугах;

- информация о клиентах;

- информация о заказах;

- отчет, отражающий количество заказов по группам товаров;

- отчет, отражающий стоимость и количество заказов по услугам и товарам;

- отчет, отражающий ежедневную выручку фирмы;

- диаграмма, отражающая доход от продаж по каждому виду услуг;

- диаграмма, отражающая ежедневную выручку.

Начальным этапом проектных исследований является анализ документооборота организации, какие документы, из каких подразделений поступают в ЭИС, какие из документов должны выдаваться из ЭИС. Эта задача решается с помощью моделирования информационных процессов. Для этой цели используется диаграмма потоков данных (ДПД). ДПД приложения «АРМ главного бухгалтера» показана в приложении А.

ДПД была разработана с использованием возможностей MS Visio 2007. ДПД состоит из нескольких уровней, каждый из которых отражает определенные информационные задачи, выполняемые пользователем разработанной БД:

- контекстная диаграмма «АРМ главного бухгалтера»;

- ДПД первого уровня;

- ДПД второго уровня процесса А1 «Учет клиентов»;

- ДПД второго уровня процесса А2 «Формирование прайс-листа»;

- ДПД второго уровня процесса А3 «Учет заказов»;

- ДПД второго уровня процесса А4 «Сервисные функции».

Структура таблиц БД представлена в таблице 1.

Таблица 1 - Структура таблиц базы данных

Таблица

Имя поля

Тип

Размер

Кол-во знаков после запятой

Обязательность

Ключ

FIRMA

NAZVANIE

CHAR

35

+

RUKOVODITEL

CHAR

50

+

ADRES

CHAR

75

INN

CHAR

12

+

GLAV_BUH

CHAR

50

BIK

CHAR

20

+

E-MAIL

CHAR

35

R_KLIENTS

ID

NUMBER

3

0

+

PK

NAZVANIE_FIRMI

CHAR

30

+

RUKOVODITEL

CHAR

50

BIK

CHAR

20

+

TELEPHONE

CHAR

15

ADRES

CHAR

70

VIDI_USLUG

KOD

NUMBER

3

0

+

PK

VID

CHAR

30

+

USLUGI

KOD

NUMBER

3

0

+

PK

USLUGA

CHAR

30

+

PRICE

NUMBER

6

2

+

KOD_VIDA

NUMBER

3

0

+

FK

ZAKAZ

NOMER_DOKUMENTA

NUMBER

3

0

+

FK

KOD_USLUGI

NUMBER

3

0

+

FK

KOLICHESTVO

NUMBER

3

0

+

STATUS

CHAR

15

DOKUMENT

NOMER_DOKUMENTA

NUMBER

3

0

+

PK

NOMER_ZAKAZA

NUMBER

3

0

+

DATA

DATA

+

KLIENTSKIJ_NOMER

NUMBER

3

0

+

FK

Схема структуры базы данных, разработанная в MS Visio 2003 представлена в приложении Б.

Таблицы связаны между собой внешними ключами. Описание связей и их свойств представлено в таблице 2.

Таблица 2 - Связи между таблицами

Связь

Контроль целостности

Каскадное обновление

Каскадное удаление

VIDI_USLUGI, KOD

USLUGI, KOD_VIDA

+

+

+

USLUGI, KOD

ZAKAZ, KOD_USLUGI

+

+

+

KLIENTS, ID

DOKUMENT, KLIENTSKIJ_NOMER

+

+

+

ZAKAZ,

NOMER_DOKUMENTA

DOKUMENT, NOMER_DOKUMENTA

+

+

+

2. Проектирование структуры базы данных

2.1 Регистрация и вход в Oracle Application Express

программа пользователь база данные

Перед началом работы в СУБД Application Express необходимо зарегистрироваться в этой системе. Для этого следует ввести логин, пароль, название рабочей области и указать причины регистрации в системе. После успешной регистрации на электронную почту высылаются данные для входа.

При первом входе в облако необходимо указать «Рабочее пространство», «Имя пользователя» и «Пароль» (Рисунок 1).

Рисунок 1 - Вход в Oracle Application Express

2.2 Создание таблиц в Oracle Application Express

Таблицы в СУБД Oracle Application Express можно создавать двумя способами: в диалоговом режиме и с помощью языка SQL.

Создание таблиц с помощью диалогового режима

Для того чтобы создать таблицу, на панели Главного меню необходимо выбрать вкладку SQL Workshop и в открывшемся окне нажать кнопку Object Browser (Рисунок 2).

Рисунок 2 - Кнопка Object Browser

После этого на экране появляется окно, разделенное на два поля: левое содержит список всех объектов БД, правое - различную информацию о них (Рисунок 3).

Рисунок 3 - Окно создания таблицы в диалоговом режиме

При нажатии в правом верхнем углу кнопки Create (Создать) откроется выпадающий список, в котором можно выбрать тип создаваемого объекта БД. При создании таблицы следует выбрать пункт Table (Рисунок 4).

Рисунок 4 - Выбор типа создаваемого объекта (Table)

После выбора типа объекта открывается окно создания таблицы. В этом окне необходимо указать имя таблицы (Table Name), а также названия колонок (Column Name), типы данных (Type) и различные ограничения: общее количество знаков для числовых типов (Precision), количество знаков после запятой (Scale), проверка на нулевое значения (Not Null) (Рисунок 5).

Рисунок 5 - Окно создания таблицы

Рассмотрим процесс создания таблицы на примере таблицы KLIENT. Введем имя таблицы, названия столбцов, определим типы данных (Type), установим количество знаков после запятой (Scale) и ограничения на нулевое значения (Not Null) (Рисунок 6).

Рисунок 6 - Создание полей таблицы KLIENTS

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

Система предлагает 4 варианта определения первичного ключа: «Не указывать первичный ключ», «Указать ключевое поле из новой таблицы», «Указать ключевое поле из уже существующей таблицы», «Создать составное ключевое поле из двух колонок таблицы». При создании таблицы KLIENT выберем второй вариант; ключевым полем таблицы станет поле ID (Рисунок 7).

Рисунок 7 - Выбор первичного ключа

На следующем этапе следует определить внешние ключи. Внешний ключ устанавливает связь между столбцами двух таблиц. При создании таблицы KLIENT внешние ключи не использовались (Рисунок 8).

Рисунок 8 - Выбор внешних ключей

После определения внешних ключей пользователю предоставляется возможность создания ограничений двух видов: Check (проверка) и Unique (уникальность). Установим параметры уникальности для столбца BIK таблицы KLIENTS и нажмем кнопку Add (Рисунок 9).

Рисунок 9 - Окно создания ограничений

На последнем этапе подтверждаем создание таблицы (Рисунок 10).

Рисунок 10 - Окно подтверждения создания таблицы

Нажав кнопку SQL можно увидеть, как выглядит запрос на создание таблицы на языке SQL (Рисунок 11).

Рисунок 11 - Запрос создания таблицы на языке SQL

Внешний вид созданной таблицы KLIENTS представлен на рисунке 12.

Рисунок 12 - Таблица KLIENTS, созданная в диалоговом режиме

Создание таблиц в режиме SQL

Для того чтобы создать таблицу в режиме SQL, на панели Главного меню необходимо выбрать вкладку SQL Workshop и в открывшемся окне нажать кнопку SQL Commands (Рисунок 13).

Рисунок 13 - Кнопка SQL Commands

После этого открывается окно, в котором расположены область для ввода SQL команд и кнопки Save и Run для сохранения и запуска написанной программы соответственно (Рисунок 14).

Рисунок 14 - Окно ввода SQL команд

Рассмотрим процесс создания таблицы на примере таблицы VIDI_USLUG. Для создания таблицы воспользуемся командой CREATE TABLE. Текст полного SQL запроса для создания таблицы представлен на Рисунке 15.

Рисунок 15 - SQL команды для создания таблицы VIDI_USLUG

После нажатия кнопки Run при верном написании кода таблица будет создана (Рисунок 16).

Рисунок 16 - Таблица VIDI_USLUG, созданная с помощью SQL запроса

Если структура таблицы в БД Oracle совпадает со структурой таблицы в БД Access или Excel, то данные одной таблицы можно импортировать в другую.

Рассмотрим импорт данных на примере заполнения таблицы Price_list, созданной нами ранее в СУБД Oracle. Для этого последовательно выполним команды SQL Workshop. Utilities. Data Workshop (Рисунок 17).

Рисунок 17 - Кнопка Data Workshop

Далее выберем пункт Spredsheet Data. Открывается окно, в котором необходимо пройти 4 этапа.

На первом этапе требуется выбрать, куда (Load to) закачивать данные. Т.к. таблица уже существует в БД Oracle, то выбираем существующую таблицу (Existing Table) (рисунок 18).

Рисунок 18 - Выбор места копирования данных

На втором этапе указываем таблицу, в которую будут импортироваться данные (Рисунок 19).

Рисунок 19 - Выбор таблицы для загрузки данных

На следующем шаге импорта мастер предлагает вставить данные из буфера в окошко, расположенное в центре страницы. Сначала откроем таблицу в Access, выделим все строки и нажмем клавиши Ctrl+C (копировать). Затем щелкнем мышью в окошке на страницу APEX и нажмем CTRL+V (вставить). В окне появляются данные из таблицы (Рисунок 20).

Рисунок 20 - Копирование данных из таблицы Access на страницу Apex

На последнем этапе импортирования мастер выводит всю структуру таблицы и данные (Рисунок 21).

Рисунок 21 - Структура и данные импортированной таблицы

Для загрузки данных в таблицу нажимаем кнопку Load Data. Если загрузка данных прошла успешно, то щелкнув по имени таблицы, мы переходим на страницу Object Brouser с открытой структурой таблицы. Выбрав Data в списке команд над таблицей можно увидеть свои данные (Рисунок 22).

Рисунок 22 - Таблица Price_list, данные которой импортированы из таблицы Access

В ходе выполнения курсового проекта были созданы таблицы KLIENTS, VIDI_USLUG, USLUGI, FIRMA (Рисунки 23, 24), ZAKAZ (Рисунки 25, 26), DOKUMENT (Рисунки 27, 28).

Рисунок 23 - Ограничения для таблицы FIRMA

Рисунок 24 - Данные таблицы FIRMA

Рисунок 25 - Ограничения для таблицы ZAKAZ

Рисунок 26 - Данные таблицы ZAKAZ

Рисунок 27 - Ограничения для таблицы DOKUMENT

Рисунок 28 - Данные таблицы DOKUMENT

2.3 Структура БД

Для просмотра таблиц и связей между ними следует воспользоваться формой создания запроса. Для этого выберем в меню вкладку SQL Workshop, нажмем кнопку Utilities.

Далее нажмем кнопку Query Builder.

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

3. Разработка приложения БД

3.1 Создание запросов

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

В открывшемся окне следует ввести текст запроса на языке SQL. Для запуска запроса на выполнения необходимо нажать кнопку Run. Для того чтобы сохранить созданный запрос, необходимо нажать кнопку Save.

Запрос 1 - «Ежедневная суммарная стоимость и количество продаж по каждому товару».

SELECT DOKUMENT.DATA, USLUGI.USLUGA, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA, SUM (ZAKAZ.KOLICHESTVO) AS KOLICHESTVO_ZAKAZOV

FROM USLUGI INNER JOIN (DOKUMENT INNER JOIN ZAKAZ ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA) ON USLUGI.KOD=ZAKAZ.KOD_USLUGI

WHERE DOKUMENT.DATA >: «НАЧАЛО ПЕРИОДА» AND DOKUMENT.DATA <: «КОНЕЦ ПЕРИОДА»

GROUP BY DOKUMENT.DATA, USLUGI.USLUGA, USLUGI.PRICE, ZAKAZ.STATUS

HAVING (ZAKAZ.STATUS='выполнен')

ORDER BY DOKUMENT.DATA

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

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

Запрос 2 - Расчет суммарной стоимости заказов за день, месяц, год

1. Выручка по дням

SELECT DOKUMENT.DATA, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA

FROM DOKUMENT INNER JOIN (USLUGI INNER JOIN ZAKAZ ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA

WHERE DOKUMENT.DATA >: «НАЧАЛО ПЕРИОДА» AND DOKUMENT.DATA <: «КОНЕЦ ПЕРИОДА»

GROUP BY DOKUMENT.DATA

После нажатия кнопки Submit выводится таблица, отражающая выручку по дням.

2. Выручка за месяц

SELECT P1.MONTH, SUM (P1.VIRUCHKA) AS VIRUCHKA

FROM P1

WHERE P1.YEAR =: «ВВЕДИТЕ ГОД» AND P1.MONTH >: «ВВЕДИТЕ МЕСЯЦ»

GROUP BY P1.MONTH

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

3. Выручка за год

SELECT P1.YEAR, SUM (P1.VIRUCHKA) AS VIRUCHKA

FROM P1

WHERE P1.YEAR=: «ВВЕДИТЕ ГОД»

GROUP BY P1.YEAR

После нажатия кнопки Submit выводится таблица, отражающая выручку по годам.

Текст запроса для View P1:

SELECT TO_CHAR (DOKUMENT.DATA, 'YYYY') AS YEAR, TO_CHAR (DOKUMENT.DATA, 'MONTH') AS MONTH, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA

FROM DOKUMENT INNER JOIN (USLUGI INNER JOIN ZAKAZ ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA

GROUP BY DOKUMENT.DATA

Запрос 3 - Расчет количества заказов по группам товаров

SELECT DOKUMENT.DATA, VIDI_USLUG.VID, SUM (ZAKAZ.KOLICHESTVO) AS KOLICHESTVO_ZAKAZOV

FROM VIDI_USLUG INNER JOIN (USLUGI INNER JOIN (DOKUMENT INNER JOIN ZAKAZ ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA) ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON VIDI_USLUG.KOD=USLUGI.KOD_VIDA

GROUP BY DOKUMENT.DATA, VIDI_USLUG.VID

Для создания данного запроса в начале выбираем Object Browser, затем в открывшемся окне из выпадающего списка кнопки Create выбираем View.

В открывшемся окне введем название запроса и его текст. SQL запрос может быть создан как на SQL (SQL Commands), так и в диалоговом режиме (Query Builder). При создании запроса «KOL_ZAKAZOV_PO_GRUPPAM_TOVAROV» был выбран первый способ.

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

Аналогичным образом были созданы запросы «Стоимость и количество продаж по товарам», «Выручка по дням».

3.2 Создание основы для приложения

Для создания приложения необходимо нажать кнопку Application Builder.

После нажатия кнопки появится уже созданное стандартное приложение Sample Database Application. Для того чтобы создать собственное приложение, нажмем кнопку Create. Затем откроется окно, в котором необходимо выбрать метод: Database, Websheet или Packaget Application. Для создания приложения «РЕКЛАМНОЕ АГЕНТСТВО» выберем первый метод - Database (База данных).

Далее введем имя приложения (РЕКЛАМНОЕ АГЕНТСТВО), укажем схему (REKLAMA) и выберем пользовательский интерфейс (Desktop).

В следующем окне предлагается выбрать тип стартовой страницы (Blank - пустая, Report - отчет, Form - форма, Chart - график и др.). Для создания стартовой страницы приложения «РЕКЛАМНОЕ АГЕНТСТВО» выберем тип Blank.

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

После нажатия кнопки Next открывается окно, в котором выбираем язык, формат даты и времени.

На следующем шаге выбираем тему (оформление) приложения. При создании приложения «РЕКЛАМНОЕ АГЕНТСТВО» была использована тема «Simple Gray».

После нажатия кнопки Next появляется окно, в котором необходимо подтвердить создание приложения.

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

Для запуска приложения необходимо нажать кнопку Run, после чего система запросит логин и пароль.

3.3 Создание форм

Облачный сервис http://apex.oracle.com/ позволяет создавать различные виды форм. При создании приложения «РЕКЛАМНОЕ АГЕНТСТВО» были использованы табличная форма (Tabular Form) и составная табличная форма (Detail Form).

Рассмотрим создание табличной формы на примере таблицы FIRMA.

Для создания новой страницы в нижней части главной формы приложения нажимаем кнопку Create (Созадть); затем в открывшемся окне выбираем пункт New page.

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

Далее устанавливается тип первичного ключ: Managed by Database или Select Primary Key. Выбираем первый тип - управляемый базой данных.

После нажатия кнопки Next появляется окно, в котором указываем имя страницы (Фирма). Остальные параметры оставляем без изменения.

В следующем окне настраиваем параметры вкладки. Возможны 3 варианта: Do not use tabs (Не использовать вкладки), Use an existing tab set and create a new tab within the existing tab set (Использовать существующий набор вкладок или создать новую вкладку в существующем наборе вкладок), Use an existing tab set and reuse an existing tab within that tab set (Использовать существующий набор вкладок и снова использовать существующую вкладку в том наборе вкладок). Выбираем второй вариант и указываем имя вкладки (ИНФОРМАЦИЯ О НАС).

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

При успешном выполнении всех операций на экран выводится сообщение о создании формы.

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

Создание составной табличной формы рассмотрим на примере создания формы «Услуги». После создания новой страницы в окне выбора типа формы выберем пункт Master Detail Form.

Далее выбираем главную таблицу (VIDI_USLUG) и поля, которые будут отображаться.

Затем выбираем подчинённую таблицу (USLUGI) и также указываем отображаемые поля.

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

Далее предлагается изменить параметры навигации. Оставим их по умолчанию и нажмем кнопку Next.

На следующем этапе выбираем вид отображения формы: на одной странице или на двух отдельных страницах. Для данной формы был выбран первый вариант.

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

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

В СУБД Oracle Application Express предусмотрена замена кодовых полей значениями, доступными для восприятия пользователя. Для этого используются Списки значений (Lists of Values). Рассмотрим создание Списка значений на примере списков STATUS и KLIENTS.

Для того чтобы создать Список значений, нажимаем кнопку, затем в окне User Interface выбираем ссылку Lists of Values и нажимаем кнопку Create.

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

В следующем окне необходимо ввести имя списка и выбрать тип его создания (статический или динамический). Для списка «STATUS» выбираем статический тип, для списка «KLIENTS» - динамический.

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

В открывшемся окне в строке Display As выберем Select List (named LOV), а в строке Named LOV - созданный список STATUS.

После сохранения данных изменений в поле «Статус» пользователь сможет выбирать конкретные значения: выполнен/не выполнен вместо того, чтобы вводить эти значения вручную.

Аналогичным образом было настроено отображение поля «Клиенты» - выбор названия компании-заказчика вместо ID и поля «Наименование услуги» - выбор услуги из выпадающего списка.

3.4 Создание отчетов

Существует несколько вариантов создания отчетов: Интерактивный отчет, Web - отчет, Стандартный отчет и Мастер отчетов.

Рассмотрим создание отчета на примере отчета «Выручка по дням». В окне выбора типа отчета выберем Interactive Report (интерактивный отчет). В следующем окне введем название отчета.

Далее определяем параметры вкладки. Существует три варианта: «не использовать вкладку», «использовать уже существующую вкладку или создать новую вкладку», «повторно использовать существующую вкладку». При создании отчета «Выручка по дням» используем первый вариант.

В следующем окне нажимаем кнопку Query Builder. Открывается окно, в котором выбираем источник отчета - запрос «VIRUCHKA_PO_DNYAM», отмечаем столбцы, которые будут отображаться в отчете, а затем копируем автоматически сгенерированный код SQL из соответствующего окна.

Текст SQL запроса для создаваемого отчета:

select VIRUCHKA_PO_DNYAM.DATA as DATA,

VIRUCHKA_PO_DNYAM.VIRUCHKA as VIRUCHKA

from VIRUCHKA_PO_DNYAM VIRUCHKA_PO_DNYAM

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

Аналогичным образом были созданы отчеты «Количество заказов по группам товаров» и «Стоимость и количество заказов по услугам и товарам».

4. Руководство пользователя

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

Для начала работы с Базой Данных необходимо с помощью любого браузера пройти по ссылке: http://apex.oracle.com/pls/apex/f? p=73933:LOGIN_DESKTOP:117570792338140, после чего система запросит логин и пароль.

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

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

Вернуться на главную страницу приложения можно вернуться, нажав на вкладку Home в левом верхнем углу.

Вкладка «Клиенты»

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

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

Вкладка «Услуги»

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

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

Вкладка «Заказы по документам»

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

Вкладка «Отчеты»

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

Меню Actions позволяет выполнить действия из выпадающего списка: сортировку, фильтрацию, построение диаграммы по данным отчета, вызов справки, перезапустить отчет.

Данные отчеты можно отправить по электронной почте, выгрузить в CSV файл либо открыть в отдельной страничке браузера, для этого необходимо в меню Actions выбрать пункт Download.

Вкладка «Диаграммы»

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

Вкладка «Информация о нас»

Данная вкладка содержит информацию о фирме, которая доступна только для просмотра. Пользователи приложения не могут вносить изменения. Кнопка Вернуться на Главную предназначена для перехода на Главную страницу.

Вкладка «О программе»

Данная вкладка содержит информацию о назначении программного приложения, версии, разработчике и обратной связи. При нажатии на ссылку откроется страница с методическими указаниями по работе с программным приложением «Рекламное агенство «Идея»».

Заключение

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

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

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

Список литературы

1. Базы данных. Проектирование, реализация, сопровождение. Теория и практика: Томас М. Конноли, Каролин Е. - Москва-Санкт-Петербург, 2009

2. Базы данных. Учебный курс: Глушков С.В., Ломотько Д.В. - Харьков, 2010

3. SQL. Справочное руководство: Мартин Грабер - Санкт-Петербург, Лори, 2012

4. Oracle PL/SQL для администраторов баз данных: Аруп Нанда и Стивен Фейерштейн - Санкт-Петербург, Символ-Плюс, 2008

5. Эффективное проектирование приложений Oracle: Томас Кайт - Москва, Лори, 2008 г.

Приложение

Текст SQL-запроса таблицы «FIRMA»

CREATE TABLE «FIRMA»

(«NAZVANIE» VARCHAR2 (70) NOT NULL ENABLE,

«RUKOVODITEL» VARCHAR2 (100) NOT NULL ENABLE,

«ADRES» VARCHAR2 (150),

«INN» VARCHAR2 (20) NOT NULL ENABLE,

«GLAV_BUH» VARCHAR2 (100),

«TELEPHONE» VARCHAR2 (30),

«BIK» VARCHAR2 (40) NOT NULL ENABLE,

«E-MAIL» VARCHAR2 (70)

)

/

Текст SQL-запроса таблицы «KLIENTS»

CREATE TABLE «KLIENTS»

(«ID» NUMBER NOT NULL ENABLE,

«NAZVANIE_FIRMI» VARCHAR2 (60) NOT NULL ENABLE,

«RUKOVODITEL» VARCHAR2 (100),

«BIK» VARCHAR2 (40) NOT NULL ENABLE,

«TELEPHONE» VARCHAR2 (30),

«ADRES» VARCHAR2 (140),

CONSTRAINT «KLIENTS_PK» PRIMARY KEY («ID») ENABLE

)

/

CREATE OR REPLACE TRIGGER «BI_KLIENTS»

before insert on «KLIENTS»

for each row

begin

if:NEW. «ID» is null then

select «KLIENTS_SEQ».nextval into:NEW. «ID» from sys.dual;

end if;

end;

/

ALTER TRIGGER «BI_KLIENTS» ENABLE

/

Текст SQL-запроса таблицы «ZAKAZ»

CREATE TABLE «ZAKAZ»

(«NOMER_DOKUMENTA» NUMBER (6,0) NOT NULL ENABLE,

«KOD_USLUGI» NUMBER (6,0) NOT NULL ENABLE,

«KOLICHESTVO» NUMBER (6,0) NOT NULL ENABLE,

«STATUS» VARCHAR2 (30)

)

/

ALTER TABLE «ZAKAZ» ADD CONSTRAINT «ZAKAZ_FK2» FOREIGN KEY («NOMER_DOKUMENTA»)

REFERENCES «DOKUMENT» («NOMER_DOKUMENTA») ON DELETE CASCADE ENABLE

/

ALTER TABLE «ZAKAZ» ADD CONSTRAINT «ZAKAZ_FK3» FOREIGN KEY («KOD_USLUGI»)

REFERENCES «USLUGI» («KOD») ON DELETE CASCADE ENABLE

/

Текст SQL-запроса таблицы «DOKUMENT»

CREATE TABLE «DOKUMENT»

(«NOMER_DOKUMENTA» NUMBER (6,0) NOT NULL ENABLE,

«NOMER_ZAKAZA» NUMBER (6,0) NOT NULL ENABLE,

«DATA» DATE NOT NULL ENABLE,

«KLIENTSKIJ_NOMER» NUMBER (6,0) NOT NULL ENABLE,

CONSTRAINT «DOKUMENT_PK» PRIMARY KEY («NOMER_DOKUMENTA») ENABLE

)

/

ALTER TABLE «DOKUMENT» ADD CONSTRAINT «DOKUMENT_FK» FOREIGN KEY («KLIENTSKIJ_NOMER»)

REFERENCES «KLIENTS» («ID») ON DELETE CASCADE ENABLE

/

CREATE OR REPLACE TRIGGER «BI_DOKUMENT»

before insert on «DOKUMENT»

for each row

begin

if:NEW. «NOMER_DOKUMENTA» is null then

select «DOKUMENT_SEQ».nextval into:NEW. «NOMER_DOKUMENTA» from sys.dual;

end if;

end;

/

ALTER TRIGGER «BI_DOKUMENT» ENABLE

Текст SQL-запроса таблицы «VIDI_USLUG»

CREATE TABLE «VIDI_USLUG»

(«KOD» NUMBER (6,0) NOT NULL ENABLE,

«VID» VARCHAR2 (60) NOT NULL ENABLE,

CONSTRAINT «VIDI_USLUG_PK» PRIMARY KEY («KOD») ENABLE

)

/

CREATE OR REPLACE TRIGGER «BI_VIDI_USLUG»

before insert on «VIDI_USLUG»

for each row

begin

if:NEW. «KOD» is null then

select «VIDI_USLUG_SEQ1».nextval into:NEW. «KOD» from sys.dual;

end if;

end;

/

ALTER TRIGGER «BI_VIDI_USLUG» ENABLE

/

Текст SQL-запроса таблицы «USLUGI»

CREATE TABLE «USLUGI»

(«KOD» NUMBER (6,0) NOT NULL ENABLE,

«USLUGA» VARCHAR2 (60) NOT NULL ENABLE,

«PRICE» NUMBER NOT NULL ENABLE,

«KOD_VIDA» NUMBER (6,0) NOT NULL ENABLE,

CONSTRAINT «USLUGI_PK» PRIMARY KEY («KOD») ENABLE

)

/

ALTER TABLE «USLUGI» ADD CONSTRAINT «USLUGI_FK» FOREIGN KEY («KOD_VIDA»)

REFERENCES «VIDI_USLUG» («KOD») ON DELETE CASCADE ENABLE

/

CREATE OR REPLACE TRIGGER «BI_USLUGI»

before insert on «USLUGI»

for each row

begin

if:NEW. «KOD» is null then

select «USLUGI_SEQ1».nextval into:NEW. «KOD» from sys.dual;

end if;

end;

/

ALTER TRIGGER «BI_USLUGI» ENABLE

/

View для отчета «Количество заказов по группам товаров»

CREATE OR REPLACE FORCE VIEW «KOL_ZAKAZOV_PO_GRUPPAM_TOVAROV» («DATA», «VID», «KOLICHESTVO_ZAKAZOV») AS

SELECT DOKUMENT.DATA, VIDI_USLUG.VID, SUM (ZAKAZ.KOLICHESTVO) AS KOLICHESTVO_ZAKAZOV

FROM VIDI_USLUG INNER JOIN (USLUGI INNER JOIN (DOKUMENT INNER JOIN ZAKAZ ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA) ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON VIDI_USLUG.KOD=USLUGI.KOD_VIDA

GROUP BY DOKUMENT.DATA, VIDI_USLUG.VID

/

View для отчета «Стоимость и количество продаж по услугам и товарам»

CREATE OR REPLACE FORCE VIEW «STOIM_I_KOL_PRODAG_PO_TOVARAM» («DATA», «USLUGA», «VIRUCHKA», «KOLICHESTVO_ZAKAZOV») AS

SELECT DOKUMENT.DATA, USLUGI.USLUGA, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA, SUM (ZAKAZ.KOLICHESTVO) AS KOLICHESTVO_ZAKAZOV

FROM USLUGI INNER JOIN (DOKUMENT INNER JOIN ZAKAZ ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA) ON USLUGI.KOD=ZAKAZ.KOD_USLUGI

GROUP BY DOKUMENT.DATA, USLUGI.USLUGA, USLUGI.PRICE, ZAKAZ.STATUS

HAVING (ZAKAZ.STATUS='выполнен')

ORDER BY DOKUMENT.DATA

/

View для отчета «Выручка по дням»

CREATE OR REPLACE FORCE VIEW «VIRUCHKA_PO_DNYAM» («DATA», «VIRUCHKA») AS

SELECT DOKUMENT.DATA, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA

FROM DOKUMENT INNER JOIN (USLUGI INNER JOIN ZAKAZ ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA

GROUP BY DOKUMENT.DATA

/

Текст запроса с параметром - «Выручка по дням»:

SELECT DOKUMENT.DATA, SUM (USLUGI.PRICE*ZAKAZ.KOLICHESTVO) AS VIRUCHKA

FROM DOKUMENT INNER JOIN (USLUGI INNER JOIN ZAKAZ ON USLUGI.KOD=ZAKAZ.KOD_USLUGI) ON DOKUMENT.NOMER_DOKUMENTA=ZAKAZ.NOMER_DOKUMENTA

WHERE DOKUMENT.DATA >: «НАЧАЛО ПЕРИОДА» AND DOKUMENT.DATA <: «КОНЕЦ ПЕРИОДА»

GROUP BY DOKUMENT.DATA

Размещено на Allbest.ru


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

  • Составление схемы концептуальной модели данных. Разработка структуры реляционной базы данных и интерфейса пользователя. Особенности главных этапов проектирования базы данных. Способы реализации запросов и отчетов. Специфика руководства пользователя.

    курсовая работа [186,9 K], добавлен 18.12.2010

  • Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Анализ возможностей системы управления базами данных "Microsoft Access 2003". Создание базы данных, предназначенной для отражения деятельности аэропорта. Концептуальная и физическая модель базы данных. Создание таблиц, запросов, отчетов и главной формы.

    курсовая работа [1,8 M], добавлен 26.06.2013

  • Разработка базы данных для ортопедического отделения больницы, которая имеет дополнительный триггер и процедуру для выполнения условия задачи. Использование программного продукта Oracle Application Express и языка MySql для создания базы данных.

    курсовая работа [208,6 K], добавлен 13.12.2014

  • Объекты модели хранения данных базы данных ORACLE. Взаимосвязь между логическими структурами. Средства манипулирования данными языка SQL, данными языка SQL. Структура выполнения простейших запросов. Формирование критерия отбора. Сортировка данных.

    презентация [120,1 K], добавлен 14.02.2014

  • Сущности и функциональные зависимости базы данных. Атрибуты и связи. Таблицы базы данных. Построение ER-диаграммы. Организация ввода и корректировки данных. Реляционная схема базы данных. Реализация запросов, получение отчетов. Защита базы данных.

    курсовая работа [2,4 M], добавлен 06.02.2016

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

    курсовая работа [2,1 M], добавлен 17.06.2013

  • Методы проектирования базы данных по заданной предметной области с использованием CASE-средств ER/Studio и СУБД MS Access. Формирование и связывание таблиц, ввод данных. Создание экранных форм, запросов, отчетов, меню приложения. Генерация приложения.

    курсовая работа [884,0 K], добавлен 08.09.2010

  • Выделение информационных объектов и их инфологическая модель. Логическая структура реляционной базы данных. Разработка таблиц в системе управления базами данных Access. Создание запросов, форм и отчетов в СУБД Access. Разработка приложения пользователя.

    курсовая работа [2,8 M], добавлен 05.02.2018

  • Основные объекты системы управления базами данных Microsoft Access. Разработка базы данных для магазина бытовой техники, оказывающая покупателям бытовой техники информационную функцию. Создание таблиц, схемы данных, запросов, форм, отчетов, главной формы.

    контрольная работа [1,8 M], добавлен 29.07.2013

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