Функции для работы с таблицей

ALIАS ()Возвращает псевдоним таблицы в текущей рабочей области.

BOF() –определяет находится ли курсор на самой первой записи.

CPCURRENT() –возвращает номер используемой кодовой страницы.

CPDBF()–возвращает номер кодовой страницы для таблицы, открытой в текущей рабочей области.

DBF ()– возвращает имя таблицы, открытой в текущей рабочей области.

EMPTY() –определяет, является ли выражение пустым.

EOF()–определяет находится ли курсор на самой последней записи

FCOUNT() – возвращает число полей текущей таблицы.

FOUND()– возвращает .Т., если при в результате поиска было найдено искомое.

ISREADONLY()возвращает .Т., если таблица открыта только для чтения.

LUPDATE() -возвращает дату последней модификации таблицы;

RECCOUNT() –возвращает число записей открытой таблицы.

RECNO() –возвращает номер записи, на которой установлен маркёр.

SELECT() –возвращает номер текущей рабочей области.

USED() –определяет, открыта ли таблица в текущей или указанной рабочей области.

Пример:

? USED() возвращает .F., если в рабочей области не открыта ни одна таблица и .T. , если таблица открыта.

Функции для преобразования типов данных

STR(<вырN>,[<длина>],[<десятичные знаки>]) - преобразует числовое <вырN> в символьную строку, включающую знак "-" (если есть) и десятичную точку, общей длиной <длина> с за­данным количеством <десятичных знаков>. Если <длина> не указана, берется длина 10. Если не указаны <десятичные знаки>, число округляется до целого значения, и вообще в случае уменьшения длины дробной части оно округляется.

Пример:

? STR(384.248,6,2) && 384.25

DTOC(<вырD>[,1]) – преобразует выражение типа дата <вырD> в символьное выражение. Пример:

?DTOC({^2005.10.01}) && 01.10.05

Необязательный параметр "1" означает, что формируемая строка будет не символьным отображением даты в каком-либо формате даты, а сплошной строчкой, из четырех цифр года, двух цифр месяца и дня - ГГГГММДД. Такое изображение даты удобно при создании составного индекса в котором учитывается дата.

Пример:

?DTOC({^2005.10.01},1) && 20051001

Пример. Выведите на экран сообщение вида: «Сегодня такое-то число, такого-то месяца, такого-то года»

? "Сегодня" + DTOC({^2006.06.22}) && Сегодня 22.06.06

DTOS(<вырD>) - возвращает 8-разрядную символьную строку в формате ГГГГММДД для <вырD>. Аналогична DTOC() с параметром 1.

СТОD(<вырС>) - преобразует дату из символьной формы в формат даты (типD). Применяется в программах для создания переменных типа дата. Функция ис­пользуется для создания в программе переменных типа дата.

Пример:

? CTOD(‘05.10.91’) && 05.10.91 типа дата

DTOR(<вырN>) – конвертирует градусы в радианы.

Пример:

DTOR(180) && 3.14

Создание программных файлов

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

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

Структура программы

В тексте программного файла можно выделить следующие блоки:

1. Заголовок программного файла— позволяет легко ориентироваться в большом количестве программ. Поскольку это комментарий, строка заголовка начинается символом * и не компилируется. Заголовок может выглядеть так.

* Наименование программы: search.prg

* Назначение: поиск по введенному параметру

* Вызывается из программы main.prg

* Программа начата 25.04.2004

* Дата последней модификации 03.05.04

2. Установочная часть программы— содержит команды SET, определяющие окру­жение: озвучивание, цветовую гамму, форматы, подавление вывода ненужных сооб­щений. После компиляции выполненные в программе настройки изменить нельзя. Например, если файл, который вы хотите создать, уже существует, на экране появ­ляется вопрос, перезаписать ли этот файл? При положительном ответе файл будет обновлен. Для того чтобы при выполнении программы такое сообщение не выводи­лось, в ней должна быть команда SET SAFETY OFF. Кроме того, в установочной части записываются команды очистки экрана, макросов, окон и других результатов, полученных ранее. Ниже показан пример установочной части программы.

*******************************************************

CLEAR && очищает главное окно

CLEAR MEMORY

CLEAR ALL &&удаляет из памяти все временные переменные и закрывает все таблицы

CLOSE ALL && закрывает все файлы

CLEAR MACROS

*******************************************************

SET TALK OFF && для вывода на экран результата выполнения команд

SET BELL OFF && отключает звуковой сигнал

SET DATE GERMAN

SET ESCAPE ON && разрешает прерывание выполнения программы

SET HOURS TO 24

SET CLOCK ON

SET SAFETY OFF && отключает предупреждения при перезаписи файла SET AUTOSAVE ON

*******************************************************

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

4. Заключительная часть программы- приводит рабочее пространство в исходное состояние, удаляет временные переменные и закрывает открытые файлы. Например:

CLEAR ALL

CLEAR

CLOSE ALL

RELEASE WINDOWS ALL && закрывает все окна

Наши рекомендации