Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Output of a file to tape with simultaneous code conversion

&pagelevel(3)&pagelevel

Input: ISAM file PERS.TAB

Printout of the input file PERS.TAB
00000000 | BELL      | JOHN     | MANCHESTER | BOLSOVER STREET 4     | DPT1 |
00000001 | BOTHAM    | NORMAN   | MANCHESTER | TOWER AVENUE 10       | DPT2 |
00000002 | FINN      | SUSANNA  | NORWICH    | ROSE STREET 11        | DPT2 |
00000003 | GREENE    | WALTER   | BURY       | SINCLAIR CRESCENT 7   | DPT1 |
00000004 | KING      | MONICA   | FALMOUTH   | INMAN SQUARE 61       | DPT3 |
00000005 | LAKER     | ERICA    | MANCHESTER | BANK DRIVE 8          | DPT1 |
00000006 | PRICE     | ALFRED   | MANCHESTER | THAMES ROAD 4         | DPT1 |
00000007 | WILSON    | RICHARD  | MANCHESTER | ACACIA AVENUE 24      | DPT3 |
00000008 | BATES     | FRANK    | HULL       | WOOD STREET 29        | DPT4 |
00000009 | HARRISON  | MAURICE  | MANCHESTER | SINCLAIR STREET 149   | DPT4 |
00000010 | ROYCE     | ROBERT   | MANCHESTER | LION'S GATE 74        | DPT4 |
00000011 | SIMPSON   | ELLEN    | KINGS LYNN | WILLOUGHBY STREET 8   | DPT4 |

Output: SAM file PERS.CONV with converted code

Conversion table

This table is generated as an Assembler source program using definitions of constants and compiled using the assembler.

TRANS    START 
TRANS    AMODE ANY 
TRANS    RMODE ANY 
         DC    X'000102030405060708090A0B0C0D0E0F' 
         DC    X'101112131415161718191A1B1C1D1E1F' 
         DC    X'202122232425262728292A2B2C2D2E2F' 
         DC    X'303132333435363738393A3B3C3D3E3F' 
         DC    X'404142434445464748494A4B4C4D4E5C' 
         DC    X'505152535455565758595A5B4F5D5E5F' 
         DC    X'606162636465666768696A6B6C6D6E6F' 
         DC    X'707172737475767778797A7B7C7D7E7F' 
         DC    X'808182838485868788898A8B8C8D8E8F' 
         DC    X'909192939495969798999A9B9C9D9E9F' 
         DC    X'A0A1A2A3A4A5A6A7A8A9AAABACADAEAF' 
         DC    X'B0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF' 
         DC    X'C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF' 
         DC    X'D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF' 
         DC    X'E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF' 
         DC    X'F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF' 
         END   TRANS

The object module TRANS is the translation of the table. It is entered in an object module library (TRANS.LIB) created with LMS. PERCON accesses object module TRANS as a member of the TRANS.LIB library and uses TRANS as a code conversion table. Prior to the PERCON call, library TRANS.LIB must therefore have been specified (assigned) as TASKLIB for the operating system.

Tracer listing:

/SET-TASKLIB LIBRARY=TRANS.LIB —————————————————————————————————————————  (1)
/CREATE-FILE FILE-NAME=PERS.CONV,- —————————————————————————————————————  (2)
/            SUPPORT=*TAPE(VOLUME=FK0090,DEVICE-TYPE=TAPE-C4)
/ADD-FILE-LINK FILE-NAME=PERS.CONV,-
/              LINK-NAME=OUT,-
/              SUPPORT=*TAPE,-
/              ACCESS-METHOD=*SAM,-
/              BUFFER-LENGTH=2048
/START-PERCON —————————————————————————————————————————————————————————  (3)
%  PER0000 PERCON STARTED, VERSION V03.0A00
//ASSIGN-INPUT-FILE FILE=*DISK-FILE(NAME=PERS.TAB) ————————————————————  (4)
//ASSIGN-OUTPUT-FILE FILE=*TAPE-FILE(NAME=PERS.CONV,-——————————————————  (5)
//                                   CODE-TRANSLATION=*MODULE(NAME=TRANS)),-
//                   LINK-NAME=OUT
//END —————————————————————————————————————————————————————————————————  (6)
%  DMS0DE3 TAPE WITH VSN FK0090 FOR FILE :catid:$userid.PERS.TAB IS ———  (7)
           MOUNTED ON DEVICE AF
%  DMS0DE7 SAM FILE CLOSED: FILE NAME=:catid:$userid.PERS.CONV,
           LINKNAME=OUT, BLOCK COUNT=000001 ———————————————————————————  (8)
%  PER0030 NUMBER OF PROCESSED RECORDS FOR LINK=PCIN (FILE=PERS.TAB):   12 (9)
%  PER0030 NUMBER OF PROCESSED RECORDS FOR LINK=OUT (FILE=PERS.CONV):   12
% PER0031 PERCON TERMINATED NORMALLY —————————————————————————————————— (10)

(1)

The library TRANS.LIB is assigned as TASKLIB. This library contains the code conversion table TRANS as an object module.

(2)

The output file PERS.CONV is assigned with its file attributes.

(3)

PERCON is called.

(4)

The input file PERS.TAB is assigned.

(5)

The output file PERS.CONV is assigned. CODE-TRANSLATION= *MODULE(NAME=TRANS) means that the code conversion table to be used to write the output file is located in object module TRANS (module name).

(6)

The END statement starts the transfer operation and terminates PERCON.

(7)

DMS message: the tape has been mounted for the output file PERS.CONV.

(8)

PERCON messages: the number of records transferred per file is output. The files are listed with their link and file names.

(9)

DMS message: the SAM file PERS.CONV has been closed.

(10)

PERCON was terminated normally.

Printout of the output file PERS.CONV
00000000 * BELL      * JOHN     * MANCHESTER * BOLSOVER STREET 4     * DPT1 *
00000001 * BOTHAM    * NORMAN   * MANCHESTER * TOWER AVENUE 10       * DPT2 *
00000002 * FINN      * SUSANNA  * NORWICH    * ROSE STREET 11        * DPT2 *
00000003 * GREENE    * WALTER   * BURY       * SINCLAIR CRESCENT 7   * DPT1 *
00000004 * KING      * MONICA   * FALMOUTH   * INMAN SQUARE 61       * DPT3 *
00000005 * LAKER     * ERICA    * MANCHESTER * BANK DRIVE 8          * DPT1 *
00000006 * PRICE     * ALFRED   * MANCHESTER * THAMES ROAD 4         * DPT1 *
00000007 * WILSON    * RICHARD  * MANCHESTER * ACACIA AVENUE 24      * DPT3 *
00000008 * BATES     * FRANK    * HULL       * WOOD STREET 29        * DPT4 *
00000009 * HARRISON  * MAURICE  * MANCHESTER * SINCLAIR STREET 149   * DPT4 *
00000010 * ROYCE     * ROBERT   * MANCHESTER * LION'S GATE 74        * DPT4 *
00000011 * SIMPSON   * ELLEN    * KINGS LYNN * WILLOUGHBY STREET 8   * DPT4 *