Client code page
- Last Updated: January 17, 2024
- 2 minute read
- OpenEdge
- Version 12.8
- Documentation
Client code page
The OpenEdge client might be using a different code page than the code page defined for the schema image in the schema holder.
The Internal Code Page (-cpinternal) startup parameter
determines the code page that the OpenEdge client uses when manipulating
data in memory. If the client uses the -cpinternal startup
parameter, then the DataServer translates between the two code pages.
You must verify that the convmap.cp file contains
a conversion table for the client and the code page setting in the
schema image. For example, you might have set the schema image to
code page xxx and the client might use code page zzz. The convmap.cp file
must include a table that converts from xxx to zzz and from zzz
to xxx. If convmap.cp does not include the
appropriate table, OpenEdge allows you to define your own conversion table.
OpenEdge also allows you to define your own collation tables; however, customized collation tables have no effect when you use the DataServer to access Oracle. The Oracle collation tables are in effect when you perform comparisons and sorts.
In some cases, a superset of an ABL query is passed to Oracle and then a process called "client selection" is responsible for doing record sorting and/or comparisons that match server results against the original ABL query. Client selection is dependent on the collation table selected for your Oracle schema image. If the sort criteria and comparison rules of the schema holder's collation table do not match the server's, it is possible that client selection will exclude records in the client's results that the server would have included.
For a complete discussion of how OpenEdge handles code-page issues, see Internationalize ABL Applications.