В случаях, когда требуется высокая точность для сохранения данных, например, для хранения в ваших таблицах результатов точных вычислений, или хранения данных, выраженных в формате "с плавающей точкой", вместо стандартного типа данных Numeric  можно использовать тип данных Double. В этом случае, количество задаваемых десятичных знаков определяет количество отображаемых десятичных знаков.

NoteОбратите Внимание

Когда данные типа Double отображаются в таблице, то в десятичной части этих чисел отображается заданное количество десятичных знаков. Однако Система Visual FoxPro сохраняет в  Поле таблицы актуальное значение хранимой величины.

См. дополнительную информацию о спицификациях типа данных Double в разделе Типы Данных и Полей в Visual FoxPro.

Expand imageПример

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

  CopyCode imageКопировать Код
&& Закрыть открытые базы данных и очистить память.
CLOSE DATABASES ALL
CLEAR

&& Создать Курсор с Полем, типа данных Double.
CREATE CURSOR myCursor (myField B(2))

&& Вставить запись с полем задвнного значения.
INSERT INTO myCursor VALUES (1234.561234)

&& Вычислить и отобразить значение поля myField.
? EVALUATE("myCursor.myField") && Displays 1234.56.

&& Вычислить и сравнить значения с указанными константами.
? EVALUATE("myCursor.myField") = 1234.56 && результат .F.
? EVALUATE("myCursor.myField") = 1234.561234 && результат .T.

Expand imageСм. также