sapdev logo background
sapdev logo sapdev logo
Comments

SAP DECIMAL FLOATING POINT FIELD documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

Decimal Floating Point Numbers in ABAP Dictionary
In decimal floating point numbers , a maximum of 16 or 34 decimal places are returned exactly 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:
  • DF16_DEC , DF16_RAW , and DF16_SCL for 16-digit numbers.

  • DF34_DEC , DF34_RAW , and DF34_SCL for 34-digit numbers.

  • The following applies to these data types:
  • DF16_DEC and DF34_DEC


  • In database fields of this type, decimal floating point numbers are stored as a packed number (format DEC ). The length and the number of decimal places must be specified when defining a data type in ABAP Dictionary. Calculations ( SELECT with the aggregate functions SUM and AVG , UPDATE with SET + and - ) can be performed on the database for this type. When there is a write to the database, the system implicitly rounds off to the number of decimal places and decimal overflows can occur.
  • DF16_RAW and DF34_RAW


  • In database fields of this type, decimal floating point numbers are stored as binary (In RAW format). The length is set to 16 or 34 places. Values can be sorted, compared, and used in indices. For this type, no calculations can be executed on the database. Since it is an SAP-specific format, corresponding fields also cannot be edited in Native SQL statements using ADBC . The scaling is lost when writing to the database.
  • DF16_SCL and DF34_SCL


  • Data type for decimal floating point numbers with
    scaling . In database fields of this type, decimal floating point numbers are stored in the same way as DF16_RAW or DF34_RAW
    (length 16 or 34 places, and the same restrictions apply). The scaling must be specified in a direct successor database field with type
    INT2 . When a decimal floating point number is written, this field is automatically filled with the scaling and during reading, the scaling is automatically taken from it.

    Handling in Screens
    In a domain, or directly in a structure component created using one of the types for decimal floating numbers, one of the following output styles is always defined. The output style determines how a decimal floating point number is displayed on the screen of a dynpro.
  • Simple - default, mathematic or scientific notation (depending on space)

  • Sign on the right - commercial notation

  • Scaling-preserving - Format with preservation of scaling, including trailing zeros after the decimal place

  • Scientific - Scientific notation

  • Scientific with leading zero - Scientific notation with a 0 before the decimal point.

  • Scaling-preserving scientific - Scientific notation including trailing zeros in the mantissa.

  • Technical - Scientific notation whereby the exponent is always an integer and a multiple of 3.

  • For screen fields whose data type is not defined in thABAP Dictionary, the output style can also be determined in the Screen Painter .

    Handling in ABAP Programs
    The ABAP types which 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 operations.
    The STYLE addition after WRITE [TO] and the STYLE formatting option in embedded expressions are available for the formatting of decimal floating numbers in programs. These overwrite the output style defined in ABAP Dictionary.
    Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




    DECIMAL_COMMA_GLOSRY
    DECIMAL_NUMBER_GLOSRY




    comments powered by Disqus