Имя
столбца показывает, по какому столбцу
группируются записи. Группой являются
записи с совпадающим значением указанного
столбца.
Спецификация
– это имя поля, по которому упорядочиваются
записи.
Имя
таблицы показывает, в какую таблицу
на диске будут помещены результаты запроса.
Имя может быть полным. Если полученную
таблицу следует добавить в проект, то
она добавляется в группу свободных таблиц
(free table) на вкладке Data
окна проекта кнопкой Add.
- Откроем ранее
созданную базу данных «Автосервис».
- Для таблицы
«Фирмы» требуется вывести номер, название
и адрес фирмы. Оператор SELECT для этого
запроса запишем в окне команд следующим
образом:
SELECT
nom_firm AS Номер фирмы,
nazvan_firm AS назван_фирмы,
address AS Адрес FROM Фирмы
Закончив
ввод команды, нажмем клавишу Enter. На
экране появятся результаты выборки.
- Для таблицы
«Фирмы» требуется вывести названия
фирм с названием района не «Ленинский».
Для этого запроса оператор SELECT запишем
следующим образом:
SELECT
nazvan_firm AS Назван_фирм,
raion AS Район FROM Фирмы
WHERE raion !=”Ленинский”
- Для таблиц
«Фирмы» и «Фирмы-Услуги» требуется
вывести номер, название, адрес фирмы и
услуги, которые оказывает каждая фирма
(адрес и телефон фирмы должны быть записаны
в одном поле). Результирующая таблица
должна быть создана с именем «Данные».
Оператор SELECT для этого запроса запишите
следующим образом:
SELECT
фирмы.nom_firm AS Номер,
фирмы.nazvan_firm AS Назван_фирм,ALLTRIM(фирмы.address)+" тел. "+ALLTRIM(фирмы.tel)
AS Адрес, vid_yslygi FROM фирмы,
виды услуг WHERE фирмы.vid_yslygi=виды
услуг.vid_yslygi
INTO
TABLE “x:КурсоваяДанные”
- Требуется
вывести названия фирм, которые оказывают
услугу «Мойка машины». Оператор SELECT
для этого запроса запишите следующим
образом:
select
nazvan_firm as Назван_фирм,
vid_yslygi as Вид_услуги,
from фирмы, фирмы-услуги
WHERE фирмы.nom_firm=фирмы-услуги.
nom_firm AND vid_yslygi=”Мойка
машины” into table
“x:КурсоваяУслуги”
- Закройте
базу данных «Автосервис».
- Закройте
приложение.
Создание
меню приложения
- Создаем строки
меню (горизонтального меню).
- Откроем ранее
созданный проект.
- Перейдем
на вкладку All, выбираем группу Other,
затем выбираем группу Menus и нажмем
кнопку New окна проекта.
- В появившемся
диалоговом окне New Menu выбарием
вариант меню Menu (горизонтальное меню).
В результате запускается конструктор
меню, а в основное меню Visual FoxPro
добавляется новый пункт Menu. В конструкторе
меню в поле Prompt можно ввести наименование
пунктов меню. Раскрывающийся список
Result используется для указания типа
меню (Command – Команда,
Pad Name – Наименование
строки меню, Submenu –
Подменю, Procedure – Процедура). Кнопка
Options открывает диалоговое окно Prompt
Options, в котором можно определить дополнительные
параметры данного элемента меню (например,
«горячие клавиши»). В списке Menu level
указывается уровень текущего меню.
- В поле Prompt
введем наименование первого пункта меню
– Фирмы – и нажимаем клавишу
<Tab> для перехода на следующее поле.
- Для определения
типа пункта меню нажимаем кнопку раскрытия
списка и выберем значение Submenu.
- Перейдем
на следующую строку и введем наименование
и тип второго пункта меню. Аналогично
введем наименования других пунктов меню
(рис.1).
Prompt |
Result |
|
Фирмы |
Submenu |
|
Виды
услуг |
Submenu |
|
Районы |
Submenu |
Рис.1 |
Фирмы-Услуги |
Submenu |
|
Справка |
Procedure |
|
Выход |
Command |
|
- Определим
для пунктов меню «горячие клавиши».
Для этого необходимо включить в его имя
перед активизирующим символом следующие
символы: <. В качестве «горячей клавиши»
можно использовать первый символ имени
пункта меню или любой другой символ. В
нашем примере перед именами пунктов разместим
цифры и их используем в качестве «горячих
клавиш» (рис.2).
Prompt |
|
<1
Фирмы |
|
<2
Виды услуг |
|
<3
Районы |
Рис.2 |
<4
Фирмы-Услуги |
|
<F1
Справка |
|
<X
Выход |
|
- Определим
клавиши быстрого вызова пунктов
меню. Для этого выполним следующие
действия:
- Установим
курсор на пункт меню «Фирмы».
- Нажимаем
кнопку Options
- В открывшемся
диалоговом окне Prompt Options в области
Shortcut поле Key Label содержит подсказку
press the key. Установим курсор в поле Key
Label и нажимаем комбинацию клавиш Alt
+ 1, которая будет использоваться
для быстрого вызова.
- Нажимаем
кнопку Ok.
- Аналогичные
действия выполним и для остальных полей,
задав им соответственно следующие комбинации
клавиш:
Виды
услуг– Alt + 2;
Районы–
Alt + 3;
Фирмы-Услуги–
Alt + 4;
Справка
– F1;
Выход
– Alt + X.
- Определим
команду, которая будет выполняться при
выборе пункта меню «Выход». Для этого
выделим данный пункт и в поле, расположенном
справа от списка Result, введем команду
QUIT.
- Определим
последовательность команд, которая должна
выполняться при выборе пункта меню «Справка».
Для этого выделим пункт «Справка».
Нажмем кнопку Create и в открывшемся
диалоговом окне редактирования процедуры
определим фрагмент кода, связанный с
элементом строки меню. В нашем примере
необходимо ввести следующий код (данные
должны быть свои):
messagebox ("Проект
разработала"+;
chr(13)+;
"Левашова
Ирина Игоревна"+;
chr(13)+;
"студентка
группы 41 - Б"+;
chr(13)+;
chr(13)+;
"(с)
НЭПК 2008 год", 0+64+0, "Справка")
Примечание:
Функция MESSAGEBOX выводит на экран диалоговое
окно. Она имеет следующий формат:
Messagebox
(текст_сообщения, тип_диалогового_окна,
заголовок)
Аргумент
тип_диалогового_окна представляет собой
сумму трех параметров: типа кнопок,
типа значков и номера кнопки, выбранной
по умолчанию
Функция
chr(13) осуществляет переход на новую строку.
- Определим
подменю. Для этого выполним следующие
действия:
- Нажимаем
кнопку Create пункта меню «Фирмы». На
экране появляется пустое окно конструктора
меню. Список Menu Level нового окна
содержит метку текущего пункта меню.
- Введем в
поле Prompt первой строки заголовок
Формы. Используя список Result, зададим
тип пункта Submenu. Нажимаем кнопку
Create. Введем в поле Prompt первой строки
заголовок «Фирмы». Используя список
Result, зададим тип пункта Procedure и в
окне редактирования процедуры введем
set default to
“x:Курсовая”
do
form Фирмы.scx
Закроем
окно процедуры.
Примечание:
В командах VFP в именах папок и файлов не
должно быть пробелов.
- При помощи
окна Menu Level перейдем на уровень
выше.
- Во второй
строке введем заголовок Отчеты.
Используя список Result, зададим тип
пункта Submenu. Нажимаем кнопку Create.
Введем в поле Prompt первой строки заголовок
«Фирмы». Используя список Result, зададим
тип пункта Command и в соседнем поле напечатаем
команду:
report
form “x: Курсовая Фирмы”
Примечание:
При выполнении этой команды отчет будет
печататься только на экране в окне VFP.
Для того чтобы очистить экран после просмотра
отчета нужно в командном окне ввести
команду CLEAR. Это будет пункт меню <6
Очистка.
- При помощи
окна Menu Level перейдем на уровень
выше.
- Введем в
поле Prompt третьей строки заголовок
Запросы. Используя список Result, зададим
тип пункта Submenu. Нажимаем кнопку
Create. Введем в поле Prompt первой строки
заголовок «Фирмы-районы». Используя список
Result, зададим тип пункта Procedure и в
окне редактирования процедуры введем
set default to
“x: Курсовая”
do
фирмы_районы.qpr
Закроем
окно процедуры.
- Перейдем
на первый уровень меню, выбрав в списке
Menu Level пункт Menu Bar.
- Аналогично
определим подменю для пунктов «Виды
услуг», «Районы», «Фирмы-Услуги».
- Для улучшения
внешнего вида меню создаем разделительные
линии. Для этого выполним следующие действия:
- Выделим пункт
меню «Фирмы» и нажмем кнопку Edit.
- В открывшемся
подменю установим курсор на пункте
«Отчеты» и нажмем кнопку Insert.
- В поле
Prompt образованного пункта меню удалим
строку New Item и введем -
- Установим
курсор на пункте «Запросы» и нажмем
кнопку Insert, удалим строку New
Item и введем -
- Перейдем
на уровень выше и аналогично создадим
разделительные линии в подменю пунктов
«Виды услуг», «Районы», «Фирмы-Услуги».
- Определим
параметры меню. Для этого из меню View
выберите команду General Options. В открывшемся
диалоговом окне General
Options в группе Location выберем вариант
размещения строки созданного меню Replace.
Это значит, что при выполнении созданное
нами меню будет замещать стандартное
меню VFP. Затем нажмите кнопку Ok.
Примечание:
Для того, чтобы закрыть все окна на экране
в командном окне введем команду:
Примечание:
Для того, чтобы восстановить на экране
стандартное горизонтальное меню VFP в
командном окне введем команду:
set
sysmenu to default
Это
будет пункт меню <8 Стандартное
меню.
- Сохраним
созданное меню. Для этого в
меню File выберем команду Save as,
в открывшемся окне в поле Папка выберем
папку Курсовая, в поле Save Menu введем
имя сохраняемого меню Меню1. В завершении
нажмем кнопку Сохранить.
- Просмотрим
созданное меню с помощью кнопки Preview
окна конструктора меню.
- Запустим
программу меню на выполнение. Для этого
в окне проекта установим курсор на имени
созданного меню и нажмем кнопку Run.
На экране появится созданное нами меню,
которое будет замещать горизонтальное
меню Visual FoxPro. Проверим работоспособность
каждого пункта меню.