Команда выхода из FoxPro в DOS.
QUIT
Выполнить Практическое задание № 1. (см. приложение) Окна редактирования. Для открытой БД при запуске команд Append, Insert, Edit, Change, Browse FoxPro открывает на экране окно редактирования. Стандартное окно редактирования имеет две формы: для первых четырёх команд все поля БД располагаются вертикально, эта форма окна называется CHANGE-окно, в окне команды BROWSE все записи расположены горизонтально, как в таблице. Такая форма называется BROWSE – окно. В CHANGE-окне и BROWSE – окне клавиши управления действуют одинаково: Ctrl+T – пометка записи на удаление, признаком пометки является точка, которая ставится перед записью. Ctrl+N – добавление в БД новой записи. Можно установить режим копирования в новую запись: 1 способ: всех поле из текущей записи командой SET CARRY ON/OFF; 2 способ: копирование только указанных полей командой SET CARRY TO <имя поля>. Команда SET CARRY TO означает возвратк действию команды SET CARRY ON/OFF. Копирование не происходит при добавлении новых записей командой APPEND BLANK. Перемещение внутри базы в окне редактирования осуществляется при помощи клавиш управления курсором, а также клавишами: Home, End – на начало и конец поля. Enter – переход к следующему полю. PgUp, PgDn – вверх/вниз на 25 строк. Ctrl+Y – очистка поля. Ctrl+Home или двойной щелчок мыши - вход в МЕМО-поле. Ctrl+W – выход с сохранением. Ctrl+F10 – изменение размера окна.
1. BROWSE BROWSE [FIELDS<поля>] [FOR<условие>] [FREEZ<поля>] [LOCK<выражение N>] [LEDIT/REDIT] [NOAPPEND] [NOCLEAR] [NODELETE] [NOEDIT] [NOMODIFY] [NOLGRID/NORGRID] [NOLINK] [PARTITION<выр. N>] [VALID <условие> [ERROR<выражение С>]] [COLOR SCHEME <выр. N>/ COLOR <цвета>] [WHEN <условие>][TITLE <выражение С>]
a) Управление доступом к полям БД. FIELDS<поля> – задаёт перечень выводимых полей, по умолчанию выводятся все.
Имя каждого поля может сопровождаться ключами: :R – разрешён только просмотр :<выр. N> - устанавливается видимый размер поля, если фактический размер больше то предусмотрен скроллинг. :V=<условие> - контроль выхода из поля, выполняется проверка вводимых данных, если условие истинно курсор переходит на следующее поле, если ложно, то выдаётся сообщение. :E=<выр. C> - выдача собственного сообщения на неправильный ввод данных. Символьные выражения в FoxPro заключаются в ‘<C>’,”<C>”,[<C>]. Пример: BROWSE FIELDS UCH_NO:V=UCH_NO<=200:E=”ВВЕДИТЕ ЧИСЛО <=200” :B=<выр. 1>, <выр. 2> - указываются границы вводимых данных, запятая обязательна, даже если задана только одна граница. :H=<выр. C> - указание собственного заголовка столбца, по умолчанию в качестве заголовка выводится имя поля. Пример: BROWSE FIELDS UCH_NO:Н=’Номер ученического’ :W=<условие> - контроль входа в поле, если условие ложно, то вход в поле и редактирование запрещено. Пример: BROWSE FIELDS UCH_NO:W=UCH_NO > 200
б) Отбор данных. FOR < условие > -устанавливает фильтр для записей, в окне выводятся записи удовлетворяющие условию. USE kadr_N BROWSE FOR SEM=’Б’
в) Разделение окна. В режиме разделения BROWSE-окно разбивается на 2 смежных окна, где будут отображаться данные из БД, возможно в разной форме. LOCK <выр.N> - BROWSE-окно делится на 2 части, первые N-полей всей БД или списка FIELDS(если есть), отображается в левой части окна, вся БД или список FIELDS(если есть) дублируются правой части, переход курсора из одной части в другую Ctrl+H, или мышью. PARTITION <выр. N> - окно делится на 2 части, но граница раздела будет проходить по колонке N. LEDIT/REDIT – опции действуют только в разделенном окне, и указывают в какой части разделенного окна (слева/справа) данные будут показаны как в CHANGE-окне. NOLINK – несинхронное перемещение видимых записей. При движении курсора в одной половине окна, записи в другой остаются неподвижными.
NOLGRID/NORGRID – удаляет вертикальные линии-разделители в левой или правой части разделенного окна, если окно не разделено, то линии удаляются опцией NORGRID.
г) Контроль редактирования записей. When <усл.> - определяет возможность доступа к записям. Если условие ложно, то запись доступна только для просмотра. BROWSE WHEN UCH_NO <=200 VALID <усл.> [ ERROR <выр. С>] – анализирует выполнение условия для текущей записи, если в ней произошло редактирование. Если условие ложно, то появляется стандартное сообщение или заданное после ERROR и курсор не переходит на следующую запись. BROWSE VALID TAB <0 ERROR “Число отрицательное”
д) Ограничение возможности редактирования данных. NOAPPEND – запрещение добавления новых записей. NOEDIT/NOMODIFY – запрещение редактирования БД. NODELETE – запрещение удаления записей. FREEZE <поле> - указывается единственное поле которое можно редактировать, остальные поля можно только просматривать.
е) Прочие опции. NOCLEAR – после выхода из BROWSE-окна оно не удаляется, хотя не является активным. TITLE – задаёт заголовок окна. Пример: BROWSE TITLE ‘Кадры’ COLOR SCHEME N/COLOR <цвета> - Определяет окраску BROWSE-окна.
ж) Вычисляемые поля. В опции FIELDS в списке полей можно задавать вычисляемые поля, такие поля не могут редактироваться и запоминаться в БД. Например: Введём в БД «Кадры» новое поле «Выдача на руки», в котором будет отображаться зарплата за вычетом подоходного налога 13%. USE kadr_21 BROWSE FIELDS FIO:H=’Фамилия’,SZAR:H=’Оклад’,; VID=SZAR-SZAR*0,13:H=’Выдача на руки’
2. CHANGE Формат команды: CHANGE [<опции>] опции те же, что и в BROWSE.
Выполнить Практическое задание № 2. (см. приложение) Управление БД. 1. Перемещение по БД. При работе с БД необходимы средства перемещения внутри неё. Запись, на которой находится указатель записей, является текущей, и только к ней в данный момент возможен доступ. Имеются следующие команды, перемещающие указатель записи в открытой БД: GO TOP – переход на первую запись БД. GO BOTTOM – установка указателя на последнюю запись. GO N – перейти на запись с номером N. SKIP N – переход от текущей на N записей вниз. SKIP –N – переход от текущей на N записей вверх. SKIP – перейти на следующую запись.
Функции, позволяющие определить положение указателя: EOF() -.T. – если конец файла БД; BOF() -.T. – если начало файла БД; RECCOUNT() – общее количество записей в открытой базе данных; RECNO() – номер текущей записи. Значения функций выводятся на экран при помощи команды вывода «?»
2. Удаление данных. ERASE <файл> - удаляет любой неоткрытый в данный момент файл, расширение файла указывать обязательно. DELETE FILE <файл> - то же, что и ERASE. ZAP – удаляет все записи в активной БД, но оставляет структуру. DELETE [<границы>] [WHILE <усл.>] [FOR <усл.>] – помечает на удаление указанные записи.
Пример:USE 231_21.dbf DELETE DELETE RECORD 7 GO 10 DELETE NEXT 4 DELETE FOR POL=.F. USE ERASE KADR.dbf && только для закрытой БД
Если ввести команду SET DELETE ON, то при выводе БД для просмотра помеченные на удаление записи не отображаются.
RECALL [<границы>] [WHILE <усл.>] [FOR <усл.>] – снимает пометку на удаление с указанных записей.
PACK – удаляет физически с диска записи, ранее помеченные на удаление командой DELETE. Автоматически изменяется нумерация записей и удалённые таким образом записи невозможно будет восстановить.
3. Изменение данных. В FoxPro имеется возможность изменять значение полей с помощью команды REPLACE. Формат: REPLACE [<границы>] [WHILE <усл.>] [FOR <усл.>] <поле 1> WITH <выр. 1> [,<поле 2> WITH <выр. 2> …] [ADDITIVE] Эта команда осуществляет множественное изменение полей открытой БД, если отсутствуют границы или условия, то изменяется текущая запись. Опция ADDITIVE действует для МЕМО-полей и означает, что заданное выражение будет добавлено в конец существующего. Если ADDITIVE опущено, то старое значение МЕМО-поля затрётся. Пример: Добавим 20% к окладу тех работников, у которых табельный номер меньше 100. USE KADR.DBF REPLACE SZAR WITH SZAR*0,2+SZAR FOR TAB<100
BLANK [<границы>] [WHILE <усл.>] [FOR <усл.>] [FIELDS <поля>] – очищает поля БД.
4. Просмотр БД LIST [<границы>] [WHILE <усл.>] [FIELDS <поля>] [FOR <усл.>] [OFF] Пример: LIST - просмотр всей БД Опция OFF не выводит номера записей.
DISPLAY[<границы>] [WHILE <усл.>] [FIELDS <поля>] [FOR <усл.>]
Вывод поэкранный. Пример: DISPLAY- просмотр текущей записи БД. DISPLAY ALL - вывод всей БД поэкранно.
Установка SET HEAD ON/OFF – позволяет выводить или не выводить заголовки полей.
SET MEMOWIDTH TO <N> - устанавливает количество видимых позиций для MEMO-полей в командах LIST и DISPLAY.
5. Поиск данных. Первый способ: использование опции FOR в командах LIST, DISPLAY, BROWSE, CHANGE и д.р. Пример: LIST FOR SEM=’х’
Второй способ: фильтрация данных. SET FILTER TO [<усл.>] – установка фильтрации для всех команд обработки. SET FILTER TO – сброс фильтра. Пример: SET FILTER TO POL=’M’ LIST (вывод записей с “М” в поле POL)
Третий способ: последовательный поиск. LOCATE [<границы>] [WHILE <усл.>] [FOR <усл.>] Если границы и опция WHILE отсутствуют, то поиск производится по всему файлу. Если запись найдена, то указатель текущей записи становится на найденную. Пример: LOCATE FOR POL=’M’ DISPLAY Для того, чтобы перейти к следующей записи, удовлетворяющей условию, следует дать команду CONTINUE: CONTINUE && переход указателя к следующей найденной записи.
Выполнить Практическое задание № 3. (см. приложение)
Временные переменные. Все переменные создаваемые в FoxPro, помещаются в специальную область памяти и находятся там до тех пор пока не будут удалены или пока не будет выгружена среда FoxPro. В FoxPro разрешается создавать временные переменные тех же типов, что и поля БД – четыре типа D, L, C, N. Тип переменной описывать не надо, он определяется типом последнего присваиваемого ей значения. Имя переменной - это правильный идентификатор.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|