Файл: курсовая Кирилл.doc

ВУЗ: Сибирский федеральный университет

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.01.2019

Просмотров: 1591

Скачиваний: 7

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.





4.2 Запрос 2


Какие производители производят крупу, по какой цене и под какими брендами?

Создание этого запроса будет происходить в режиме конструктора запросов с использованием таблиц «proizvoditel», «naimenovaniya», «spr_prod», «Prod» выберем следующие поля необходимые для запроса «type» из таблицы «Spr_prod», «type» из таблицы «proizvoditel», «name» из таблицы «naimenovaniya» и «cena_rub» из таблицы «naimenovaniya». На рисунке 4.2.1 представлен «запрос 2» в режиме конструктора.


Рисунок 4.2.1 – Запрос 2 в режиме конструктора, вкладка «Fields»


Теперь во вкладке «Filter» панели конструктора запроса введем значение поля идентифицирующего необходимое нам тип продукта, например его код «Prod.id_type=(3)». На рисунке 4.2.2 представлен «запрос 2» после создания фильтрации данных.


Рисунок 4.2.2 – Запрос 2 в режиме конструктора, вкладка «Filter»


4.3 Запрос 3


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

Создание этого запроса будет происходить в режиме конструктора запросов с использованием таблиц «zakup», «zakup_det», «naimenovaniya», «proizvoditel» и «spr_proizv» выберем следующие поля необходимые для запроса «date_zakup» из таблицы «zakup», «kolvo» из таблицы «zakup_det», «name» и «cena_rub» из таблицы «naimenovaniya», «name» из таблицы «proizvoditel», «type» из таблицы «spr_proizv». Так же необходимо добавить столбец «стоимость» значения в которой будут выводиться, исходя из стоимости наименования продукции и количестве поставленного товара. Для этого в поле «Function and expressions» окна «Query Designer» необходимо ввести функцию «Naimenovaniya.cena_rub*Zakup_det.kolvo AS стоимость» после чего нажать кнопку «Add». На рисунке 4.2.1 представлен «запрос 3» в режиме конструктор.


Рисунок 4.3.1 – Запрос 3 в режиме конструктора, вкладка «Fields»


Теперь во вкладке «Filter» панели конструктора запроса введем значение поля идентифицирующего необходимую нам поставку, например ее код «Zakup.id_zakup=(1)». Далее закрываем окно конструктора и сохраняем запрос, затем находим наш запрос в окне «Project manager», нажмем на кнопку «Run» (Выполнить). В результате мы увидим таблицу, в которой будут перечислены продукты необходимые для блюда с кодом = 1, представленную на рисунке 4.3.2.


Рисунок 4.3.2 – Результат выполнения запроса 3



5 Создание отчетов в Microsoft Visual FoxPro


Отчеты предназначены для формирования выходных документов и вывода их на печать. В Microsoft Visual FoxPro отчеты создаются аналогично запросам. В окне «Project Manager» переходим на вкладку «Reports» и нажимаем кнопку «New» для создания отчета. Отчеты удобно создавать в режиме мастера и при необходимости можно его отредактировать, добавляя любые элементы.


5.1 Отчет №1


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



Рисунок 5.1.1 – Создание новой группы данных для первого отчёта


Рисунок 5.1.2 – Первый отчет в режиме «Report Designer»


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


Рисунок 5.1.3 – Фрагмент первого отчета


5.2 Отчет №2


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

Рисунок 5.2.1 – Создание новой группы данных для второго отчёта


Рисунок 5.2.2 – Второй отчет в режиме «Report Designer»






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


Рисунок 5.2.3 – Фрагмент второго отчета


5.2 Отчет №3


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

Рисунок 5.3.1 – Создание новой группы данных для третьего отчёта


Рисунок 5.3.2 – Третий отчет в режиме «Report Designer»





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


Рисунок 5.3.3 – Фрагмент третьего отчета


6 Создание кнопочной формы


Для создания кнопочной формы требуется выбрать в менеджере проекта пункт «Forms» кнопку «New», в появившемся окне следует выбрать «NewForms». Главная кнопочная форма будет создаваться в режиме конструктора. Она будет включать в себя три кнопки, с помощью которых можно будет открыть формы с таблицами, запросами и отчетами. Эти формы должны быть созданы заранее.

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

  • Command1. Кнопка, предназначенная для открытия формы «Таблицы».

  • Label1. Текстовый элемент, предназначенный для пояснения значения компонента Command1.

  • Command2. Кнопка, предназначенная для открытия формы «Запросы».

  • Label2. Текстовый элемент, предназначенный для пояснения значения компонента Command2.

  • Command3. Кнопка, предназначенная для открытия формы «Отчеты».

  • Label3. Текстовый элемент, предназначенный для пояснения значения компонента Command3.


На рисунке 6.1 представлена форма «Приложение» в режиме конструктора.



Рисунок 6.1 – форма «Приложение» в режиме конструктор

В компонентах Command1, Command2, Command3 необходимо создать событие «Click» прописать команду (ее можно найти в окне Command) для открытия нужных таблиц. Используемые команды просмотра таблиц представлены на рисунках 6.2, 6.3 и 6.4.


Рисунок 6.2 – Команда, используемая при событии «Click» компонента «Command1» формы «Приложение»




Рисунок 6.3 – Команда, используемая при событии «Click» компонента «Command2» формы «Приложение»


Рисунок 6.4 – Команда, используемая при событии «Click» компонента «Command3» формы «Приложение»


После чего запустить форму (Рис. 6.5) и сохранить ее.


Рисунок 6.5 – Форма «Приложение»


После чего необходимо создать форму «Таблицы». На форме в режиме редактирования требуется разместить необходимые компоненты, которые находятся на панели инструментов FormControls. Здесь будут использоваться компоненты:

  • Command1. Кнопка, предназначенная для открытия таблицы «spr_bl».

  • Command5. Кнопка, предназначенная для открытия формы «Тип блюд» (Рис. 6.6).

  • Label1. Текстовый элемент, предназначенный для пояснения значения компонента Command1 и Command5.

  • Command2. Кнопка, предназначенная для открытия таблицы «bl».

  • Command6. Кнопка, предназначенная для открытия формы «Блюдо» (Рис. 6.7).

  • Label2. Текстовый элемент, предназначенный для пояснения значения компонента Command2 и Command6.

  • Command3. Кнопка, предназначенная для открытия таблицы «spr_prod».

  • Command7. Кнопка, предназначенная для открытия формы «Тип продукта» (Рис. 6.8).

  • Label3. Текстовый элемент, предназначенный для пояснения значения компонента Command3 и Command7.

  • Command4. Кнопка, предназначенная для открытия таблицы «prod».

  • Command8. Кнопка, предназначенная для открытия формы «Справочник продукт» (Рис. 6.9).

  • Label4. Текстовый элемент, предназначенный для пояснения значения компонента Command4 и Command8.

  • Command9. Кнопка, предназначенная для открытия таблицы «spr_ed_izm».

  • Command10. Кнопка, предназначенная для открытия формы «Единицы измерения» (Рис. 6.10).

  • Label5. Текстовый элемент, предназначенный для пояснения значения компонента Command9 и Command10.

  • Command19. Кнопка, предназначенная для открытия таблицы «assoc».

  • Command20. Кнопка, предназначенная для открытия формы «Ассоциация блюда-продукты» (Рис. 6.11).

  • Label6. Текстовый элемент, предназначенный для пояснения значения компонента Command19 и Command20.

  • Command11. Кнопка, предназначенная для открытия таблицы «spr_proizv».

  • Command12. Кнопка, предназначенная для открытия формы «Справочник производитель» (Рис. 6.12).

  • Label7. Текстовый элемент, предназначенный для пояснения значения компонента Command11 и Command12.

  • Command13. Кнопка, предназначенная для открытия таблицы «proizvoditel» .

  • Command14. Кнопка, предназначенная для открытия формы «Производители» (Рис. 6.13).

  • Label8. Текстовый элемент, предназначенный для пояснения значения компонента Command13 и Command14.

  • Command15. Кнопка, предназначенная для открытия таблицы «spr_strana».

  • Command16. Кнопка, предназначенная для открытия формы «Справочник страна» (Рис. 6.14).

  • Label9. Текстовый элемент, предназначенный для пояснения значения компонента Command15 и Command16.

  • Command17. Кнопка, предназначенная для открытия таблицы «spr_strana».

  • Command18. Кнопка, предназначенная для открытия формы «Справочник страна» (Рис. 6.15).

  • Label10. Текстовый элемент, предназначенный для пояснения значения компонента Command17 и Command18.

  • Command21. Кнопка, предназначенная для открытия таблицы «zakup» .

  • Command22. Кнопка, предназначенная для открытия формы «Поставка» (Рис. 6.16).

  • Label11. Текстовый элемент, предназначенный для пояснения значения компонента Command21 и Command22.

  • Command23. Кнопка, предназначенная для открытия таблицы «zakup_det».

  • Command24. Кнопка, предназначенная для открытия формы Поставка детали» (Рис. 6.17).

  • Label12. Текстовый элемент, предназначенный для пояснения значения компонента Command23 и Command24.


Все запускаемые формы создаётся в режиме мастера.



Рисунок 6.6 – Форма «Тип блюд»



Рисунок 6.7 – Форма «Блюдо»



Рисунок 6.8 – Форма «Тип продукта»



Рисунок 6.8 – форма «Продукт»



Рисунок 6.9 – форма «Единицы измерения»



Рисунок 6.10 – форма «Продукт»



Рисунок 6.11 – форма «Справочник производитель»



Рисунок 6.12 – форма «Производитель»



Рисунок 6.13 – форма «Справочник страна»



Рисунок 6.14 – форма «Справочник адрес»



Рисунок 6.15 – форма «Поставка»



Рисунок 6.16 – форма «Поставка детали»



В компонентах Command1, Command2, Command3, Command4, Command5, Command6, Command7, Command8, Command9, Command10, Command11, Command12, Command13, Command14, Command15, Command16, Command17, Command18, Command19, Command20, Command21, Command22, Command23, Command24 необходимо создать событие «Click» прописать команду (ее можно найти в окне Command) для открытия нужных таблиц. Используемые команды просмотра таблиц представлены на рисунках 6.17, 6.18, 6.19, 6.20, 6.21, 6.22, 6.23, 6.24, 6.25, 6.26, 6.27, 6.28, 6.29, 6.30, 6.31, 6.32, 6.33, 6.34, 6.35, 6.36, 6.37, 6.38, 6.39, 6.40,.


Рисунок 6.2 – Команда, используемая при событии «Click» компонента «Command1» формы «Приложение»




Рисунок 6.3 – Команда, используемая при событии «Click» компонента «Command2» формы «Приложение»


Рисунок 6.4 – Команда, используемая при событии «Click» компонента «Command3» формы «Приложение»


После чего запустить форму (Рис. 6.5) и сохранить ее.


Рисунок 6.5 – Форма «Приложение»



Рисунок 2.4.4 – Форма «Отчеты»


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

Команды, используемые в главной кнопочной форме:

  • DO FORM "c:\users\admin\documents\visual foxpro projects\app_table_test.scx" ̶̶̶̶ Таблицы

  • DO FORM "c:\users\admin\documents\visual foxpro projects\form1.scx" ̶̶̶̶ Запросы

  • DO FORM "c:\users\admin\documents\visual foxpro projects\form3.scx" ̶̶̶̶ Отчеты



Рисунок 2.4.5 – Главная кнопочная форма «Управление базой данных Сбербанка»


7 Создание приложения АРР


Приложение в MicrosoftVisualFoxProбудет иметь тип Application.

Для создания приложения нужно выбрать в окне ProjectManager главную кнопочную форму и вызвать контекстное меню. Затем выбрать пункт Project info, как показано на рисунке 2.5.1



Рисунок 2.5.1 – ВыборпунктаProjectinfo


Откроетсяокно Project Information (Рис. 2.5.2). Здесь следует выбрать пункт UpdateNativeCodePages, чтобы обновить машинный код страницы.





Рисунок 2.5.2 – Окно ProjectInformation



Теперь в менеджере проекта нужно выделить главную форму и выбрать кнопку Build. Откроется окно BuildOptions (Рис. 2.5.3). Следует выбрать в BuildAction пункт Application (тип будущего приложения).

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



Рисунок 2.5.3 – Окно создания приложения


После этого откроется окно сохранения приложения. Нужно указать имя файла и его путь.

Приложение готово. Оно имеет вид главной кнопочной формы (Рис. 2.4.5).


8 Структура и создание таблиц в My SQL


Создание базы данных в MySQL очень трудоемкий процесс, поскольку это консольное приложение, то есть в нем отсутствует графический интерфейс, как следствие все операции необходимые для создания базы данных, ее редактирования и вывода на информации, содержащейся в базе данных информации, осуществляется только посредством написания кода SQL вручную. Что бы автоматизировать процесс, тем самым ускорив работу и снизив вероятность допуска ошибок, при работе с системой управления базами данных необходимо использовать графический интерфейс, который устанавливается дополнительно к MySQL. Наиболее доступным и многофункциональным графическим интерфейсом для MySQL является «dbForge Studio for MySQL».


Создадим таблицы «associaciya», «bl», «naimenovaniya», «prod», «proizvod», «spr_address», «spr_bl», «spr_ed_izm», «spr_prod», «spr_proizv», «spr_strana», «spr_bl», «spr_ed_izm» в режиме конструктора в соответствии с рисунками 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8 6.9, 6.10, 6.11, 6.12, 6.13.


Рисунок 6.1 – Таблица «associaciya» в режиме конструктора, вкладка «Общие»


Рисунок 6.2 – Таблица «bl» в режиме конструктора, вкладка «Общие»


Рисунок 6.3 – Таблица «naimenovaniya» в режиме конструктора, вкладка «Общие»


Рисунок 6.4 – Таблица «prod» в режиме конструктора, вкладка «Общие»


Рисунок 6.5 – Таблица «proizvod» в режиме конструктора, вкладка «Общие»


Рисунок 6.6 – Таблица «spr_address» в режиме конструктора, вкладка «Общие»


Рисунок 6.7 – Таблица «spr_bl» в режиме конструктора, вкладка «Общие»


Рисунок 6.8 – Таблица «spr_ed_izm» в режиме конструктора, вкладка «Общие»


Рисунок 6.9 – Таблица «spr_prod» в режиме конструктора, вкладка «Общие»


Рисунок 6.10 – Таблица «spr_proizv» в режиме конструктора, вкладка «Общие»


Рисунок 6.11 – Таблица «spr_strana» в режиме конструктора, вкладка «Общие»


Рисунок 6.12 – Таблица «zakup» в режиме конструктора, вкладка «Общие»


Рисунок 6.13 – Таблица «zakup_det» в режиме конструктора, вкладка «Общие»


Далее заполняем таблицы необходимыми данными. На рисунках 6.14, 6.15, 6.16, 6.17, 6.18, 6.19, 6.20, 6.21, 6.22, 6.23, 6.24, 6.25, 6.26, 6.27 представлены таблицы: «associya», «bl», «naimenovaniya», «prod», «proizvod», «spr_address», «spr_bl», «spr_ed_izm», «spr_prod», «spr_proizv», «spr_strana», «spr_bl», «spr_ed_izm» заполненные с помощью команды Browse. Такой метод лучше, тем, что позволяет видеть перед собой все данные таблицы, а не только редактируемую или добавляемую запись, и при необходимости оперативно внести изменения в таблицу.


Рисунок 6.14 – Фрагмент таблицы «associaciya» в режиме конструктора, вкладка «Данные»


Рисунок 6.15 – Таблица «bl» в режиме конструктора, вкладка «Данные»


Рисунок 6.16 – Фрагмент таблицы «naimenovaniya» в режиме конструктора, вкладка «Данные»



Рисунок 6.17 – Фрагмент таблицы «prod» в режиме конструктора, вкладка «Данные»


Рисунок 6.18 – Таблица «proizvod» в режиме конструктора, вкладка «Данные»


Рисунок 6.19 – Таблица «spr_address в режиме конструктора, вкладка «Данные»


Рисунок 6.20 – Таблица «spr_bl» в режиме конструктора, вкладка «Данные»


Рисунок 6.21 – Таблица «spr_ed_izm» в режиме конструктора, вкладка «Данные»


Рисунок 6.22 – Таблица «spr_prod» в режиме конструктора, вкладка «Данные»



Рисунок 6.23 – Таблица «spr_proizv» в режиме конструктора, вкладка «Данные»


Рисунок 6.24 – Таблица «spr_strana» в режиме конструктора, вкладка «Данные»


Рисунок 6.25 – Таблица «zakup» в режиме конструктора, вкладка «Данные»


Рисунок 6.26 – Фрагмент таблицы «zakup_det» в режиме конструктора, вкладка «Данные»