db2 - Delphi TBytesField - How to see the text properly - Source is HIT OLEDB AS400 -
we connecting multi-member as400 iseries table via hit oledb , hit odbc.
you connect table via alias access specific multi-member. create alias on as400 way:
create alias aliasname table(membername)
we can query each member of table way:
select * aliasname
we testing in delphi6 first, move d2010 later
we using hit oledb as400.
we pulling down records table , field being seen tbytesfield. have tried odbc driver , sees tbytesfield well.
directly on as400 can query data , see readable text. can use iseries navigation tool , see readable text well.
however when bring down delphi client via hit oledb or hit odbc , try view via asstring see unreadable text.. this:
ñðð@ðõñððððñ÷@õôððõñòøóóöøñðÂÁÕÒ@ÖÆ@ÁÔÅÙÉÃÁ@@@@@@@@ÂÈÙÉâãæÁðòñè@Ôk@k@ÉÕÃk@@@@@@@@@ç
i jumbled text above, character types show up.
when did test in d2010 text looks japanse or chinese characters, if display ansistring looks in delphi 6.
i thinking may have code pages or character sets, have no experience in new me if related. when @ coded character set on as400 set 65535.
what need make text readable?
we have third party component (delphi400) makes things behave in more native as400 manner. when use as400 connection , as400 query components shows field tstringfield , displays fine. phasing out product (for number of reasons) , oledb ado components work.
just clarification hit oledb tadoquery have fields showing tstringfields many of other tables use... not sure why showing tbytesfield in case. not as400 expert, looking @ field definititions on as400 ones showing tbytesfield same ones showing tstringfields... there must difference. maybe due being multi-member?
so... have guidance on how correct string data readable?
if need more info please ask.
greg
one problem client doesn't know ought convert data ebcdic ascii because ccsid on server's table set incorrectly.
a ccsid of 65535 supposed mean field contains binary data. client doesn't know column contains ebcdic encoded string, , therefore doesn't try convert it.
on servers, of our character fields have ccsid of 37, ebcdic.
Comments
Post a Comment