Возвращает величину заданного поля или файла в байтах.

FSIZE(cFieldName [, nWorkArea | cTableAlias] | cFileName)

Параметры

cFieldName

Задает имя поля.
nWorkArea

Задает рабочую область таблицы, для которой функция FSIZE( ) возвращает размер поля. Функция FSIZE( ) возвращает 0, если таблица в указанной рабочей области не открыта.
cTableAlias

Задает псевдоним таблицы, для которой функция FSIZE( ) возвращает размер поля. Если задать несуществующий псевдоним таблицы, Visual FoxPro генерирует сообщение об ошибке.
cFileName

Задает файл, для которого функция FSIZE( ) возвращает величину в байтах.

Результат

Числовой

Замечания

Текущая Установка SET COMPATIBLE определяет, возвращает ли FSIZE () размер поля или файла. Если SET COMPATIBLE установлен в OFF или FOXPLUS (значение по умолчанию), FSIZE () возвращает размер поля. Если SET COMPATIBLE установлен в ON или DB4, FSIZE () возвращает размер файла.

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

Тип поля Размер поля по умолчанию (в байтах)

Currency

8

Date

8

DateTime

8

Double

8

Integer

4

Logical

1

Memo

4

General

4

Размер поля можно отобразить на экране по команде DISPLAY STRUCTURE или LIST STRUCTURE.

Если опустить аргументы nWorkArea и cTableAlias, функция FSIZE( ) возвратит размер поля для текущей таблицы и рабочей области.

Пример

В следующем примере используется функция FSIZE( ), возвращающая размеры двух полей таблицы customer.

  Copy Code
SET COMPATIBLE OFF
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer  && Открыть таблицу Customer

CLEAR
? FSIZE('contact')  && покажет 30
? FSIZE('cust_id')  && покажет 6

See Also