Non-English Keyboards

If you use a client that has a non-English keyboard, you probably have some external files that contain non-English characters. If your server runs under the z/OS operating environment, some specially accented characters might be translated incorrectly when you use the DOWNLOAD and UPLOAD procedures. This occurs because of the default translations from ASCII to EBCDIC and from EBCDIC to ASCII. To solve the problem, you can do one of the following:
  • If SAS/CONNECT is used frequently, you should use an alternate EBCDIC to ASCII translation table (TRANTAB=) on the server. The SAS Support Consultant for the server should create the alternate table.
  • If SAS/CONNECT is not used frequently, you can manage problematic characters by assigning the correct hexadecimal values in DATA step programming statements after the file is copied.
    For example, suppose you have a German keyboard and a z/OS operating environment. You want a file to contain A-umlaut characters after an upload. By default, the ASCII representation of A-umlaut, which is X'84', is translated to EBCDIC X'24'. However, the EBCDIC representation of A-umlaut is X'C0', so you need to translate EBCDIC X'24' to EBCDIC X'C0'. The following DATA step, in which NAME is a variable that contains A-umlaut characters, performs this translation:
    data new;
       set old;
       retain to 'C0'x from '24'x;
       drop to from;
       name=translate(name,to,from);
    run;