Configuring Precise Decimal Arithmetic in Profound.js

  • For strongly typed fields, the precise option for pjs.define() can be used to define packed or zoned fields as precise decimal.

  • The preciseDecimal configuration option can be used to make the framework specify automatic definitions (such as from external files) as precise decimal. This option can also be overridden at the file definition and query level.

  • For Profound API, input/output parameters can be specified as precise decimal by checking the Precise decimal checkbox on the parameter definition dialog:

    image-20241014-185318.png


    Input parameters defined this way will be received as precise decimal values, instead of native JavaScript numbers. When defined this way, values must be sent as strings in a JSON POST body.

    Note: Currently, precise decimal support is only implemented for REST APIs.

  • For Low Code modules, input/output parameters can be specified as precise decimal by checking the Precise decimal checkbox on the parameter definition dialog:

    image-20241014-185740.png


    If the showIBMiParmDefn value is in effect, then the parameter dialog will not have a Precise decimal checkbox. Instead, the RPG length specification and preciseDecimal configuration setting will be used to determine if the value should be defined as precise decimal:

    image-20241014-190050.png

    Input/output parameters defined this way will be precise decimal values, instead of JavaScript numbers.