In tableview, a table (when sorted in ascending order) will display these two records in the following order:
Côte
Cure
However, in debug mode:
“Cure”.toLocaleUpperCase() < “Côte”.toLocaleUpperCase() returns true (when false is expected so as to be consistent with tableview display)
“Cure”.toLocaleLowerCase() < “Côte”.toLocaleLowerCase() also returns true
ylockson,
In tableview, sorting is handled by the database, Servoy does not sort the data in-memory.
It depends on the actual db and settings like collation and locale.
On the other hand, string-compare in scripting is done completely in the client and does not involve the db, so these may differ in result.
Rob
Rob,
Thanks for your explanation.
I suspected that Servoy’s collating sequence was different from that of the database. That’s why I tried to convert to strings to the locale’s upper & lower case hoping that it might work. Nonetheless,
- Is it possible to make Servoy use the same collating sequence/character set as the database when comparing strings?
- What collating sequence/character set does Servoy use?
Regards.
Yan
Yan,
String comparison from scripting is using java string comparison see http://docs.oracle.com/javase/1.5.0/doc … ang.String)
Rob
Rob,
Thanks for the pointer. I’ll check it out.
Regards.
Yan