Collations and collation tables
- Last Updated: February 11, 2026
- 1 minute read
- OpenEdge
- Version 13.0
- Documentation
Collations and collation tables
A collation is a set of rules that determine how character data is ordered. OpenEdge provides a set of collation tables to sort and compare character data. OpenEdge also supports the International Components for Unicode (ICU) collations, which provide linguistic sorting of Unicode data based on the Unicode Collation Algorithm. OpenEdge uses a collation when it does the following:
- Compares
CHARACTERstrings using a ABL relational operator or the ABLCOMPAREfunction - Generates the collation value of a
CHARACTERdata item using the ABLCOLLATEoption of theFORstatement, theOPEN QUERYstatement, and thePRESELECTphrase - Sorts the results of a ABL query that uses the FOR statement's
BYorEACHoption - Builds or rebuilds databases indexes
Use the Collation Table (-cpcoll) startup parameter
to specify the ICU collation or OpenEdge collation table you want
use. You can also specify an OpenEdge collation or an ICU collation
with the ABL COMPARE function and the COLLATE option
on the ABL FOR statement, OPEN QUERY statement,
and PRESELECT phrase.
The following figure shows code page 1253's GREEK collation table, which resides in the greek.dat file.
Code page 1253's GREEK collation table
|
The figure shows that the collation table has two sections, one for case-insensitive sorts and one for case-sensitive sorts. Each section has a value for each element in the code page. The value of an element represents the sort order of that element. For example, in a case-insensitive sort that uses this collation table, element 1 sorts first and element 97 sorts sixty-sixth.