Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв БД 2013-03-15.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
12.65 Mб
Скачать

Функции времени

Time( ) - возвращает системное время в виде строки, состоящей из восьми символов в двадцатичетырехчасовом формате (ЧЧ:ММ:СС).

Seconds( ) - возвращает системное время в секундах.

Функции анализа условий, типов и наличия данных

Iif(<условие>,<Выр1>,<Выр2>) - выдает значение <Выр1>, если <условие> истинно, и <Выр2>, если ложно.

Емрty(<Выр>) - возвращает логическое .Т., если <Выр> (поле/пе­ре­мен­ная) не имеет данных, и .F. ‑ в противном случае. В зависимости от типа данных “пустым“ считается поле/переменная со значением: пробелы, нуль, {}, .F. для соответствующих типов.

Туре(<ВырС>) - возвращает прописной буквой символ, обозначающий тип данных для <ВырС>: С - символьный, L - логический, N - числовой, М - мемо-поле, D - дата, U - неопределенный. Имя переменной должно быть взято в апострофы/кавычки.

Функции подстановки

Функции подстановки позволяют интерпретировать символь­ную переменную как отображаемый ею объект программы. Они дают возмож­ность формировать имена переменных, функции и даже целые команды непосредственно в программе.

& <символьная переменная> [.<ВырС>]

Функция называется функцией макроподстановки и превращает содержимое <символьной переменной> или мемо-поля непосредственно в объект, который она изображает.

Пример использования макроподстановки для удаления файла

F=”Brig3.dbf” && формирование значения макроподстановки

Erase &F && удаление файла под именем “Brig3.dbf”

Аргументом функции макроподстановки является все то, что следует от знака & до первого пробела. Если необходимо составить фразу, содержащую, кроме самой макроподстановки, некоторую строку <ВырС>, их следует соединить точкой. Если <ВырС> начинается с точки, то их должно быть две.

Пример

F=”Brig3” && формирование значения макроподстановки

Erase &F..dbf && удаление файла под именем “Brig3.dbf”

В случае формирования команд для работы с именами (файлов, пе­ре­мен­ных, полей) допускается использовать также символьные (кос­вен­ные) переменные, взятые в круглые скобки (Erase (n+'.dbf')).

Макроподстановка может применяться не только для формирования имен, но и целых команд.

Пример

F=”Erase [Brig3.dbf]” && формирование значения макроподстановки

&F && удаление файла под именем “Brig3.dbf”

Возможны вложения макроподстановок друг в друга. Общая длина одной макроподстановки не должна превышать 255 знаков.

Функция Evaluate(<ВырС>) рассматривает <ВырС> как некоторое допустимое для FoxPro выражение и возвращает вычисленный ею результат. В отличие от макроподстановки (&) возможности функции скром­нее, и она может использоваться только в составе команд, но выполняется быстрее

Примеры. ? Evaluate ( '2**3' ), Evaluate('Date( )').

Функции работы с массивами

Adel(<Массив>,<ВырN> [,2]) - удаляет один элемент одномерного <массива> или cтроку/колонку двумерного <массива>. Если удаление выполнено успешно, то функция возвращает 1. Размерность такого массива не изменяется. Удаляемые элементы получают значение .F. и становятся в конец массива. Их место замещается ближай­шими элементами. Если удаляется строка/столбец, то их место замещается сле­ду­ющи­ми строками/столбцами. <ВырN> указывает номер удаляемого элемента одномерного массива или строку/колонку двумерного массива. Включение параметра [,2] означает, что удаляется не строка, а столбец.

Ains(<Массив>,<ВырN>[,2]) - вставляет один элемент одномерного или строку/ко­лон­ку двумерного <массива>. Если вставка выполнена успешно, то функция возвращает 1. Размерность такого массива не изменяется, а новые элементы получают значения .F.. Элементы строки/столбцы, на место которых производится вставка, отодвигаются назад/вниз/вправо. Самые крайние компоненты массива оказываются за его пределами и утрачиваются. <ВырN> указывает номер вставляемого элемента одномерного массива или строку двумерного массива. Параметр [,2] означает вставку столбца.

Aсору(<Массив1>,<Массив2> [,<ВырN1>[,<ВырN2>[,<ВырN3>L]]) ‑ ко­пи­ру­ет элемен­ты <массива1> в <массив2>. Если <массив2> не существует, то он создается, и его размерность будет той же, что и размерность <массива1>. Функция возвращает количество скопированных элементов. <ВырN1> - элемент в исходном <массиве1>, с которого начинается копирование; <ВырN2> - число копируемых элементов; <ВырN3> - элемент <массива2>, с которого начинается ввод копируемых данных.

Ascan(<Массив>,<Выр> [,<ВырN1>[,<ВырN2>]]) - ищет <выражение> среди элементов <массива>, начиная с элемента номер <ВырN1> до элемента номер <ВырN2>. Возвращается номер найденного элемента или 0 в противном случае

Asort(<Массив> [,<ВырN1> [,<ВырN2> [,<ВырNЗ>]]]) -сортирует элементы <массива>. Для одномерного массива сортировка выполняется, начиная с элемента номер <ВырN1> до элемента с номером <ВырN2>. Сортировка массива выполняется по столбцу под номером <ВырN1>, в соответствии с которым переставляются <ВырN2> строк (по умолчанию все строки). <ВырNЗ> может быть равно 0/1 и определяет вид сортировки - возрастание/убывание. Если не задан ни один из необязательных пара­мет­ров, то массив сортируется целиком.

Afields(<Массив>) - занесение информации о структуре таблицы в двумерный массив. Возвращает количество полей в записи. Строка массива содержит описание одного поля, а колонки - имя, тип (C, N, F, L, D, M), общий размер и размер дробной части полей соответственно.

Adir(<Массив>[,<ВырC>]) - заполнение массива информацией о файлах. Воз­вращает количество файлов, которые соответствуют маске и заполняет информацией о файлах - имя, размер, дата, время и атрибуты в <массив>.

<ВырC>- маска. Строка массива содержит описание одного файла, а колонки - имя, размер, дату и время создания и атрибуты файла.