PDA

View Full Version : Special Characters dont work



Guest.Visitor
01-01-1995, 02:00 AM
I have an application that runs with a 5250 session, and we also have that application running on Windows 95/NT. But we have a problem the special characters like "é" (Hex Code 51) or "ò" (Hex Code ED) that apper in the 5250 session dont apper in the window session, instead it appears wird characters s like "ü", or "ö". Does anyone have an idea ? Thanks, Silvio.

Guest.Visitor
03-12-1999, 09:07 AM
On Friday, March 12, 1999, 08:53 AM, Sílvio Santos wrote: I have an application that runs with a 5250 session, and we also have that application running on Windows 95/NT. But we have a problem the special characters like "é" (Hex Code 51) or "ò" (Hex Code ED) that apper in the 5250 session dont apper in the window session, instead it appears wird characters s like "ü", or "ö". Does anyone have an idea ? Thanks, Silvio. Silvio, I don't know what is causing your error, but about 15 years ago I wrote the following program to diagnose a similar problem. I converted it to ILE and added comments so that you wouldn't think you were in a Twilight Zone episode. It has been very useful when I changed device types, character sets, etc. It just displays the available character set. David Morris <pre> ************************************************** ************************ * CRTBNDRPG SRCFILE(&L/&F) SRCMBR(&M) PGM(&L/&M) DBGVIEW(*SOURCE) * ************************************************** ************************ H OPTION(*SRCSTMT) ********************* * QCMDExc prototype * ********************* DQCmdExc PR EXTPGM('QCMDEXC') D PR_CmdStr 32767A CONST OPTIONS(*VARSIZE) D PR_CmdStrLen 15P 5 CONST ************************ * Conversion data area * ************************ D DS D Bin 1 2B 0 INZ(*ZEROS) D Char 2 2 ******************* * Local data area * ******************* DLDA UDS 256 DTAARA(*LDA) DSavLDA S LIKE(LDA) *********************** * Display LDA command * *********************** DDspLDA C CONST('DSPDTAARA *LDA OUTFMT(*HEX)') C EVAL SavLDA = LDA C* Generate characters x'01' - x'FF' in LDA. C 0 DO 255 Bin C EVAL %SUBST(LDA: Bin + 1: 1) = Char C END C* Write out and display LDA C OUT LDA C CALLP(E) QCmdExc(DspLda: %LEN(DspLDA)) C EVAL LDA = SavLDA C SETON LR </pre>

Guest.Visitor
03-16-1999, 09:06 AM
Ensure proper CHRID settings of your device and display file... Regards, Chuck Comments provided "as is" with no warranties of any kind whatsoever.

Guest.Visitor
03-20-1999, 12:11 PM
Besides the CHRID parameter Chuck mentioned, you should just re-verify the CCSIDs/CodePages in use on the AS/400 and the NT workstation for translations. Generally these types of character conversion misses are due to configuration errors but are difficult to diagnose without more information (for instance is the AS/400 using CCSID 273, 500, or 37; and the NT for 1252, 819, or 850; or something else entirely?).