Билеты, решения и методичка по Информатике (2.0)

Узнать стоимость написания работы

КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 1

1. Общие сведения о реляционной модели данных.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:

Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. Работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК

Вывести поля TAB, FIO, DATA, OBR первой записи в БД для работника, проработавшего на фирме не менее 10 лет.

3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника» Экзаменационный билет № 2

1. Структура команд СУБД FoxPro.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран количество работников, средняя зарплата которых не менее 250 грн.

3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 3

1. Создание и изменение структуры БД. Типы данных (типы полей).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран количество работников фирмы, родившихся позднее 1954 года.

3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 4

1. Средства редактирования данных. Команда BROWSE. Ключи и опции команды.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран количество работников (женщин), имеющих высшее образование.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 5

1. Средства просмотра содержимого БД (DISPL, LIST, их отличие).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран количество работников (женщин), владеющих навыками работы на ПК.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 6

1. Средства редактирования и добавления новых записей в БД (EDIT, CHANGE и APPEND).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран среднюю зарплату для работников фирмы (женщин), имеющих 3-х и более детей.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 7

1. Логическое упорядочивание БД. Создание и использование индексных файлов.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран среднюю зарплату на фирме.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 8

1. Последовательный поиск информации в БД (LOCATE, CONTINUE).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК

Вывести в BROWSE-окне список работников со стажем 10 лет. Предусмотреть вывод названия таблицы и заголовков полей по-русски.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 9

1. Средства создания и отладки программ (MODI COMM, DO).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран «средний стаж» работников фирмы.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 10

1. Средства алгоритмического языка в FoxPro. Команды присваивания и STORE. Работа с массивами.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и вывести на экран содержимое полей FIO, DATA, SRZAR, COMP записи для самого молодого работника фирмы.

3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 11

1. Средства алгоритмического языка FoxPro. Команды IF и CASE.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Вывести в BROWSE-окне список работников с высшим образованием. Предусмотреть вывод названия таблицы и заголовков полей по-русски.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 12

1. Средства алгоритмического языка FoxPro. Команды DO – WHILE, LOOP, EXIT.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


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


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 13

1. Использование встроенных функций FoxPro. Функции работы со строками. (LEN(), AT(), ALLTRIM(), SPACE() ).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Найти и удалить (логически и физически) из БД все записи, содержащих в поле дата рождения ссылку на 1966 год.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 31

1. Использование встроенных функций FoxPro. Функции проверки файлов и дисков (FILE ( ), EOF ( ), FOUND ( ), RECNO ( ), RECCOUNT ( ) ) .

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК

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


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 14

1. Изобразительные средства FoxPro.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК

Вывести в BROWSE-окне список работников, владеющих навыками работы на ПК. Предусмотреть вывод названия таблицы и заголовков полей по-русски, предусмотреть видимый размер поля FIO – 15 символов.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 15

1. Команды перемещения в БД. (GO TOP/BOTTOM, SKIP) , привести примеры.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Определить, каков процент работников фирмы не владеет иностранными языками.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»


Экзаменационный билет № 16

1. Удаление записей в БД (логическое и физическое).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Определить, каков процент работников фирмы владеет навыками работы на ПК.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 17

1. Средства разработки меню (LIGHTBAR – меню).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


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


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 19

1. Структура программы, реализующая обработку меню.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Определить, каков процент работников фирмы (женщин) достиг пенсионного возраста.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 20

1. Неформатированный ввод/вывод, команды INPUT, ACCEPT, WAIT, «?».

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Определить, каков процент работников фирмы получает в месяц более 500 грн.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 21

1. Средства форматированного ввода/вывода. Команды @…SAY…GET. Использование их опций и шаблонов.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Отобразить содержимое БД по возрастанию среднемесячной зарплаты.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 22

1. Команды установки SET. (DATE, TALK, MESSAGE, FILTER, PROCEDURE).

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Вывести на экран каждую четную запись БД.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 23

1. Структура окна FoxPro. Работа с окнами. Команды описания, активизации, перемещения.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Отобразить содержимое БД в алфавитном порядке фамилий работников.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 24

1. Модульность программ. Последовательность поиска процедур.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК

Вывести в BROWSE-окне список работников (мужчин). Предусмотреть вывод названия таблицы и заголовков полей по-русски.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 25

1. Модульность программ. Работа с процедурами. Описание и вызов процедур с параметрами и без параметров.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Вывести на экран каждую пятую запись БД.


3. Задача


Зав. кафедрой Преподаватель



КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 26

1. Работа с несколькими БД. Понятие рабочей области. Использование псевдонимов. Составное имя поля.

2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет №27

1. Типы бинарных связей. Привести примеры.

2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 28

1. Пример программы работы с двумя БД (с использованием окон).

2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 29

1. Работа с фильтрами.

2. Дана база данных (БД) о кадровом составе фирмы, которая содержит следующие данные:


Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


Определить, каков процент работников фирмы имеет детей.


3. Задача


Зав. кафедрой Преподаватель


КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 30

1. Установление связей 1:1 и 1:N в FoxPro.

2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:



3. Задача


Зав. кафедрой Преподаватель




КИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ

по дисциплине: «Информатика и компьютерная техника»

Экзаменационный билет № 18

1. Средства разработки меню (POPUP – меню).


2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:



3. Задача


Зав. кафедрой Преподаватель





2
. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:


2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:





2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:





2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2
. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:




2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ветвления case. Функция имеет вид:



Экзаменационный билет № 1

3. Вывести в BROWSE-окне список работников, средняя зарплата которых находится в интервале [350;700). Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Создать вычисляемое поле-nadbavka: 4% от среднемесячной зарплаты за знание каждого языка. Оформить задачу в виде процедуры, обеспечить ее вызов.



Экзаменационный билет № 2

3. Вывести в BROWSE-окне список работников (женщин). Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Оформить в виде процедуры, стаж работы должен быть параметром при оформлении процедуры. Предусмотреть вызов процедуры.



Экзаменационный билет № 3

3. Вывести в BROWSE-окне список работников (женщин). Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Оформить в виде процедуры, дату рождения передавать как параметр.



Экзаменационный билет № 4

3. Вывести в BROWSE-окне список работников, имеющих 3-х и более детей. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Добавить вычисляемое поле-nadbavka: 3% за каждого ребенка (от средней зарплаты).



Экзаменационный билет № 5

3. Вывести в BROWSE-окне список работников, фамилии которых начинаются на букву ‘Л’. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Добавить вычисляемое поле для сотрудников, стаж работы которых более 10 лет-надбавка-10% от средней зарплаты.



Экзаменационный билет № 6

3. Вывести в BROWSE-окне список работников, работающих не менее 10 лет на фирме. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Добавить вычисляемое поле-субсидии, для этих сотрудников, которая начисляется, если средняя зарплата меньше 100-10 % от средней зарплаты.



Экзаменационный билет № 7

3. Вывести в BROWSE-окне список работников с высшим образованием. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски, и вычисляемое поле-надбавка за знание ПК-10% от средней зарплаты.



Экзаменационный билет № 8

3. Вывести в BROWSE-окне список работников, владеющих не менее, чем двумя иностранными языками. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Если работник проработал на фирме более 15 лет, предусмотреть надбавку в размере 10 % от годового оклада. Вывод списка оформить в виде процедуры. В качестве параметра использовать знание работником иностранного языка



Экзаменационный билет № 9

3. Вывести в BROWSE-окне список работников (мужчин), достигших пенсионного возраста. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Оформить в виде процедуры. Обеспечить вызов этой процедуры.



Экзаменационный билет № 10

3. Вывести в BROWSE-окне список работников (женщин), владеющих навыками работы на ПК. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Оформить в виде процедуры, пол использовать как параметр при реализации процедуры. Предусмотреть вызов процедуры.



Экзаменационный билет № 11

3. Вывести в BROWSE-окне список работников с высшим образованием, владеющих навыками работы на ПК. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Оформить в виде процедуры, которая использует пол сотрудника в качестве параметра. Обеспечить вызов процедуры для пола «М» и «Ж».



Экзаменационный билет № 12

3. Вывести в BROWSE-окне список работников со стажем 10 лет, владеющих навыками работы на ПК. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Оформить решение в виде процедуры, стаж работы предавать как параметр. Предусмотреть вызов процедуры.



Экзаменационный билет № 13

3. Вывести в BROWSE-окне список всех работников, которые владеют иностранными языками. Сформировать вычисляемое поле NADBAVKA, в котором предусмотреть выплату премиальных в размере 15% и 30% от средней зарплаты работникам, владеющим 2 и более языками соответственно. Предусмотреть вывод названия таблицы и заголовков полей по-русски.



Экзаменационный билет № 14

3. Вывести в BROWSE-окне список всех работников, которые владеют иностранными языками. Сформировать вычисляемое поле NADBAVKA, в котором предусмотреть выплату премиальных в зависимости от стажа работы: 25 лет – 20% от средней зарплаты. Предусмотреть вывод названия таблицы и заголовков полей по-русски.



Экзаменационный билет № 15

3. Вывести в BROWSE-окне список всех работников, которые владеют иностранными языками. Сформировать вычисляемое поле SUBSIDIA, в котором предусмотреть выплату субсидий работникам в размере 15% от средней зарплаты работникам, имеющим 3 и более детей. Предусмотреть вывод названия таблицы и заголовков полей по-русски.



Экзаменационный билет № 16


3. Найти и вывести на экран содержимое полей FIO, DATA, SRZAR, POL для работника, дольше всех проработавшего на фирме



Экзаменационный билет № 17

3. Найти и удалить (логически и физически) из БД все записи для работников, достигших 40 лет. Оформить в виде процедуры.



Экзаменационный билет № 18


3. Найти и удалить (логически и физически) из БД все записи для работников (мужчин), достигших пенсионного возраста.



Экзаменационный билет № 19


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



Экзаменационный билет № 20

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


Экзаменационный билет № 21


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


Экзаменационный билет № 22

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


Экзаменационный билет № 23


3. Вывести в BROWSE-окне список работников с высшим образованием, владеющих навыками работы на ПК. Предусмотреть вывод названия таблицы и заголовков полей по-русски. Выводимые в BROWSE-окне упорядочить по полю «стаж». Оформить в виде процедуры, предусмотреть вызов процедуры. В качестве параметра использовать работников с высшим образованием.


Экзаменационный билет № 24


3. Вывести в BROWSE-окне список работников, имеющих 3-х и более детей. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Выводимые в BROWSE-окне упорядочить по полю «количество детей». Добавить вычисляемое поле-надбавка: 2 % от зарплаты за каждого ребенка. Оформить в виде процедуры.


Экзаменационный билет № 25


3. Вывести в BROWSE-окне список работников, имеющих 3-х и более детей. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Выводимые в BROWSE-окне упорядочить по дате рождения. Добавить вычисляемое поле-надбавка: 15 % от зарплаты, если она меньше 150. Оформить в виде процедуры. Обеспечить вызов процедуры.


Экзаменационный билет № 26


3. Вывести в BROWSE-окне список работников, имеющих 3-х и более детей. Предусмотреть вывод названия таблицы и заголовков полей базы данных по-русски. Выводимые в BROWSE-окне упорядочить по дате рождения. Добавить вычисляемое поле – надбавка: 3% за ребенка (каждого) от средней зарплаты


Экзаменационный билет № 27

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



Экзаменационный билет № 28


3. Найти минимальное значение из 2 величин. Оформить нахождение минимального значения в виде функции.

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


Экзаменационный билет № 29


3. Дано 2 переменных. Найти количество нулевых значений. Оформить нахождение нулевых значений в виде функции.

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



Экзаменационный билет № 30


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



Экзаменационный билет № 31


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



Экзаменационный билет № 32


3. Дано 2 переменных. Найти количество значений, меньших 10 . Оформить нахождение значений, меньших 10, в виде функции. Написать фрагмент программы, реализующей вызов данной функции.



Экзаменационный билет № 33


3. Написать фрагмент программы, устанавливающую связь один ко многим между двумя базами данных KADR1 и KADR2 по полю TAB



Экзаменационный билет № 34


3. Написать фрагмент программы, устанавливающую связь один к одному между двумя базами данных BRIG1 и BRIG2 по полю KOD



Экзаменационный билет № 35


3. Создать справочник товаров по базе данных SUPPLY. В справочник должны быть включены поля код_товара и наименование_товара.



Экзаменационный билет № 36


3. Найти и вывести на экран максимальную зарплату на фирме.




1. СУБД FOXPRO: ОЗНАКОМЛЕНИЕ С СИСТЕМОЙ РАБОТА В МЕНЮ-ОРИЕНТИРОВАННОМ РЕЖИМЕ 2

2.ОСНОВНЫЕ КОМАНДЫ FOXPRO 5

ДИАЛОГОВЫЕ КОМАНДЫ 5

КОМАНДЫ РЕДАКТИРОВАНИЯ 6

3. СОЗДАНИЕ КОМАНДНЫХ ФАЙЛОВ 7

5.КОМАНДЫ ВВОДА-ВЫВОДА 9

6.СРЕДСТВА ПРОГРАММИРОВАНИЯ 11

7.ОРГАНИЗАЦИЯ МЕНЮ 13

8.ИЗОБРАЗИТЕЛЬНЫЕ СРЕДСТВА 15

10. РАБОТА С НЕСКОЛЬКИМИ БАЗАМИ ДАННЫХ 16

11. РАБОТА С ОКНАМИ 18

19

12.ПРИЛОЖЕНИЯ 19

12.1. СТАНДАРТНЫЕ ФУНКЦИИ FOXPRO 19

12.2. SET - КОМАНДЫ 21

12.3. ТЕКСТЫ ПРОГРАММ 22

11. Задания. 27

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА 28


ВВЕДЕНИЕ

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


РЕЛЯЦИОННАЯ МОДЕЛЬ

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

Реляционная модель является удобной и наиболее привычной формой представления данных в виде таблицы. В математических дисциплинах таблице соответствует термин отношение (relation). Отсюда и произошло название модели – реляционная.

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

Реляционная модель имеет два главных свойства:

базовые порции данных представляют собой отношения (relations);

операции над таблицами затрагивают только соотношения (relation closure).

Соотношение – это математическая концепция, описывающая, как соотносятся между собой элементы двух множеств.

Модель предъявляет к таблицам следующие требования:

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

данные в одном столбце должны быть одного типа;

каждый столбец должен быть уникальным (недопустимы дублирования столбцов);

столбцы размещаются в произвольном порядке;

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

столбцы имеют уникальные наименования.

Два фундаментальных правила: правило целостности объектов (entity integrity rule) и правило ссылочной целостности (referential integrity rule).

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

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

Формальное определение следующее:

Схемой отношения R называется конечное множество имен атрибутов {A,A,…,A}. Каждому имени атрибута A ставится в соответствие множество D, называемое доменом атрибута A, 1 TO < параметр2 >

ON|OFF – означает, что установка либо включена, т.е. работает,

либо выключена.

Примеры:

SET TALK OFF – погашения вывода служебных

сообщений о работе команд на экран;

SET PROCEDURE TO a:\proc1 – назначение процедурного файла.

Перечень наиболее часто используемых команд установки приведена в Приложении 2.

Перейдем к рассмотрению конкретных команд.


ДИАЛОГОВЫЕ КОМАНДЫ

Создание и изменение структуры файла базы данных.

СRЕАТЕ - создание структуры БД в диалоге.

Пример

Название поля Тип Пояснение

TAB numeric табельный номер

FIO character ФИО

POL character пол

DATA date дата рождения

OBR logical наличие высшего образования

LANG numeric кол-во ин. языков, кот-ми влад. Работник

STAG numeric стаж работы на фирме

DETI numeric количество детей

SRZAR numeric среднемесячная зарплата

COMP logical знание ПК


MODIFY STRUCTURE - изменение структуры открытой БД.


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


КОМАНДЫ РЕДАКТИРОВАНИЯ

APPEND [BLANK] - добавление записи в конец открытой БД

([BLANK] -пустая запись).

INSERT [BLANK] [BEFORE] - вставка записи до [BEFORE] или после

текущей записи.

CHANGE [] [FIELDS] [WHILE ]

[ FOR < условие >] - редактирование значений полей.

DELETE [зона действия] [WHILE ][FОR] пометка

записей признаком удаления.

BROWSE... - команда доступа пользователя к данным.

При вызове этих команд и наличии открытой базы данных среда развертывает для пользователя окно редактирования. Команда BROWSE будет рассмотрена несколько позже.


ПРОСМОТР ДАННЫХ.

Команды DISPLAY и LIST

DISPLAY [][]FOR[]WHILE[]

[OFF] [TO PRINT / TO FILE]

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

Примеры:

DISPLAY REST FOF fio= ’И’

LIST 'фамилия', fio FOR dolg = "инженер"


Удаление данных

ERASE - удаление закрытого файла;

ZAP - удаление всех записей с сохранением структуры;

DELETE [] [WHILE< условие >] [FOR< условие >] - пометка к удалению или логическое удаление записей;

PACK - физическое удаление, помеченных к удалению записей;

RECALL [] [WHILE< условие >] [FOR< условие >] - снятие пометок к удалению;

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

SET DELETE ON.

Выполнение команды PACK приводит к физическому уничтожению записей,

БД при этом сжимается.


Фильтрация данных

SET FILTER ТО [] - установка FOR-условия для всех команд обработки данных (остальные данные недоступны).

SET FILTER TO без параметра - отменяет ограничения.

Пример:

Изменение данных

REPLACE [] [WHILE] [FОR]

WITH[, WITH …] [ADDITIVE]

- множественное изменение полей в соответствии с выражениями.


Пример: REPLACE zarp with zarp* 1.25 for dolg=”инженер”


Последовательный поиск

LOCATE FОR [] [WHILE] - поиск первой

удовлетворяющей FOR-условию записи, При успешном поиске

указатель записей устанавливается на найденную запись.

CONTINUE - продолжение поиска


Пример:

USE KADR

LOCATE FOR stag > 12

DO WHILE ! EOF() && пока не достигнут конец файла данных

? FIO

CONTINUE

ENDDO


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

3. СОЗДАНИЕ КОМАНДНЫХ ФАЙЛОВ

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

MODIFY COMMAND

По команде MODI COMM (допустимое сокращение) без указания имени по умолчанию создается prg-файл без имени. Присвоить имя следует при первом сохранении текста программы. Удобно использовать комбинацию клавиш ^W для сохранения текста программы. Для редактирования ранее созданной программы используют команду

MODI СОММ .

Для запуска программ используется команда

DO

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

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

SET TALK OFF

SET DATE BRITISH

USE KADR

LOCATE FOR Zarp < 200

DO WHILE !EOF() && пока не достигнут конец файла данных

DISPL

CONTINUE

ENDDO


4.Команда полноэкранного редактирования BROWSE

Команда BROWSE представляет собой целую среду редактирования. Она имеет более 20 различных параметров. Рассмотрим наиболее часто используемые из них.

Формат команды.

BROWSE

[FIELDS] [FОR]

[FORMAT] [FREEZE]

[КЕУ,[,]] [LAST]

[LEDIT / REDIT] [LOCK]

[LPARTITION] [NOAPPEND]

[NOCLEAR] [NODELETE]

[NOEDIT/NOMODIFY] [NOLGROD / NORGRIG]

[NOLINK] [NOMENU]

[NOOPTIMIZE] [NORMAL]

[NOWAIT] [PARTITION]

[REST] [PREFERENCE]

[TIMEOUT] [ТITLЕ]

[NOOPTIMIZE] [WHEN< ycловие3>]

[window] [NOWAIT]

[VALID[F:] [ERROR]

[COLOR SCHEME / COLOR]


Действие некоторых опции команды.

1. Выбор полей

FIELDS< список полей> - перечень полей (по умолчанию - все).

Ключи:

:R - разрешен только просмотр поля;

: - видимый размер поля;

:У= - контроль выхода из поля;

:F - проверка вводимых и существующих данных;

:Е= - выдача собственного сообщения;

:Р= - задание формата отображения данных по шаблону;

:Н= - указание собственного заголовка поля;

:В=,[:Е] - указание границ чисел или дат;

:W= - контроль входа в поле.

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

2. Отбор данных

FОR - устанавливает фильтр для записей; выводятся только

записи, удовлетворяющие ;

REST - предотвращает повторный поиск сначала;

КЕУ[,] - ограничение действия команды диапазоном

ключевого выражения активного индексного файла

З. Разделение окна

LOCK BROWSE - окно делится на две части, где первые полей

дублируются в левой части окна (переход ^Н);

PARTITION - то же, но граница проходит по полю

LEDIT/REDIT - действуют только в разделенном окне и задают

форму представления данных (формуляр);

LPARTITION - курсор устанавливается в левой половине окна;

NOLINK - несинхронное перемещение видимых записей;

NOLGRID/NORGRID - удаляет вертикальные линии разделители полей.

4. Контроль редактирования записей

VALID[ERROR] - анализирует условия для текущей записи;

WHEN - определяет возможность доступа к записи;

NOAPPEND - дополнение по Ctrl-N невозможно;

NOEDIT/NOMODIFY - редактирование невозможно;

NODELETE - редактирование невозможно;

FREEZE - единственное доступное поле.

5. Конфигурирование BROWSE-окна

LAST - сохранение конфигурации;

PREFERENCE FORMAT - использование форматного файла;

NOCLEAR - после выхода окно не удаляется;

NOMENU - подавляет вывод системного меню;

TIMEOUT - время работы с окном;

TITLE - заголовок окна;

WINDOW - позволяет открыть другое окно.


Пример:

Set talk off

set date British

use kadr.dbf

browse ;

title '^t-удаление ^n-добавление ^w-выход';

fields ;

fio :h='ФИО' :20, ;

dolg :h='должность', ;

zarp :h='зарплата ' ,;

birth :h='день рождения' ,;

pol :h='рол' ,;

adress :h='адрес' ,;

godzarp = zarp*12 :h='год.зарплата' :p='#####,##'

pack

close all


5.КОМАНДЫ ВВОДА-ВЫВОДА

Средства неформатированного ввода/вывода


Команда вывода ? / ??


? / ?? [] [АТ][,...]


Команда ? выводит выражения [] …[,] с новой строки,

?? - в текущей строке; AT -номер столбца в строке вывода.


Команда вывода TEXT

TEXT

ENDTEXT

Эта команда удобна для вывода больших объемов текста, текст выводится в том виде, как он выглядит в команде.


Команды вывода \ и \\

\ - вывод строки и перевод курсора в начало следующей строки.

\\ - вывод без перевода курсора.


Другие команды ввода-вывода

INPUT ТО

ACCEPT ТО

WAIT [] [ТО]

[TIMEOUT] [WINDOW] [CLEAR]

Подробные комментарии и примеры можно найти в соответствующем разделе HELP среды FoxPro.


СРЕДСТВА ФОРМАТНОГО ВВОДА/ВЫВОДА

Команда @ ... SAY ... GET

Формат команды :

@

[SAY

[PICTURE] [COLOR SCHEME /

COLOR]]

[GET

[PICTURE]

[DEFAULT] [ENABLE / DISABLE]

[MESSAGE] [[OPEN] WINDOW ]

[RANGE [][]]

[SIZE,]

[VALID/[ERROR]]

[WHEN]

[COLOR SCHEME/COLOR]]


Здесь Y,X - пара чисел или переменных, определяющих номер строки и столбца. Команда @ без других параметров устанавливает курсор в заданную позицию и очищает строку Y вправо от X.


Параметры команды

@ Y,X SAY - выдает с заданной позиции любого

типа (поля БД, переменные и пр.); в сложном

выражении элементы соединяются знаком "+";

@ Y,X GET - с заданной позиции выдается переменная или

поле записи с возможностью редактирования

(переменная уже должна существовать);

DEFAULT - действует только при работе с переменными;

задает выражение по умолчанию и предъявляет к

редактированию;

ENABLE/DISABLE - разрешает/запрещает доступ к get-полю;

MESSAGE - для данного поля выдает пояснение в строке

вывода сообщений;

RANGE - контролирует диапазон значений;

SIZE - определяет область, отводимую под

редактирование;

VALID... - логический контроль ввода;

WHEN - вход в редактируемое поле допускается только при

истинности выражения;

[OPEN] WINDOW - используется с memo-полями;

COLOR SCHEME /COLOR- определяет

раскраску полей ввода-вывода.


Возможно соединение фраз SAY и GET в одной команде. При этом GET осуществляет предъявление и возможность редактирования. После команды или группы команд GET должна обязательно следовать команда READ. Эта команда приостанавливает выполнение программы до заполнения всех GET -полей и присваивает соответствующие значения переменным или полям базы данных.


Примеры:

1) В 10 строке, 15 колонке вывести текст 'ЗАРПЛАТА - ', в этой же строке обеспечить поле ввода для переменной и контроль за правильностью ввода (введенное значение должно находится в интервале [100.00,1778.00] ).

X = 100.00

@ 10,15 SAY 'ЗАРПЛАТА - ' GET X RANGE 100.00,1778.00

READ

2) Обеспечить ввод значений зарплат только кратным 10

@ 10,15 SAY 'ЗАРПЛАТА - ' GET X VALID MOD(X/10) = 0

READ

Шаблон PICTURE разрешает ввод только определенных символов данных:

А - ввод только букв;

L - ввод только логических данных T / F;

N - ввод только букв и цифр;

Х - ввод любых символов;

Y - ввод только логических данных Y/N;

9 - ввод только цифр в символьных данных, цифр и знаков "+","-" - в числовых

данных;

# - ввод цифр, пробелов и знаков "+","-";

! - преобразует строчные буквы в прописные;

* - перед числами;

. - задает позицию десятичной точки.


Пример:

@ 10,8 SAY 'ЗАРПЛАТА - ' PICTURE ###.##'


3) Пример создания форматного файла CADR.FMT, для редактирования данных в отношении CADR.DBF. Вид экранной формы:

ДАННЫЕ О СОТРУДНИКЕ


Текст файла CARD.FMT

@ 4, 30 SAY 'ДАННЫЕ О СОТРУДНИКЕ'

@ 5, 9 ТО 11, 70 DOUBLE

@ 5, 41 SAY ‘Сегодня '+DТОС(DАТЕ( )) + ' '

@ 6, 18 SAY 'Фамилия, инициалы: ' GET fio

@ 7, 18 SAY ‘Табельный номер: ' GET tab

@ 7, 40 SAY Должность: ' GET Dolg

@ 10, 12 SAY 'Выход с сохранением изменений - ^End, без - Esc'

Созданный форматный файл может быть использован в программе с помощью команды SET FORMAT ТО .

Фрагмент программы:

SET FORMAT TO CARD.FMT

CHANGE

SET FORMAT TO


6.СРЕДСТВА ПРОГРАММИРОВАНИЯ

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

ПЕРЕМЕННЫЕ

В FoxPro разрешается иметь переменные тех же типов, что и поля таблиц БД (кроме мемо). Тип переменной определяется типом последнего присваиваемого ей выражения.

Команда присваивания:

= или

STORE ТО ([,]) .


Пример:

DIMENSION а(3,4), b(4)

Максимальное количество и максимальная размерность массивов 3600. Значения элементов массива формируются присваиванием им значений выражений либо в результате обмена с БД посредством следующих команд:


Команды управления

Команда IF : Команда DO CASE:

IF DO CASE

CASE

[ELSE

] CASE

ENDIF

[OTHERWIZE

]

ENDCASE


Кроме этих команд имеется очень полезная функция IIF ( ) (см. приложение)


Примеры:

1. Найти максимальное значение из двух величин.

CLEAR

INPUT “ Введите X” TO X

INPUT “ Введите Y” TO Y

IF X > Y

max = X

ELSE

max = Y

ENDIF

? “ Максимальное значение равно: ”, max

WAIT

2
. Найти значение функции Y.


CLEAR

INPUT “Введите X” TO X

DO CASE

CASE X < 0

Y = -2*X^2 +5*X

CASE X>=0 AND X < 5

Y = 15 – 2*X^2

CASE X>=5

Y = ABS(12*X – SIN(12))

ENDCASE

? "Y = " ,Y

CLOSE ALL


ОРГАНИЗАЦИЯ ЦИКЛОВ

Цикл с условием


DO WHILE Выход из цикла - EXIT

Возврат к началу цикла - LOOP

ENDDO


Цикл вида DO WHILE .T. ENDDO применяется как операторные скобки.


Цикл с параметром

FOR = ТО [STEP ]

ENDFOR


ЦИКЛ СКАНИРОВАНИЯ

SCAN [] [FOR] [WHILE] ENDSCAN - применяется для перемещения в базе данных и выполнения команд

для каждой записи, отвечающей условиям.


Примеры:

Приводятся фрагменты программ поиска в БД Kadr всех записей

с фамилией на букву 'И'.

1) USE Kadr 2) USE Kadr

LOCATE FOR fio = 'И' SCAN FOR fio= 'И'

DO WHILE ! EOF( )

ENDSCAN

CONTINUE

ENDDO


ПРОЦЕДУРЫ


В FoxPro используются процедуры как внутренние так и внешние, а также процедуры-функции. Внутренняя процедура должна начинаться командой PROCEDURE и заканчиваться командой RETURN. Внешние процедуры могут быть объединены в prg-файл и подключаются командой SET PROCEDURE TO .

Обращение к процедуре :

DO [WITH ] [IN FILE ], где - список фактических параметров. Все входные фактические параметры перед вызовом процедуры должны быть определены.


Формальные параметры описываются в процедуре командой PARAMETERS.

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

RETURN , где выражение есть результат функции.


Процедуры


В FoxPro используются процедуры как внутренние так и внешние, а также процедуры - функции. Внутренняя процедура должна начинаться командой PROCEDURE и заканчиваться командой RETURN. Внешние процедуры могут быть объединены в prg-файл и подключаются командой SET PROCEDURE TO . Обращение к процедуре :


DO [WITH ] [IN FILE ]


Параметры описываются в процедуре командой PARAMETERS.

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

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

Использование процедур рассмотрим далее в разделе организации меню.


ЗАДАНИЕ


1. Приведенную выше Программу 1, представьте в виде ряда процедур:

р21 - просмотр данных по штатному расписанию (отношение STATE)

р22 - поиск данных по штатному расписанию

р31 - просмотр данных по списку сотрудников (отношение SOTR)

р32 - поиск данных по списку сотрудников

р4 - совместный просмотр двух таблиц (состояние)

info - заставка с краткой информацией (дополнительная процедура).


Пример 1.


*********** поиск в таблице Kadr ***********

PROCEDURE p21

SELECT a

CLEAR

с = 0

@ 5, 10 SAY 'Введите табельный номер: ' GET с PICTURE '###'

READ

@ 6, 2 SAY 'Результат поиска '

LOCATE ALL FOR tab = c

DO WHILE ! EOF( )

? 'должность - ', dolg, ' оклад - ', zarp

CONTINUE

ENDDO

WAIT 'Продолжение – Enter ' WINDOW

CLEAR

RETURN


Пример 2.


********* заставка **************

PROCEDURE info

CLEAR

@ 8, 15 ТО 20, 60 DOUBLE && изображение рамки

@ 9, 25 SAY 'ШТАТНОЕ РАСПИСАНИЕ' && вывод текста

@ 12, 20 SAY 'Модель информационной системы'

WAIT 'Продолжение – Enter ' WINDOW && пауза

CLEAR

RETURN


7.ОРГАНИЗАЦИЯ МЕНЮ

Меню являются основной формой поддержания диалога в информационных системах. Среда FoxPro обладает большим набором средств организации световых и клавишных меню. Выделим две основных технологии построения меню, которые порождают «меню - программы» и «меню - объекты».

Меню-программа является частью программы, где оно создается, используется и удаляется. При этом вырабатываются числовые переменные, фиксирующие выбор из меню, которые анализируются командами DO CASE, требуют использования циклов DO WHILE и т.д. Рассмотрим два типа таких меню. Будем использовать приведенную выше программу, которую предварительно разобьем на ряд процедур.

LIGHTBAR - меню строится с использованием команд:

@ Y, X PROMPT [MESSAGE] - выдает в

позиции Y,X строку меню и дополнительное сообщение,

если указано MESSAGE, в строке заданной командой

SET MESSAGE .

MENU TO - запоминает цифру, соответствующую выбору.


PULLDOWN - меню (двухуровневое меню) использует команды

MENU BAR , - определяет пункты горизонтального

BAR-меню, задавая их как элементы первого столбца

двумерного , во второй столбец заносятся

сообщения, N- общее число пунктов меню.

MENU , , - определяет содержание

вспомогательного вертикального меню (POPUP-меню)

READ MENU BAR TO , - активирует меню.


Пример


1) ********** LIGHTBAR МЕНЮ *******

SET TALK OFF

SET DATE BRITISH

USE KADR.DBF

DO WHILE .T.

CLEAR

P=1

@5,20 PROMPT “Редактирование данных ”

@7,20 PROMPT “Поиск данных ”

@9,20 PROMPT “Средняя заработная плата ”

@11,20 PROMPT “Конец работы ”

MENU TO P

DO CASE

CASE P=1

BROWSE

CASE P=2

CLEAR

F=SPACE(20)

@ 10,15 SAY “ Введите ФИО “ GET F

READ

LOCATE FOR FIO = F

IF !FOUND( )

@ 12,15 SAY “Запись нe найдена”

WAIT

EXIT

ELSE

DISPL

ENDIF

CASE P=3

CALCULATE SUM(SRZAR) TO SUMM

SUMM = SUMM/RECCOUNT( )

@ 12,15 SAY STR(SUMM)

WAIT

CASE P=4

EXIT

ENDDO

CLOSE ALL

2) ********** PULLDOWN МЕНЮ *******


SET MESSAGE ТО 15

DIMENSION a(5, 3) && задание массива, содержащего

а(1, 1) = 'Информация' && тексты пунктов горизонтального меню

а(2, 1) = 'Штатное расписание'

а(3, 1) = 'Список сотрудников'

а(4, 1) = 'Состояние'

а(5, 1) = 'Выход'

а(1, 2) = ' ' && тексты сообщений

а(2, 2) = 'Работа с таблицей должностей'

а(3, 2) = 'Работа с данными о сотрудниках'

а(4, 2) = 'Совместный просмотр штатного расписания и списка сотрудников' а(5, 2) = '3авершение работы'

DIMENSION b(2) && задание массивов для вложенных меню

b(1) = 'просмотр'

b(2) = 'поиск'

DIMENSION c(2)

с(1) = 'просмотр'

с(2) = 'поиск'

** образ меню** && определение меню

MENU BAR a, 5

MENU 2, b, 2

MENU 3, c, 2

g = 1 && номер пункта горизонтального меню

v = 1 && номер пункта вложенного меню

DO WHILE .T.

CLEAR

READ MENU BAR TO g, v && активация меню

DO CASE && обработка выбора

CASE g = 1

DO info

CASE g = 2 .AND. v = 1

DO p21

CASE g = 2 .AND. v = 2

DO p22

CASE g = 3 .AND. v = 1

DO p31

CASE g = 3 .AND. v = 2

DO p32

CASE g = 4

DO p4

CASE g = 5

CANCEL

ENDCASE

ENDDO

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

Вертикальное POPUP - меню создается с помощью следующих команд.

DEFINE РОРUР - определение меню,

ON SELECTION POPUP - реакция на выбор,

ACTIVATE POPUP - активация меню.


3) ********** POPUP - меню ****************

CLEAR

DEFINE POPUP mmenu MARGIN && определение главного меню

DEFINE BAR 1 OF mmenu PROMPT 'Информация' && определение пунктов

DEFINE BAR 2 OF mmenu PROMPT 'Штатное расписание'

DEFINE BAR 3 OF mmenu PROMPT 'Список сотрудников'

DEFINE BAR 4 OF mmenu PROMPT 'Состояние'

DEFINE BAR 5 OF mmenu PROMPT 'Выход'

ON SELECTION BAR 5 OF mmenu DEACTIVATE POPUP && обработка выбора

ON SELECTION BAR 1 OF mmenu DO info

ON SELECTION BAR 4 OF mmenu DO p4

ON BAR 2 OF mmenu ACTIVATE POPUP ww && выбор вложенных меню

ON BAR 3 OF mmenu ACTIVATE POPUP ss

DEFINE POPUP ww && определение вложенных меню

DEFINE BAR 1 OF ww PROMPT 'Просмотр'

DEFINE BAR 2 OF ww PROMPT 'Поиск'

ON SELECTION BAR 1 OF ww DO p21

ON SELECTION BAR 2 OF ww DO p22

ON SELECTION POPUP ww DO ww

DEFINE POPUP ss

DEFINE BAR 1 OF ss PROMPT 'Просмотр'

DEFINE BAR 2 OF ss PROMPT 'Поиск'

ON SELECTION BAR 1 OF ss DO p21

ON SELECTION BAR 2 OF ss DO p22

ON SELECTION POPUP ss DO ss

ACTIVATE POPUP mmenu && активация меню


ЗАДАНИЕ

Программу 1, представленную в виде ряда процедур, дополните организацией МЕНЮ одного из предложенных типов. В приложении дан полный текст программы с использованием POPUP-меню для выбора процедур.


8.ИЗОБРАЗИТЕЛЬНЫЕ СРЕДСТВА

Из большого списка возможностей рассмотрим лишь некоторые

1. Построение рамки

@ ТО [DOUBLE / PANEL

COLOR / COLOR SCHEME

В указанных координатах строится рамка, ограниченная двойной линией (DOUBLE), с сплошным заполнением (PANEL) и желаемого цвета.

2. Управление цветом

Обозначения цветов:

черный N

желтый GR+

бирюзовый BG

коричневый GR

белый W

зеленый G

лиловый RB

красный

Команда

SET COLOR TO [[,] [,] [,]]

- устанавливает цвета для основного текста, для вывода сообщений,

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

дополнительных сообщений. Цвет текста и цвет фона под ним

образуют цветовую пару (например, W/B или R+/ GR).


Цветовую схему можно определить в диалоге и сохранить в специальном файле и командой SET COLOR OF SCHEME TO []/[SCHEME]. Можно задать мерцание изображения: SET BLINK ON/OFF.

10. РАБОТА С НЕСКОЛЬКИМИ БАЗАМИ ДАННЫХ

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

Возможно установление двух типов связей между записями двух сцепленных баз данных. Связь типа одна_запись-к-одной перемещает указатель в младшей базе таким образом, что он всегда устанавливается на первую встреченную им запись с совпадающим признаком. Остальные такие записи (если есть) остаются «не замеченными». Эта связь устанавливается командой SET RELATION. Связь типа одна_запись-ко-многим позволяет обратиться ко всем записям младшей базы с совпадающим признаком (команды SET RELATION и SET SKIP TO).


ПОНЯТИЕ О РАБОЧИХ ОБЛАСТЯХ

В FoxPro обрабатывать сразу несколько файлов баз данных (до 25). Каждый такой файл типа DBF и все вспомогательные файлы (например, индексные) открываются в своей отдельной рабочей области. Переход из области в область осуществляется командой:

SELECT

Первые десять рабочих областей идентифицируются номерами 1-10 или буквами A – J. Области с 11-й по 25-ю обозначаются номерами или буквенно-цифровыми именами W11 – W25. Если в качестве параметра указать цифру 0, произойдет переход в первую свободную рабочую область. Кроме того, рабочие области и файлы базы данных могут идентифицироваться так называемыми псевдонимами. Псевдонимом области по умолчанию является само имя находящегося в ней файла базы данных.

Область, в которой в данный момент работает пользователь, называется активной рабочей областью, и в ней можно работать с находящейся здесь базой данных. В одной команде можно работать с полями других баз (открытых в других областях). В этом случае имя поля из неактивной базы – составное: имени поля предшествует имя рабочей области или псевдоним, разделенные знаком «точка»:

.

Рабочая область в составном имени указывается любым разрешенным образом (буквой, именем ее базы данных, псевдонимом), но не номером. Номер может быть указан в команде SELECT и в функциях.

При входе в СУБД активизируется область 1 (или А), и, если пользователь работает только с одной базой, заботиться об открытии областей не нужно.

В команде USE можно одновременно указывать и область, в которой открывается база. Пример:

USE delivery IN b.

Однако переход в указанную область с помощью такой команды не происходит (для перехода необходимо воспользоваться командой SELECT).


ПРИМЕР РАБОТЫ С НЕСКОЛЬКИМИ БАЗАМИ ДАННЫХ

В НЕСКОЛЬКИХ ОБЛАСТЯХ

В приведенной ниже программе приводится пример работы с двумя базами данных, базой Поставщик (Delivery) и базой Поставка (Supply). Структура баз и назначение полей приводится в Приложении № 3. Данная программа позволяет по введенному коду товара найти всех поставщиков, поставляющих данный товар.


CLEAR

SET TALK OFF

SET EXACT OFF

SELE A

USE Supply

KOD=0

@ 1,2 SAY 'Введите код товара' GET KOD PICTURE'#####'

READ

LOCATE FOR indgoods = kod

IF !FOUND()

WAIT 'Такого кода нет'

RETURN

ENDIF

ind = inddel

SELE B

USE Delivery

LOCATE FOR inddel=ind

IF !FOUND ()

WAIT 'Такого поставщика нет'

RETURN

ENDIF

DISPL namedel, count, tel, A.namgoods, A.pricegds

CLOSE ALL


Связь вида одна_запись-к-одной

Команда

SET RELATION TO INTO [, INTO …] [ADDITIVE]


связывает указатель записей в активной рабочей области с указателем записей из других рабочих областей, которых указаны после слова INTO, по заданному общему полю (ключу). Единственное условие – файл базы данных, с которым устанавливается связь, должен быть проиндексирован по этому полю.


Пример

Связать базы данных SUPPLY.DBF и DELIVERY.DBF по полю INDDEL. По коду поставщика вывести список поставщиков и их реквизиты.


SET TALK OFF

CLEAR

SELE A

IF FILE ('Inddelivery.ind')

USE Delivery INDEX Inddelivery

ELSE

USE delivery

INDEX ON inddel TO Inddelivery

ENDIF

SELE B

USE Supply

SET RELATION TO inddel INTO A

DO WHILE .T.

kod=0

CLEAR

@ 12,23 TO 14,50 DOUBLE

@ 13,25 SAY 'Введите код товара' GET kod PICTURE '#####'

READ

LOCATE FOR indgoods = kod

IF !FOUND()

WAIT 'Такого товара нет'

LOOP

ENDIF

name=namgoods

IF kod 0

SET FILTER TO indgoods = kod

BROWSE ;

TITLE ' Список поставщиков, поставляющих ' + name ;

FIELDS ;

INDDEL :H = ' Код поставщика ' ,;

A.NAMEDEL :H = 'Название поставщика ' ,;

A.ADRDEL :H = 'Адрес ' ,;

A.TEL :H = 'Телефон '

SET FILTER TO

ENDIF

IF LASTKEY()=27

EXIT

ENDIF

ENDDO

PACK

CLOSE ALL


В этой программе выводятся записи, в которых для каждого кода поставщика inddel из текущей базы данных Supply.dbf (открытой в области В) выводятся поля A.namedel (Название поставщика), A.adrdel (Адрес) и A.TEL (Телефон) из базы данных Delivery.dbf (открытой в области A).

В FoxPro имеется возможность устанавливать связи с несколькими базами одновременно. Если со старшим файлом, который уже связан с другим, необходимо связать некоторый третий (четвертый и т.д.), следует во все последующие команды SET RELATION включать слово ADDITIVE, которое обеспечит сохранение связей, установленных ранее.

Связь между всеми файлами разрывается командой SET RELATION TO без параметров. Связь с отдельным файлом в заданной - командой SET RELATION OF INTO .


Связь вида одна_запись-ко-многим

Команда SET SKIP TO [ [,] … ]

устанавливает связь типа одна_запись-ко-многим между двумя или несколькими базами данных.

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

Прежде чем использовать команду SET SKIP TO, необходимо выполнить начальное сцепление вида одна_запись-к-одной командой SET RELATION. Удаление связи одна_запись-ко-многим осуществляется командой SET SKIP TO без параметров.


Пример

Установить связь между тремя базами данных. В программе используется

третья база Товаров (Goods.dbf), получаемая из БД Supply.dbf


SET TALK OFF

IF FILE ('Goods.dbf')

ERASE Goods.dbf

ENDIF

IF FILE ('Indnum.idx')

ERASE Indnum.idx

ENDIF

SELE A

USE Supply

IF FILE ('Indg.idx')

SET INDEX TO Indg.idx

ELSE

INDEX ON indgoods TO Indg UNIQUE

ENDIF

COPY TO Goods FIELDS indgoods, namgoods, measure

SELE C

USE Smdeliv

IF FILE ('Indexdel.idx')

SET INDEX TO Indexdel.idx

ELSE

INDEX ON indgoods TO Indexdel UNIQUE

ENDIF

SELECT SUPPLY

SET RELATION TO inddel INTO Delivery ADDITIVE

SELE B

USE Goods

INDEX ON namgoods TO Indnum

SET RELATION TO indgoods INTO Supply ADDITIVE

SET SKIP TO Supply

BROWSE TITLE "Товары" ;

FIELDS ;

Goods.Namgoods :H = "Имя Товара" ,;

Delivery.Namdel :H = "Имя Поставщика" ,;

Delivery.Adrdel :H = "Имя Поставщика" ,;

Delivery.Count :H = "Счет", ;

Goods.Measure :H = "Ед.Измерения" ,;

Supply.Pricegds :H = "Цена Единицы" ,;

Supply.Quant :H = "Кол-Во Единиц" ,;

Totalamount=Supply.Quant * Supply.Pricegds :H = "Общая Сумма"

CLOSE ALL


11. РАБОТА С ОКНАМИ

Использование окон - очень удобное и эффектное средство создания пользовательского интерфейса в прикладной программе.

Определение окна

DEFINE WINDOW FROM, TO ,

[FOOTER] [TITLE] [SYSTEM/DOUBLE/PANEL/NONE]

[CLOSE][FLOAT][GROW][SHADOW][ZOOM][FILL][MINIMIZE]


FOOTER, TITLE - нижний и верхний заголовки;

форма границ окна:

SYSTEM - стандартная,

DOUBLE - двойная линия,

PANEL - сплошная полоса,

NONE - не определяется,

CLOSE - допускает закрытие окна мышью,

FLOAT - перемещение с помощью ^F7 или мышью,

GROW - изменение размера (^F8 или мышью),

ZOOM /

MINIMIZE - распахивание и свертывание окна;

SHADOW - теневая рамка,

FILL - символ заполнения окна.


Активация уже определенного окна

ACTIVATE WINDOW [[][,< окно2>]] [,...]] ALL [BOTTOM / TOP]]

Здесь указаны имена открываемых или всех (ALL) окон. BOTTOM / TOP - размещение нового окна под/перед уже имеющимся.

Удаление с экрана

DEACTIVATE WINDOW [,][,...] /ALL

Удаление с экрана и из памяти

CLEAR WINDOW - Удаление с экрана и из памяти ВСЕХ окон

RELEASE WINDOW - Перечисленных окон.


Восстановление окна

RESTORE WINDOW


Сохранение в файле

SAVE WINDOW /ALL TO


12.ПРИЛОЖЕНИЯ
12.1. СТАНДАРТНЫЕ ФУНКЦИИ FOXPRO

Арифметические функции


ABS() - абсолютное значение числа

BETWEEN(,,) - истинно (.Т.), если  

 , иначе ложно (.F.) (для чисел,

строк, дат)

CEILING() - округление числас избытком

FLOOR() - округление числа с недостатком

INТ() - целая часть числа

МАХ(,[,...]) - максимальное значение из списка

аргументов (числа, строки, даты)

MIN,[,...]) - минимальное значение из списка

аргументов

MOD(,) - целочисленный остаток от деления

на

ROUND(,) - округление числа до

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

RAND(]) - псевдослучайное число в диапазоне 0...1

SIGN() - знак числа


Степенные, тригонометрические и другие функции

ЕХР() - экспонента

LOG() - натуральный логарифм

LOG10() - десятичный логарифм

SQRT() - квадратный корень числа

SIN() - синус от угла в радианах

COS() - косинус

TAN() - тангенс

ASIN() - арксинус (результат в радианах)

ATAN() - арктангенс

PI ( ) - число 

DTOR() - преобразование градусной меры угла в

радианы

RTOD() - преобразование радианной меры угла в

градусы


Строковые функции

$ - вхождение в

(результат .Т. или .F.)

AT / ATC(,[,) - поиск слева направо в строке

позиции вхождения

подстроки , начиная с

позиции строки

RАТ(,[,) - то же справа налево

INLIST(,[,…]) - вхождение в последующий

список (результат .Т. или .F.)

LEN() - длина строки

LIKE(,) - вхождение в

(результат .Т. или .F.) с

использованием символов маски * и ?

OCCURS(,) - число вхождений в

LEFT(

Другие материалы

  • Небольшой сборник экзаменационных билетов по информатике за весенний семестр 2001 года
  • ... nbsp; Экзаменационный билет по предмету ИНФОРМАТИКА. РАСШИРЕННЫЙ КУРС Билет № 11 37) Какие характеристики используются для описания полей базы данных? Приведите примеры. 38) В базе данных «Студент» должна содержаться следующая информация: номер контракта студента, ФИО студента, год рождения ...

  • Дидактические материалы по информатике
  • ... такое мультимедиа? Что такое гипертекст? Что такое гипермедиа? Что такое электронная таблица? Ответы на задачи из “Дидактических материалов” Казиева В.М. Тема 1. “Информация. Кодирование. Инфологические задачи” Вариант 1 x=41. xn=32n—2. A=7, B=3. Система кодировки - одношаговый код Цезаря. ...

  • Экзаменационные билеты по информатике 2000/2001 учебный год
  • ... -ориентированного программирования, впитавшего в себя идеи структурного и модульного программирования, структурное программирование стало фактом истории информатики. Билет № 9 Текстовый редактор, назначение и основные функции. Для работы с текстами на компьютере используются программные средства, ...

  • Информатика
  • ... кодированием. Хотя следует оговориться, что если полностью давать уроки по методике “Пермская версия”, а не только тему “Введение в информатику”, то в этой методике двоичная арифметика дается в теме “Как работает компьютер” на втором году обучения. После каждой ...

  • Готовимся к экзамену по информатике
  • ... . 3. Информатика: Учебник. 3-е перераб. изд. / Под ред. проф. Н.В. Макаровой. М.: Финансы и статистика, 2001, 768 с. 3. Практическое задание по работе с электронной почтой (в локальной или глобальной компьютерной сети)   Принципы составления задания Реализация данного вопроса на экзамене ...

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

  • Билеты и ответы по Информатике за 11-й класс
  • ... СУБД dBASE, а также совместимых с ней FoxBase,”карат”, “ребус”, которые часто используются в школах на уроках информатики. Для интерфейса СУБД с пользователем могут применятся диалоговые оболочки (которые могут быть разными). Командный же язык везде приблизительно одинаков. ...

  • Ответы к экзаменационным билетам по Информатике. 2001-2002 год
  • ... (строками явля ются любые последовательности символов, заключен­ные в кавычки) и строковые функции. Например: "инф"+М1с1 ("информатика"^ 3, 5) +strA. Логические выражения, кроме логических пере­менных, нередко включают в себя числа, числовые или строковые переменные или ...

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

Каталог учебных материалов

Свежие работы в разделе

Наша кнопка

Разместить ссылку на наш сайт можно воспользовавшись следующим кодом:

Контакты

Если у вас возникли какие либо вопросы, обращайтесь на email администратора: admin@kazreferat.info