Распечатать страницу

Пустые значения в Microsoft Visual FoxPro

« Назад

Пустые значения различных типов приведены в табл. 3.6.

Таблица 3.6

Пустые значения

Тип данных

Пустое значение

Blob

Байты с нулями, например 0h, 0h00, 0h000000

Character

Строка нулевой длины, пробелы, знаки табуляции, возврата каретки, конца строки и любые их комбинации

Numeric

0

Currency

0

Float

0

Integer

0

Double

0

Date

Дата с пустыми частями даты; вернет, например, CTOD('"")

DateTime

Дата и время с пустыми частями даты и времени; вернет, например, CTOT("")

Logical

.F.

Memo

Поле без единого символа

General

Поле без OLE-объекта

Varbinary

То же, что и в случае Blob

Функция

EMPTY(eExpression)

определяет, является ли выражение пустым. Возвращает .T., если это так, или .F. – в противном случае.

Функция EMPTY( ) не может быть применена для определения, является ли пустой ссылка на объект или нет. Например, если переменная содержит ссылку на форму, то после ее закрытия эта переменная будет содержать NULL, то есть не пустое значение, а ее тип по-прежнему будет Object. То есть ответ, содержит ли переменная ссылку на объект или нет, дает одновременной употребление 2-х функций – TYPE( ) и ISNULL( ).

Пример:

oForm = CreateObject('Form')

if Type('oForm') = 'O' then

if not IsNull(oForm) then

? 'oForm содержит ссылку на объект'

endif

endif

Функция

EVL(eExpression1, eExpression2)

возвращает не пустую величину для двух выражений.

Используется, чтобы получить подходящую величину вместо пустого значения, такого как .F., 0 или "". Также употребляется для удаления пустых значений из операций, в которых пустые значения недопустимы.

Возвращает eExpression1, если оно не вычисляется с пустым значением, или eExpresssion2 – в противном случае.

Параметры:

eExpression1, eExpression2 – выражения любого типа, кроме General. Также eExpression1 не может иметь тип и Object.

Пример:

var1 = 0

var2 = 5

? Evl(var1, "Пусто")           && Напечатает: Пусто

? Evl(var2, "Пусто")           && Напечатает: 5