16 3 1 RDML Functions

LANSA Application Design

16.3.1 RDML Functions

Applications based on RDML functions, the Universal Model described in the Visual LANSA Developer's Guide , are the most difficult to convert to Unicode because RDML functions are the oldest kind of LANSA development and do not support new features such as Unicode.

Generally, RDML objects cannot refer to RDMLX objects, however RDML functions can use the EXCHANGE and CALL commands to invoke RDMLX functions to do a unit of work. Note that RDMLX functions do not have a user interface: the DISPLAY, POP_UP, and REQUEST commands are not supported on RDMLX functions except in LANSA for Web, but these do NOT support 16.1.1 Unicode Field Types.

The following information assumes the partition is enabled for RDMLX, but all fields, files and functions are RDML and no Components are used.

Extend or Rewrite?

There are two approaches that can be used:

  • Extend the existing application. Leave much of the application as is, and create new RDMLX fields, files, components, functions, and optionally Web Application Modules (WAMs) that utilize existing RDML objects where required. RDML functions can be altered to call RDMLX functions to do Unicode specific processing when no change to the user interface is required. Refer to 16.2 Developing New Applications with Unicode for suggestions.
  • Rewrite the existing application, minimizing use of the Universal Model. Decide what your main application style will be: a Windows Optimized Model in the Visual LANSA Developer's Guide or Web Application Modules as described in the Web Application Module (WAM) Guide. Most Alpha fields can be left as is. Change certain Alpha fields to be Char or String (if you need more than 256 bytes). Change other particular Alpha fields to Nchar or Nvarchar if you need to support multiple languages. Add other RDMLX field types as required.

Also See

16.1 Unicode Support in LANSA

Load Other File in the Visual LANSA Developer's Guide or

Load Other File in the Technical Reference Guide.

Ý 16.3 Modifying Existing Applications to use Unicode