From prior posts it would appear that the desired collating sequence for DataFlex and MS-SQL is SQL_Latin1_General_CP1_CI_AS.

However, MS-SQL out of the box (for us here at least) defaults to Latin1_General_CI_AS. This unfortunately does not match the collate sequence that the DataFlex runtime uses when comparing strings.

Below is typical of how the problem manifest itself for a column that is index.

MS-SQL Latin1_General_CI_AS
1248B750
1248B-900
1253/D

Embedded
1248B-900
1248B750
1253/D

If you jump to record '1248B750' and compare the current record with the initial value i.e. ‘1248B750’ >= '1248B750' the comparison is true. But on the next find this is either '1248B-900' in MS-SQL, or '1253/D' in embedded. However, with MS-SQL the comparison fails. This has the potential to exit processing loops prematurely (not to mention the consequences to the database’s integrity).

There is one obvious way this can be solve and that is to switch the MS-SQL collate sequence to SQL_Latin1_General_CP1_CI_AS but this involve a reasonable amount of SQL scripting for a successful outcome.

Therefore, is it possible to change the df_collate.cfg? And if this is possible what are the changes required so the string comparison behaves similar to MS-SQL collate sequence?