OpenEdge supports multi-language (for example, French and German) applications through use of the CURRENT-LANGUAGE statement and function. You can use this ABL support in server procedures to coordinate different languages between the client and PAS for OpenEdge sessions. In an unbound session-managed or session-free application, you must use the activate procedure to set the correct language for each client request.
If you do write a multi-language application, you must ensure that the client and your server-side code handle the following features in a compatible fashion:
Collation — If the server session and client use different collations, the client might need to re-sort output TEMP-TABLE or result set parameters. An ABL client can do this by defining its own index on the appropriate columns.
Date and number formats (-d and -E startup parameters) — To minimize any problems using different date and number formats, always exchange dates as an ABL DATE values and exchange numeric fields as ABL INTEGER or DECIMAL values, rather than as character strings.
Case rules (such as in BASIC and French) — Based on the anticipated language environment, you can specify tables in the Session Startup procedure (using the -cpcase startup parameter) that the server session uses to handle case conversions.
Year offset (-yy startup parameter) — Using the Century (-yy) startup parameter, you can ensure that the server session calculates dates based on a specified hundred-year period that is compatible with the client.
For more information on using the CURRENT-LANGUAGE statement and function in an ABL session, see OpenEdge Development: Internationalizing Applications.