Consultor Eletrônico



Kbase P131020: Euro symbol is displayed incorrectly when retrieved via Oracle DataServer
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/29/2008
Status: Unverified

FACT(s) (Environment):

Progress 9.x
OpenEdge 10.x
Windows
Oracle DataServer

SYMPTOM(s):

Displaying and storing Euro symbol (?) in Oracle database via Oracle DataServer

Euro symbol is entered and displayed correctly in the Progress application

Euro symbol is displayed as an upside-down question mark (¿) when retrieved from Oracle via Oracle DataServer

Progress client started with -cpinternal 1252 -cpstream 1252

NLS_LANG is set to AMERICAN_AMERICA.WE8ISO8859P1 on the client PC

Dumping the data, changing the character to the Euro symbol and reloading it again has no effect

CAUSE:

The Progress client is using code-page 1252 that contains the Euro symbol which is why the Euro symbol can be entered into the application. However, when data is saved to the server, it is converted from 1252 to the code-page set in NLS_LANG. The NLS_LANG setting on the machine is set to AMERICAN_AMERICA.WE8ISO8859P1 (ISO8859-1) but this code-page does not contain encoding for the Euro symbol, hence the problem. The wrong character is saved to the database.

FIX:

Set NLS_LANG to a code page that contains the Euro symbol, for example a standard Western edition of Windows could use Oracle's equivalent of 1252:

AMERICAN_AMERICA.WE8MSWIN1252