6 10 7 Literals in RDML

LANSA Multilingual Application

6.10.7 Literals in RDML

Don't use literals in RDML/RDMLX code. Use Multilingual Variables (MTXTs) so that VARIANT characters are correctly converted to the CCSID that will be used at execution time. For example, @ is a variant character, therefore it should be in an MTXT.

  • If a literal is used in RDML, it is converted using the CCSID derived from the language displayed in the LANSA Editor's Design View at the time the object was compiled. If it does not match the Job CCSID, errors will occur.
  • If an MTXT is used in RDML, each language instance of the MTXT is converted using the CCSID derived from the language of the MTXT instance.

Clearly, an issue will not be present if the literal in question is invariant in the languages used by the application. But let's say that the literal contains the @ character. If the application currently used US English (037) and Canadian French (500) then the @character is invariant. But, if French French (297) was added to the application, the @ character would now be variant. If this was compiled with US English as the Design View Language, then French French would not display the @ correctly.