ABAP - Keyword Documentation →  ABAP - Dictionary →  Predefined Data Types in ABAP Dictionary →  Attributes of the Predefined Dictionary Types →  General Dictionary Types → 

Decimal Floating Point Numbers

In decimal floating point numbers, a maximum of 16 or 34 places exactly are returned in the mantissa depending on the data type.

Handling in ABAP Dictionary

In ABAP Dictionary, the following data types are available for decimal floating numbers:

These data types are a replacement for real decimal floating point types that are supported by all database systems:


Handling in Dynpros - Output Length and Output Style

The maximum output length that can be specified in a domain for a 16-character decimal floating point number is 24. For a 34-character number, 46 is the maximum output length. These are also the default values.

In a domain, or directly in a structure component created using one of the types for decimal floating numbers (but not in data elements with directly specified technical attributes), one of the following output styles is always defined. The output style defines how a dynpro field defined with reference to this domain (or a corresponding ABAP field in the case of list output) is formatted:

Mathematical or scientific notation (depending on space)
Commercial notation (canceled if not enough space, instead of implicit transformation to scientific notation)
Format with preservation of scaling, including trailing zeroes in the decimal places
Scientific notation
Scientific notation with a 0 as an integer digit
Scientific notation including trailing zeroes in the mantissa.
Scientific notation where the exponent is always an integer and a multiple of 3. The value range of the integer digits is between 1 and 999 (except if the source field has the value 0).

For dynpro fields whose data type is not defined in ABAP Dictionary, the output style can also be determined in Screen Painter. In the case of formatting with the statements WRITE or WRITE TO, the addition STYLE is available (as for the string templates).


Handling in ABAP Programs

The ABAP types that correspond to the 16 or 34 figure decimal floating numbers in ABAP Dictionary are decfloat16 and decfloat34, which are handled internally according to the IEEE-754-2008 standard, and are supported by all ABAP operations. In arithmetic SQL expressions, decimal floating point numbers are not supported.

The addition STYLE after WRITE [TO] and the formatting option STYLE in embedded expressions are available for the formatting of decimal floating numbers in programs. These overwrite the output style defined in ABAP Dictionary.