Skip to main content

MFE Drag and Drop ASCII to EBCDIC Conversion Issue

  • February 15, 2013
  • 0 replies
  • 0 views

Problem:

In Mainframe Express Drag and Drop, we found that vertical bar is not the same for a Working Storage field as it was on the mainframe. We have a field like this:

05 WS-PIPE         PIC X(08) VALUE '||||||||'.

This was done using Shift Backslash.

When we do this on the mainframe, the Hex value is X'6A':

---------------------

000001  ¦¦¦¦¦¦¦¦¦¦¦XXX

        66666666666EEE

        AAAAAAAAAAA777

However, when we Drag & Drop the PC file to the mainframe, the Hex Value is X'4F'.

Resolution:

  This is a codepage problem and a difference between the host z/OS and PC Windows environments. The host uses two vertical bars, a x'4F' and a x'6A', the first being a solid vertical bar and the second being a broken vertical bar.

There are several symbols that appear on the mainframe keyboard and not on the PC keyboard (and vice versa). The ones we see most often are the vertical bars (broken and solid), the NOT symbol on the host, the caret on the PC and the cent sign (rarely used).

The z/OS host uses a x'4F' for a solid vertical bar, but it uses a x'6A' for the broken vertical bar. So if you want a solid vertical bar (the pipe symbol for C, PL/I or a SQL statement), then the PC value must be a x'7C'. The hex value for a broken vertical bar on the PC is a x'A6' which gets translated to a x'6A' when uploaded to the host.

We have a table of values in the install CNTL PDS for MFA (Mainframe Access) under the member MFANLS. It was used some time ago and lists translation values, but we now default to use the host or workstation. See the Drag & Drop option under Configure>Environment, the 'use codepage' selection.

We suggest using 'workstation' or 'mainframe' and see if that helps with any character differences.

Old KB# 2551

#MFDS
#EnterpriseDeveloper