Министерство Общего и Профессионального Образования РФ
Н Г Т У
Факультет: АВТ
Группа: АМ – 811
Студент: Курамшин А.А.
Вариант: 6
Преподаватель: Трошина Г.В.
г. Новосибирск
2002г.
Цель работы:
Приобретение навыков разработки системы меню приложения для учебной БД.
Задание:
Создать и заполнить БД sveden, содержащую поля: фамилия, имя, отчество студента, группа, факультет, предмет, оценка, семестр, учебник, автор, стоимость. Выполнить запросы: вывод минимального, максимального и среднего значения поля размер стипендии; вывод фамилии всех студентов кроме обучающихся на факультетах РТФ и ФТФ; выборка фамилий всех студентов факультета АВТ.
Программа, полученная после генерации меню:
* *********************************************************
* *
* * 02/14/02 MENU.MPR 10:14:43
* *
* *********************************************************
* *
* * Author's Name
* *
* * Copyright (C) 2002 Company Name
* * Address
* * City, Zip
* *
* * Description:
* * This PROGRAM was automatically generated BY GENMENU.
* *
* *********************************************************
* *********************************************************
* *
* * Menu Definition
* *
* *********************************************************
*
SET SYSMENU TO
SET SYSMENU AUTOMATIC
DEFINE PAD _0ln0lyjq5 OF _MSYSMENU PROMPT "Таблицы" COLOR SCHEME 3 ;
KEY ALT+T, "ALT+T"
DEFINE PAD _0ln0lyjq6 OF _MSYSMENU PROMPT "Правка" COLOR SCHEME 3 ;
KEY ALT+E, "ALT+E"
DEFINE PAD _0ln0lyjq7 OF _MSYSMENU PROMPT "Запросы" COLOR SCHEME 3 ;
KEY ALT+Q, "ALT+Q"
DEFINE PAD _0ln0lyjq8 OF _MSYSMENU PROMPT "Выход" COLOR SCHEME 3 ;
KEY ALT+X, "ALT+X"
ON PAD _0ln0lyjq5 OF _MSYSMENU ACTIVATE POPUP таблицы
ON PAD _0ln0lyjq6 OF _MSYSMENU ACTIVATE POPUP правка
ON PAD _0ln0lyjq7 OF _MSYSMENU ACTIVATE POPUP запросы
ON SELECTION PAD _0ln0lyjq8 OF _MSYSMENU set sysmenu to default
DEFINE POPUP таблицы MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF таблицы PROMPT "Создать"
DEFINE BAR 2 OF таблицы PROMPT "Открыть"
DEFINE BAR 3 OF таблицы PROMPT "Выход"
ON SELECTION BAR 1 OF таблицы do 'd:\work\alex\subd\my\lab4_new\NewFile.prg'
ON SELECTION BAR 2 OF таблицы do 'd:\work\alex\subd\my\lab4_new\OpenFile.prg'
ON SELECTION BAR 3 OF таблицы set sysmenu to default
DEFINE POPUP правка MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF правка PROMPT "Править таблицу"
DEFINE BAR 2 OF правка PROMPT "Модифицировать таблицу"
ON SELECTION BAR 1 OF правка do 'd:\work\alex\subd\my\lab4_new\edittable.prg'
ON SELECTION BAR 2 OF правка do 'd:\work\alex\subd\my\lab4_new\modifytable.prg'
DEFINE POPUP запросы MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF запросы PROMPT "Максимальная стипендия"
DEFINE BAR 2 OF запросы PROMPT "Минимальная стипендия"
DEFINE BAR 3 OF запросы PROMPT "Средняя стипендия"
DEFINE BAR 4 OF запросы PROMPT "Стипендия от 100 до300."
DEFINE BAR 5 OF запросы PROMPT "Студенты АВТФ"
DEFINE BAR 6 OF запросы PROMPT "Студенты, кроме РТФ и ФТФ "
ON SELECTION BAR 1 OF запросы do 'd:\work\alex\subd\my\lab4_new\max_grand.prg'
ON SELECTION BAR 2 OF запросы do 'd:\work\alex\subd\my\lab4_new\min_grand.prg'
ON SELECTION BAR 3 OF запросы do 'd:\work\alex\subd\my\lab4_new\avg_grand.prg'
ON SELECTION BAR 4 OF запросы do 'd:\work\alex\subd\my\lab4_new\vib_grand.prg'
ON SELECTION BAR 5 OF запросы do 'd:\work\alex\subd\my\lab4_new\avtf_st.prg'
ON SELECTION BAR 6 OF запросы do 'd:\work\alex\subd\my\lab4_new\rtf_ftf_st.prg'
Результат выполнения программы:
При выборе команды «Создать» меню «Таблицы» выполняется следующая программа:
PROCEDURE NewFile
gcTable = GETFILE('DBF', 'Файл', 'Создать' , 0)
if !EMPTY(gcTable)
CREATE (gcTable)
clear
endif
ENDPROC
Команда «Открыть» вызывает выполнение программы:
PROCEDURE OpenFile
gcTable = GETFILE('DBF', 'Файл', 'Открыть' ,0)
if !EMPTY(gcTable)
USE (gcTable)
endif
ENDPROC
При нажатии «Выход» выполняется команда:
set sysmenu to default
При выборе команды «Править таблицу» меню «Править» выполняется следующая программа:
PROCEDURE EditTable
browse
ENDPROC
При выборе «Модифицировать таблицу» выполняется команда:
modify structure
При выборе команды «Максимальная стипендия» меню «Запросы» выполняется следующая программа:
SELECT MAX(grand_table2.grand);
FROM main_base!grand_table2
Результат выполнения программы:
При выборе «Минимальная стипендия» выполняется программа:
SELECT Min(grand_table2.grand);
FROM main_base!grand_table2
При выборе «Средняя стипендия» выполняется программа:
SELECT AVG(grand_table2.grand);
FROM main_base!grand_table2
При выборе «Стипендия от 100 до 300р» выполняется программа:
SELECT grand_table2.grand;
FROM main_base!grand_table2;
WHERE grand_table2.grand BETWEEN 100 AND 300
При выборе «Студенты АВТФ» выполняется программа:
SELECT Data_table1.surname, Data_table1.name_p, Data_table1.lastname,;
Faculty_table3.faculty;
FROM main_base!data_table1 INNER JOIN main_base!faculty_table3 ;
ON Data_table1.number_p = Faculty_table3.number_p;
WHERE Faculty_table3.faculty LIKE "АВТ"
При выборе «Студенты, кроме РТФ и ФТФ» выполняется программа:
SELECT Data_table1.surname, Data_table1.name_p, Data_table1.lastname,;
Faculty_table3.faculty;
FROM main_base!data_table1 INNER JOIN main_base!faculty_table3 ;
ON Data_table1.number_p = Faculty_table3.number_p;
WHERE NOT (Faculty_table3.faculty == "РТФ");
AND NOT (Faculty_table3.faculty == "ФТФ")
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.