Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_ekzamen.doc
Скачиваний:
64
Добавлен:
22.05.2015
Размер:
2.71 Mб
Скачать

Change/edit-окно

По функциям и возможностям команда CHANGE аналогична ко­манде BROWSE, но предъявляет все поля всех записей в одну колонку.

  • CHANGE [WHILE <условие>][опции]

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

При наличии условий в команде CHANGE в окно редактирова­ния выводится не столько записей, сколько удается разместить, а только одна текущая.

Команда CHANGE полностью идентична команде EDIT.

Замечание к вводу дат. При вводе данных в поля/переменные (коман­дами BROWSE/CHANGE, READ) типа дата мы обнаружим, что в такие поля разрешается вводить лишь содержательные данные в допустимом диапазоне. Не разрешается вводить пустую дату ({ . . }), хотя дату такого вида мы можем видеть при первоначальном заполнении базы. В поля типа дата вводить пробелы вообще не удается. Между тем это важно, так как бывает, что дата не известна или же она еще не установлена. В этом случае неплохо оставить ее пустой, а не заполнять Временно бессмысленной, хотя формально и разрешенной датой. Возможность очистить такое поле су­ществует - это использование клавиш очистки поля Ctrl-Y.

Окна редактирования могут быть еще более адаптированы под любые запросы заказчика с помощью форматного файла или путем непосредственного использования команд @...SAY...GET. К этим вопросам мы вернемся ниже.

Перемещения в базе данных

При работе с базой данных необходимы средства перемещение внутри нее. Запись, на которой находится указатель записей, яв­ляется текущей, и только к ней в данный момент возможен непосредственный доступ.

Имеется несколько разновидностей команд, изменяющих положение указателя записей:

  • GO TOP [IN <область>] файла;

  • GO BOTTOM [IN <область>] - переход к самой последней записи;

  • GO <вырN> [IN <область>] - переход к записи с указанным в <вырN> номером;

  • SKIP <вырN> [IN <область>] - переход к записи, отстоящей от текущей на указанное в <вырN> число записей.

В последней команде <вырN> может быть и отрицательным; что означает движение указателя назад. SKIP без параметра идентичен SKIP 1 (переход на следующую запись). Параметр IN <область> указывает над базой из какой рабочей области должна выполниться команда. Если он опущен, имеется в виду текущая рабочая область.

Для контроля положения указателя и наличия записей в файле предусмотрены функции:

  • RECNO([<область>]) - указывает номер текущей записи;

  • RECCOUNT([<oблacть>])- выдает общее число записей в файле базы данных, включая записи, помеченные к удалению;

  • ЕОР([<область>]) - функция конца файла. Она истинна (.Т.), если конец достигнут, и ложна (.F.) в противном случае;

  • ВОF([<область>]) - то же, но для начала файла.

Необязательный параметр <область> указывает, для какой ра­бочей области запрашивается значение функции. По умолчанию текущая область.

Функции в FoxPro имеют характерный синтаксис - скобки, даже если никакого аргумента нет, и они остаются пустыми.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]