IBM Support

PK88194: Rational Business Developer V7.5.1: Decimal Symbol and Numeric Separator documentation updates

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Rational Business Developer V7.5.1.2:
    
    The following updates are needed for the Decimal Symbol
    (decimalSymbol) and Numeric Separator (separatorSymbol)
    documentation:
    
    Differences between Java and Cobol:
    - In Java, the targetNLS, numericSeparator, and decimalSymbol
      are all passed to the runtime, and the separatorSymbol and
      decimalSymbol override the targetNLS value.
    - In Cobol, the targetNLS value is passed to the runtime, and
      the separatorSymbol and decimalSymbol are only used by
      generation.  There are no overrides, and users must specify
      the appropriate values in all three for things to work.
    
    Issue #1 - Allowing an user to enter a text value using a
      decimal symbol that matches the decimal symbol defined at
      runtime.
    
      Fix in Cobol - Allows users to enter ',' in a character value
      if that is how it is configured in the runtime, by replacing
      ',' values with '.' values at runtime as necessary so that
      things continue to run correctly in the Cobol runtime.  This
      happens in both directions (char to num, and num to char)
      Cobol and Debug/Java still have a difference between what they
      consider 'valid values' when assigning a character value to a
      Num (e.g.  aNum = "123.4"; when the decimal symbol is a ',').
      Cobol's routine assumes the number is 1234, while Debug says
      that you can't have a '.' as a decimal point.  We will
      document this difference.
    
    Issue #2 - Allow users to enter numeric values using the
      decimalSymbol as specified in the build descriptor
      for a form field  Fix in Java to honor the build descriptor
      values if they are set, instead of always using the targetNLS
      value.  In Cobol, the user can customize the runtime module
      to indicate what the separator and decimal symbol values are
      for a given NLS.  If an user customizes a build descriptor
      option for these values, they must also make sure their
      runtime values are the same.  In other words, with the Cobol
      support, the runtime NLS module used must have the decimal
      symbol and separator symbol values set the same as the
      the corresponding build descriptor values.
    
    In addition, if the decimalSymbol value is specified in the
    build descriptor, the separatorSymbol must also be specified and
    it is up to the user to ensure these values are valid and do not
    conflict.
    

Local fix

Problem summary

  • First, in "Assignment compatibility in EGL," the following
    is a footnote for a CHAR to NUM conversion:
    
    "The runtime value used for a decimal symbol is handled
    differently in EGL-generated COBOL and the EGL Debugger.
    (The behavior of the EGL Debugger reflects the behavior of
    EGL-generated Java). We explain the case by example. If the
    decimal symbol used at run time is a comma when the number
    being assigned to a field of type CHAR is 123.4, the CHAR
    field in the EGL-generated COBOL receives 1234, but the CHAR
    field in EGL Debugger indicates an error because the period
    '.' is not valid as a decimal point. In general, the
    EGL-generated COBOL will ignore an incompatible decimal
    value but the EGL Debugger will indicate an error. For
    details on specifying the decimal symbol, see
    'decimalSymbol.'"
    
    Second, the entries for build descriptor options
    separatorSymbol and decimalSymbol are both updated.  Here's
    the version for separatorSymbol:
    
    "The separatorSymbol build descriptor option specifies a
    character used for [etc]. If you specify a value for this
    option, specify a compatible value for the decimalSymbol
    build descriptor option.
    
    When you are generating a COBOL program, the following
    statements apply:
    
    o If you do not specify the separatorSymbol build descriptor
    option, the value is set by the decimal point character
    specified in the language-dependent options module specified
    for your runtime installation. For z/OS, refer to the
    program directory for your runtime product for related
    details.
    
    o  If you specify values in both the build descriptor option
    and the options module, ensure that they are the same.
    
    o  Ensure that you specify the appropriate value for the
    targetNLS build descriptor option."
    

Problem conclusion

  • Fixed
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK88194

  • Reported component name

    RATL BUS DEV

  • Reported component ID

    5724S5000

  • Reported release

    751

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-06-08

  • Closed date

    2009-11-09

  • Last modified date

    2009-11-09

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    RATL BUS DEV

  • Fixed component ID

    5724S5000

Applicable component levels

  • R751 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
09 November 2009