Topic
1 reply Latest Post - ‏2010-11-27T08:29:22Z by SystemAdmin
SystemAdmin
SystemAdmin
228 Posts
ACCEPTED ANSWER

Pinned topic Euro € Symbol Problem in unicode Applications

‏2010-11-12T20:13:50Z |
Hello,

we are using:
  • IBM Informix Dynamic Server Version 11.50.FC4 unter AIX Version 5.3
  • Visual Studio .Net 2008 (C#) under Windows 2008 Srv, Windows 7 or Vista
  • IBM .Net Dataprovider:
  • IBM.Data.DB2.dll, v2.0.50727
  • IBM.Data.Informix.dll, v2.0.50727
  • IBM.Data.U2.Ucinet.dll, v2.0.50727

and we are accessing our databases by using DB2Connect() and DB2DataReader() / Fill() through the DRDA protocol. Our database locale is de_DE.57391@dud1.

All Euro (€) signs are stored as hex 80 (decimal 128) in our batabases (iso-8859-1(5)).

When we use the DB2DataReader() the Euro (€) sign will be delivered (in the windows-codepage 1252) as hex 80 or decimal 128. Our Visual Sudio .Net programs can't display this code to the screen, because they are implemented by Microsoft as UNICODE applikations. In the UNICODE-codepage, the Euro (€) sign can be found on dezimal 8364.

When we enter an Euro sign in our dialogs, decimal 8364 will be inserted in our databases. When we update a c# string constant of the Euro singn in our databses, we will get a decimal 164 (hex A4) be stored in our databases.

Regarding this conversion problems, we are searching for a read-conversion from decimal 128 to 8364 and a reverse write conversion.

Is there any IBM .Net Dataprovider configuration which does implement this conversion?

Best regards

Detlef
Updated on 2010-11-27T08:29:22Z at 2010-11-27T08:29:22Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    228 Posts
    ACCEPTED ANSWER

    Re: Euro € Symbol Problem in unicode Applications

    ‏2010-11-27T08:29:22Z  in response to SystemAdmin
    Hello,

    we found the following solution for our € conversion problem:

    1) We converted each € symbol stored in our databases from 0x80 to 0xA4.
    2) We changed the CLIENT_LOCALE in our AIX-4GL-Applications with Windows interface to de_DE.1252.

    With this CLIENT_LOCALE our 4GL programs will export the 0xA4 € as 0x80 to Windows files which can be well viewed by using Windows Applications.

    Our .Net Applications which use DB2Connect() and DB2DataReader() / Fill() through the DRDA protocol can not secify a CLIENT_LOCALE in their DB2Connects. But the IBM .Net Dataprovider now converts the 0xA4 € correct to Microsoft UNICODE.

    Best regards

    Detlef