• The currency type
  • Notes
  • Default value
  • Binary coding of reals
  • Thousand separator
  • Calculations on currencies
  • External language
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Stored procedures
The currency type
A currency is a real coded on 10 bytes.
A currency can contain up to 23 significant digits (17 for the integer part and 6 for the decimal part) and it can take a value included between -604 462 909 807 314 587, 353 087 and +604 462 909 807 314 587, 353 087.
The currency type is recommended to avoid the rounding errors caused by the binary coding of reals.
  • For greater precision, it is recommended to use numerics (38 significant digits).
  • For other calculations, it is recommended to use reals.
  • PHP Numbers (real, integer, currency, numeric) cannot exceed 14 significant digits in PHP. If they exceed this limit, they are rounded to 14 digits.

Default value

A "Currency" variable that is declared but not initialized is equal to 0.
To force the assignment of a currency, use 0m in front of the value. For example:
num1 is currency
num1 = 0m12345678901234567891234567

Binary coding of reals

All reals have the same number of significant digits (15).
If the result of a calculation performed on reals involves more than 15 significant digits, this result will be automatically rounded to 15 significant digits. The precision of the result will be less than the precision of a calculation performed with the currency type.
numerics provide even greater precision (32 digits for the integer part and 6 digits for the decimal part).

Thousand separator

You can use spaces and underscore characters to separate thousands in numbers. For example:
num1 is currency
num1 = 123 456.478
num2 is currency
num2 = 568_014.478

Calculations on currencies

All the calculations that use at least one currency will be performed in currency format. For a more precise result, all the operands will be automatically converted to currency.
For example, when a real is multiplied by a currency, the calculation is performed using the currency type.
Remark: For greater precision, it is recommended to use the Numeric type to perform calculations.

External language

The currency type is not available in external language.
Minimum version required
  • Version 9
This page is also available for…
Click [Add] to post a comment