[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EBCDIC - AXCII translation issues



Hello Clive,

Let's review your DSPJOB output, which I found rather interesting:

On 5/10/2011 9:05 AM, Clive Johnson wrote:
> Language identifier . . . . . . . . . . . . . . . :   ENU
> Country or region identifier  . . . . . . . . . . :   GB
> Coded character set identifier  . . . . . . . . . :   65535
> Default coded character set identifier  . . . . . :   37

ENU means "English, United States". But GB means "Great Britain".  Sort 
of contradictory, isn't it?  Your Default CCSID is 37, which is the 
CCSID normally used in the United States.

Assuming that you are running HTTPAPI interactively, try typing the 
following before you run it (if HTTPAPI has already been activated, 
please reclaim the activation group, as well.)

CHGJOB LANGID(ENG)

Now when you type DSPJOB, opt 2 should show the default CCSID as 285 
(the EBCDIC normally used in the UK) and when you run HTTPAPI, it should 
translate properly.

If I'm right, and the translation works properly, then the proper 
permanent fix would be to type:

CHGSYSVAL SYSVAL(QLANGID) VALUE(ENG)


>
> Before translation the [ (open square bracket) character is X'B1'
> Following translation the character is X'A3'
>

Here's a chart that shows the mapping of hex values to characters for 
CCSID 37 (which is what your DSPJOB shows that you are using):

ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/CP00037.pdf

You'll note that on that chart, x'B1' is the symbol for pounds 
sterling...  Take a look at the CCSID 285 (UK English) chart:

ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/CP00285.pdf

On that chart, you'll see that x'B1' is indeed the [ character.


So here's my hypothesis:
-- You have a UK 5250 terminal. The [ key registers as x'B1'
-- You have QCCSID=65535, so no translation is done.  The
      x'B1' gets entered into your files/source members
      unchanged.
-- Your system is configured with QLANGID=ENU.  So it thinks
      x'B1' is actually the symbol for pounds sterling.
-- When a screen displays the x'B1', it is passed to your
      terminal unchanged (again, due to QCCSID=65535) so
      the terminal displays x'B1' as [ again.
-- But programs think the x'B1' is actually pounds sterling,
      so when translated to ASCII it gets converted to the
      pounds symbol in ASCII as well.

Hope that makes sense.

-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------