Рефераты. СУБД dBase

@ <строка 1>,<колонка 1> ТО <строка 2>,<колонка 2> [DOUBLE/PANEL/<символы определения рамки>] [COLOR <код цвета>]

которая рисует на экране прямоугольную рамку, определяемую координатами верхнего левого - <строка 1>,<колонка 1> - и правого нижнего - <строка 2>, <колонка 2> - углов рамки. Опция DOUBLE позволяет рисовать двойную линию рамки (по умолчанию рисуется одинарная линия), опция PANEL - рамку в виде сплошной полосы. Кроме того, имеется возможность рисовать линию рамки заданными символами. Для этого задается список символов для определения рамки. Можно задать различные символы для сторон и углов рамки. В этом случае символы разделяются запятыми и располагаются в следующем порядке: f, b, I, r, fl, fr, bl, br, где f - верх; b - низ; 1 - левая сторона; г - правая сторона; П -левый верхний угол; fr - правый верхний угол; bl - левый нижний угол; br -правый нижний угол.


Пример.

@ 5,13 ТО 10,40 DOUBLE COLOR R/BG Д

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

CLEAR [ALL/FIELDS/GETS/MEMORY/MENUS/ POPUPS/TYPEAHEAD/WINDOWS]

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

Команда @...SAY...GET является универсальной для организации ввода и вывода информации на экране. В программах нередко требуется вводить с клавиатуры данные для обеспечения процесса обработки информации, например имя файла БД, данные для ветвления программы, поисковые значения и т.д. Для этого предусмот­рена специальная команда

ACCEPT   [<сообщение>]   ТО <переменная>

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

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

INPUT   [<сообщение>]   ТО <переменная>

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

Кроме универсальной команды SAY существует команда, специально предна­значенная для вывода данных на экран и принтер:

?/??        [<выр.1>   [PICTURE  <выр.С>]

[FUNCTION  <список  функций>]    [AT   <вьгр.Ы>] [STYLE  <номер шрифта>]]    [,<выр.2>...]    [,]

которая выводит значение одного или более заданных символьных выражений. Если установлено состояние SET PRINT ON, то выполняется вывод на принтер, если SET PRINT OFF, то на экран. Эта команда в форме ? выводит каждое выраже­ние на следующей строке, а в форме ?? все выражения на одной строке. Для печати отчета используется команда

REPORT FORM <имя файла отчета>/?

[<границы>] [WHILE <условие>]

[FOR <условие>] [PLAIN]

[HEADING <выр.С>] [NOEJECT]

[ТО PRINTER/TO FILE <имя файла>] [SUMMARY]

которая запускает программу печати отчета (файл отчета), созданную командой CREATE/MODIFY REPORT.

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

MODIFY COMMAND/FILE <имя файла> [WINDOW <имя окна>]

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

<команды>

DO Procl

DO Proc2

DO РгосЗ

RETURN

PROCEDURE Procl

<команды>

RETURN

PROCEDURE Proc2

&& Начало главной процедуры

&&   Конец главной процедуры

&&   Начало Procl

&&   Конец Procl

&&   Начало Ргос2

617

<команды> RETURN

PROCEDURE РгосЗ <команды> RETURN

&& Конец Proc2 && Начало РгосЗ

&& Конец РгосЗ

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

DO <имя программы>/<имя процедуры>   [WITH <список параметров>]

Опция WITH передает в вызываемую процедуру параметры (до 64).

Каждая процедура, размещаемая в файле процедур или в программном файле, должна начинаться с команды

PROCEDURE <имя процедуры>

и завершаться командой

RETURN [<выражение>/ТО MASTER/TO <имя процедуры>]

Команда RETURN удаляет все переменные, которые были определены в проце­дуре как PRIVATE (переменные, определенные как PUBLIC, остаются без измене­ния).

Командой DO в процедуру можно передавать из вызывающей программы и об­ратно параметры, которые в самой процедуре определяются командой

PARAMETERS <список параметров>

которая должна быть первой исполняемой командой в теле процедуры. В качестве параметра в списке может быть любое допустимое выражение, определяющее переменную, в которую передаются данные из соответствующего параметра вызы­вающей программы. Если эта переменная не объявлена глобальной (PUBLIC), то автоматически она имеет статус локальной (PRIVATE).

Определение переменных как локальных выполняется командой

PRIVATE <список переменных> / [ALL [LIKE/EXCEPT <шаблон>]]

Глобальные переменные можно использовать повсюду в программе и в вызы­ваемых ею процедурах. Для объявления переменных и элементов массива глобаль­ными используется команда

PUBLIC <список переменных>/ [ARRAY <список элементов массива>]


8. Организация системы меню

Чтобы организовать в dBASE систему меню, сначала надо определить его от­дельные компоненты - меню вертикального и горизонтального типа. Для этого используются специальные команды, начинающиеся словом DEFINE - определить. Определение горизонтального меню выполняется командой

DEFINE MENU <имя менк» [MESSAGE <выр.С>]

Эта команда еще не создает горизонтальное меню, а только назначает ему имя и, если требуется, сообщение, которое будет высвечиваться в нижней строке экрана (строке сообщений). Для определения позиций горизонтального меню используется команда

DEFINE PAD <имя позиции>

OF <имя меню> PROMPT <выр.С>

[AT <строка>, <ко'лонка>] [MESSAGE <выр.С>]

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

DEFINE POPUP <имя менк»

FROM <строка 1>,<колонка 1> [ТО <строка 2>,<колонка 2>] [PROMPT FIELD <имя поля>] /PROMPT FILES [LIKE <шаблон>] /PROMPT STRUCTURE] [MESSAGE <выр.С>]

которая устанавливает его имя (записывается по тем же правилам, что и для гори­зонтального меню) и координаты окна меню на экране. Опции FROM и ТО опре­деляют координаты левого верхнего и правого нижнего углов окна меню.

Назначение текста и других атрибутов одной позиции ранее определенного вер­тикального меню осуществляется командой

DEFINE BAR <номер строки> OF <имя меню> PROMPT <выр.С> [MESSAGE <выр.С>] [SKIP [FOR <условие>]]

Чтобы определить нескольких позиций, надо эту команду повторить соответст­вующее число раз.

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

ON SELECTION PAD <имя позиции горизонтального меню> OF <имя горизонтального меню> [<команда>]

которая выполняет заданную команду при выборе указанной позиции горизон­тального меню. В качестве команды может быть любая команда dBASE IV, в том числе команда вызова программ и процедур.

Для назначения действий позициям вертикального меню используется команда

ON SELECTION POPUP <имя позиции вертикального MeHK>>/ALL [<команда>]

которая выполняет заданную команду или процедуру при выборе позиции верти­кального меню.

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

DO     CASE

CASE <условие>

<команды>

[CASE <условие>]

<команды>

[OTHERWISE]

<команды> ENDCASE

Можно формировать вложенные структуры этой команды, т.е. внутри команды после ключевого слова CASE помещать другую команду DO CASE, а также любые другие команды ветвления и выполнения циклов, например IF...ENDIF, DO WHILE...ENDDO и др.

CASE CASE  Val  >   1000 <команды> CASE  Val   >   100 <команды> CASE Val  >  10 <команды> OTHERWISE <команды> ENDCASE


Если требуется разветвить процесс только на два направления, можно использо­вать команду

IF <условие> <команды> [ELSE],<команды> ENDIF

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

ход фай

DO  WHILE

[EXIT]

[LOOP] ENDDO

<условие> <команды>

<команды> <команды>

руе

:

зац

которая обеспечивает повторение последовательности команд, заключенной между словами DO WHILE и ENDDO до тех пор, пока заданное условие истинно. Если встречается слово LOOP, то управление передается в начало цикла команд, а при встрече слова EXIT осуществляется выход из команды и управление передается на первую команду после слова ENDDO, завершающего данную команду.

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

ACTIVATE MENU <имя меню> [PAD <имя позиции>]

ACTIVATE POPUP <имя меню>

которые вызывают на экран предварительно определенные меню.
























Список использованной литературы

 

1.      Голицына О.Л., Максимов Н.В. и др., «Базы данных» (учебное пособие)

2.      Могилёв А.В., Пак Н.И. и др., «Информатика»

3.      Майоров А.Н. «Современные СУБД»


Страницы: 1, 2, 3, 4, 5



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.