- •Министерство образования и науки Российской Федерации
- •Содержание
- •Лабораторная работа №1-2 анализ поведения системы с использованием контекстных диаграмм йордана – де марко
- •Лабораторная работа №3 анализ данных. Построение инфологической модели данных бд
- •Задание 1
- •Задание 3
- •Задание 5
- •Задание 6
- •Задание 7
- •Задание 9
- •Лабораторная работа №4 преобразование инфологической модели данных в реляционную на основе правил преобразования
- •Лабораторная работа №5 построение реляционной моедли бд с использованием метода нормальных форм
- •Лабораторная работа №6 Проект как средство объединения элементов приложения. Создание базы данных в состве проекта visual foxpro
- •Лабораторная работа №7 создание базы данных в составе проекта vfp
- •Лабораторная работа №8 создание форм как средства работы с таблицами
- •Форма как средство ввода и редактирования данных
- •Создание формы с помощью конструктора форм
- •Окно конструктора форм
- •2. Создание формы
- •3. Настройка параметров формы
- •4. Среда окружения формы
- •6. Размещение объектов в форме
- •6.1. Размещение полей таблиц и надписей к ним с использованием построителя формы
- •6.2. Текстовая информация
- •6.3. Поле ввода
- •6.4. Использование построителя для создания формы
- •6.5. Поле редактирования
- •6.6. Кнопки управления
- •6.6.1. Размещение одиночных кнопок
- •6.6.2. Редактирование составных объектов Создание группы кнопок
- •7. Создание формы с помощью мастера
- •Лабораторная работа № 9-10 Запросы к базе данных
- •I. Создание однотабличного запроса:
- •II. Создание многотабличного запроса:
- •III. Группировка полей запроса
- •IV. Подзапросы
- •Использование представлений данных
- •Создание представления данных
- •Просмотр представления данных
- •Сохранение созданного представления данных
- •Параметры представления данных
- •Редактирование данных
- •Установка редактируемых полей
- •Лабораторная работа № 11-12 Создание и печать отчетов
- •2.2. Типы полос окна конструктора отчета
- •Лабораторная работа №13 Хранимые процедуры и триггеры
- •1. Условия достоверности, хранимые процедуры, триггеры
- •Хранимые процедуры
- •Условия достоверности ввода данных на уровне поля таблицы
- •Условия достоверности ввода данных на уровне записей
- •Триггеры
- •Использование триггеров и хранимых процедур
- •Использование триггеров при определении ссылочной целостности
- •Определение значения поля при добавлении новой записи
- •Проверка удовлетворения введенных значений заданному условию
- •Лабораторная работа № 14 Создание меню приложения
- •Лабораторная работа № 15 Генерация приложения
- •Построение проекта и генерация приложения
- •Установка основной программы проекта
- •Использование опции Exclude
- •Очистка проекта от удаленных файлов
- •Построение проекта
- •1. Последовательность действий при настройке параметров формы
- •Форматы данных
- •2. Поле ввода
- •Коды шаблонов picture
- •3. Использование построителя при создании поля ввода
- •Назначение флажков вкладки format
- •Назначение параметров вкладки style
- •4. Поле редактирования
- •5. Кнопки управления
- •5.1. Размещение одиночных кнопок
- •5.2. Создание группы кнопок
- •Расширенные средства ввода данных
- •1. Отображение данных в форме в табличном виде
- •2. Использование построителя
- •Назначение вкладок окна Grid Builder
- •3. Свойства, определяющие объект Grid
- •3.1. Свойства объекта Column
- •Свойства объекта Header
- •3.3. Свойства объекта Text
- •4. Создание многотабличных форм для таблиц, имеющих отношение "один-ко-многим"
- •4.1. Создание многотабличной формы с помощью мастера
- •Варианты продолжения работы с формой
- •4.2. Создание объекта Grid с помощью конструктора форм
- •Создание формы, содержащей объект Grid
- •Создание формы, содержащей три объекта Grid
- •5. Создание формы с вкладками
- •6. Набор форм
- •7. Таймер
- •Назначение свойств объекта Timer
- •7.1. Создание формы с использованием таймера
- •8. Добавление данных в список
- •Рекомендации по созданию отчета
- •Создание отчета с помощью конструктора отчетов
- •1. Окно конструктора отчетов
- •2. Типы полос окна конструктора отчета
- •3. Использование команды Quick Report для размещения полей
- •4. Установка среды окружения отчета
- •5. Размещение объектов в отчете
- •5.1.Размещение в отчете текстовой информации
- •5.2. Добавление в отчет областей заголовка и итогов
- •5.3. Создание простого отчета
- •5.4. Размещение полей
- •5.5. Формирование выражения поля
- •5.6. Задание формата данных
- •5.7. Задание условий печати
- •5.8. Расположение поля в полосе
- •5.9. Размещение итогового поля
- •5.10. Размещение в отчете линий и прямоугольников
- •5.11. Панель инструментов Color Palette
- •5.12. Размещение в отчете рисунков
- •6. Создание отчета в свободной форме
- •7. Создание табличного отчета
- •8. Группировка данных в отчете
- •8.1. Использование группировки в отчете
- •9. Использование в отчете переменных
- •10. Разметка страницы отчета
- •11. Создание многоколоночного отчета
Лабораторная работа № 14 Создание меню приложения
Цель: Овладеть практическими навыками формирования меню приложения в VFP.
Оборудование: УКК (факультет СПО НИУ ИТМО).
Программные средства:СУБДVisualFoxPro(8.0, 9.0).
Практическое задание:
Создать меню приложения (любого типа) (согласно индивидуальному заданию), включив в него следующие пункты:
редактирование БД (форма);
выборки данных (запросы);
формирование отчета (отчет);
выход.
При создании пунктов меню использовать команды, подменю, процедуры.
Указание. Команды для выхода из меню сформировать самостоятельно.
Технология выполнения работы:
СОЗДАНИЕ МЕНЮ ПРИЛОЖЕНИЯ
Меню приложения позволяет объединить отдельные объекты (базу данных, входящие в нее таблицы, формы, отчеты, запросы).
Для создания меню приложения можно использовать команды:
DEFINE PAD – для создания линейки меню;
DEFINE BAR – для определения заголовков меню;
DEFINE POPUP – для создания подменю;
или с помощью Конструктора меню.
Для создания меню с помощью конструктора необходимо:
Открыть окно конструктора меню (опция New в меню File, опция Menu - New File или через Менеджер Проекта).
Описать вид меню, текст, пункты меню и его атрибуты.
Варианты расположения меню:
Menu - в виде горизонтальной строки;
Shortсut - всплывающее вертикальное меню.
Способы создания меню разных типов аналогичны.
Область конструктора меню содержит опции:
Promt (Приглашение) - поле для ввода наименований пунктов меню; для перехода на следующее поле использовать ENTER или TAB;
Result (Результат) - поле для указания типа пункта меню;
Options (Опции элелемента меню) - открытие диалогового окна Prompt Options (Опции элeмeнтa меню), в котором можно определить дополнительные пapaметры элемента меню («горячие» клавиши, сообщение в строке состояния при выборе пункта меню и др);
Menu Level (Уровень меню) - указывается уровень текущего меню; используется для перехода в меню верхнего уровня;
Insert (Вставить) - кнопка для добавления нового пункта меню;
Insert Bar (Вставить команды системного пеню) - размещение в создаваемом пользовательском меню команд системного меню;
Delete (Удалить) - кнопка для удаления текущего пункта меню;
Previer (Просмотр) - предварительный просмотр внешнего вида меню.
Для определения типа пункта меню необходимо перейти в поле Result после ввода наименования пункта меню и выбрать его тип:
Command (Команда);
Pad name (Наименование строки меню);
Submenu (Подменю)
Procedure (Процедура).
Для пункта меню можно определить «горячую» клавишу, нажатие которой вместе с <Alt> активизирует этот пункт. Для этого включить в его имя перед активизирующим символом \<. Эти символы выделяются в строке подчеркиванием (по умолчанию: первая буква элемента строки меню). Иначе: перед именем пункта меню разместить цифры и использовать их в качестве горячих клавиш. Например: \<1Покупатели.
Назначение полей ввода диалогового окна Prompt Options:
Skip For (Пропустить для) - блокировка пункта меню (указать .Т. в построителе выражений);
Message (Сообщение) - сообщение в строке состояния при выборе пункта меню;
Pad name (Имя пункта меню);
Сomment (Комментарий) - комментарий к пункту мeню;
Область Shortcut (Вcплывающее меню) позволяет задать клавиши быстрого ввода пунктов меню.
Для определения параметров меню используется диалоговое окно General Options (Основные пapaмeтpы из меню View (Вид):
группа Location (Размещение) - выбор варианта размещения строки созданного меню;
поле Procedure (Процедура) - ввод фрагмента программы, которая будет выполняться при активизации строки меню;
флажки Setup (Задать) и Cleanup (Очистить) используются для открытия окна редактирования процедуры, вызываемой при запуске сгенерированной программы с описанием меню, и процедуры, вызываемой при завершении этой программ;
при установке флажка Top-level Form (Форма высокого уровня) меню отображается в отдельном окне.
Определить действия, которые будут выполняться при выборе пунктов меню (в соответствии с выбранным типом пункта меню).
Сохранить меню.
Сгенерировать меню, используя команду Generate (Генерация) из меню Menu (Меню) для использования в приложениях. При этом создается программа, которая запускается на выполнение:
Команда Generate (Генерация) из меню Menu;
Вести имя файла, создаваемого при генерации (поле Output File (Внешний файл));
Запустить генерацию описания (кнопка Generate (Генерация)).
После завершения генерации можно запустить программу меню на выполнение:
Запустить меню в окне проекта (кнопка Run (Запустить));
Команда Do (выполнить) в меню Program (Программа) (файлы с расширением MPR);
Команда в окне COMMAND:
DO <имя_меню>.mpr
Для активации сгенерированного меню из окна COMMAND используется команда:
ACTIVATE MENU <имя_меню>
Если выполнение команды для генерации горизонтального меню происходит в главном окне Visual FoxPro, то оно заменит системное меню. Чтобы вернуться обратно в системное меню Visual FoxPro, нужно деактивировать меню, выполнив команду:
DEACTIVATE MENU <имя_меню>
Затем удалить меню:
RELEASE MENUS <имя_меню> EXTENDED
Выполнить команду для восстановления прежнего системного меню:
SET SYSMENU TO DEFAULT
Примечание.
Для запуска из меню форм, запросов и отчетов используются следующие команды:
вызов отчета (с возможным заданием условия отбора строк отчета):
предварительный просмотр:
REPORT FORM <имя/путь> [FOR <условие>] TO PREVIEW
на принтер:
REPORT FORM <имя/путь> [FOR <условие>] TO PRINTER
в файл:
REPORT FORM <имя/путь> [FOR <условие>] TO FILE <имя/путь>
запуск запроса:
DO <имя>.qpr
запуск формы:
DO FORM <имя>