Hello,
We are using a database UTF-8 encoded, connected clients are also using UTF-8.
Resently we upgraded to OE10.2B SP 4 and we have the following problem.
When using a selection like below:
for each <table> no-lock where <table>.<charfield> >= charvar1 and <table>.<charfield> <= charvar2 :
<process selection>
end.
Before executing the selection validation is performed on charvar1 and charvar2. One of the things happening during this validation is:
IF (charvar2 = "" AND
charvar1 = "" ) OR
charvar = "*"
THEN ASSIGN charvar2 = FILL(CHR((IF SESSION:CHARSET = "UTF-8" THEN 15712191 ELSE 254)),20).
ELSE IF charvar2 = ""
THEN ASSIGN charvar2 = charvar1.
ELSE ASSIGN charvar2 =
charvar2 + FILL(CHR((IF SESSION:CHARSET = "UTF-8" THEN 15712191 ELSE 254)), 20 - LENGTH(charvar2)).
So after this, charvar1 is empty "" and charvar2 is filled with 20 times chr(15712191).
When executing above selection width this the query doesn't return all expected records.
This is "old" code and has always worked fine, up until now.
Any ideas what might cause this or how to fix this.
Thanks for your time.
Kind regards,
Peter.
We are using a database UTF-8 encoded, connected clients are also using UTF-8.
Resently we upgraded to OE10.2B SP 4 and we have the following problem.
When using a selection like below:
for each <table> no-lock where <table>.<charfield> >= charvar1 and <table>.<charfield> <= charvar2 :
<process selection>
end.
Before executing the selection validation is performed on charvar1 and charvar2. One of the things happening during this validation is:
IF (charvar2 = "" AND
charvar1 = "" ) OR
charvar = "*"
THEN ASSIGN charvar2 = FILL(CHR((IF SESSION:CHARSET = "UTF-8" THEN 15712191 ELSE 254)),20).
ELSE IF charvar2 = ""
THEN ASSIGN charvar2 = charvar1.
ELSE ASSIGN charvar2 =
charvar2 + FILL(CHR((IF SESSION:CHARSET = "UTF-8" THEN 15712191 ELSE 254)), 20 - LENGTH(charvar2)).
So after this, charvar1 is empty "" and charvar2 is filled with 20 times chr(15712191).
When executing above selection width this the query doesn't return all expected records.
This is "old" code and has always worked fine, up until now.
Any ideas what might cause this or how to fix this.
Thanks for your time.
Kind regards,
Peter.