OFFLOAD

OFFLOAD will process a Partitioned Dataset as input and extract the contents of the members to a sequential output dataset.  Members may be selected for processing by the use of SELECT control cards or excluded from selection by the use of EXCLUDE control cards.  The contents of members selected for processing may have IEBUPDTE ./ ADD control cards written preceding them on the output dataset by the use of a control card option.

This utility was written by David Cole of Cole Software (known more recently for his XDC product).  I extracted this version from Jim Marshall's collection of utilities in file #316 of the older version 249 CBT tape.  

 

Installation

In order to assemble OFFLOAD, in addition to the source, several macros are required.  They are contained in file #408 of the CBT249 tape.  I have placed the required macros in front of the source in order to make a single jobstream install.  That jobstream - offload$.jcl - is contained in the archive offload.tgz [MD5: 9CB417424662ADC44BE3984A66DB006B].  Download the archive and extract the jobstream (WinZip on Windows/?? or tar on Linux).  Submit the jobstream - offload$.jcl - to assemble and link the single load module for OFFLOAD into SYS2.LINKLIB.  If you don't have SYS2.LINKLIB defined, you will need to modify the jobstream to specify a different target load library for your system.

 

Executing OFFLOAD

Here is an example jobstream for executing OFFLOAD: 

//OFFLOAD JOB (001),'OFFLOAD PDS',CLASS=A 
//OFFLOAD EXEC PGM=OFFLOAD,REGION=256K 
//SYSPRINT DD SYSOUT=* 
//PDS      DD DSN=SYSP.MACROS,DISP=SHR 
//SEQ      DD DSN=SYSP.MACROS.UNLOAD,DISP=(,KEEP),UNIT=(TAPE,,DEFER),
//            LABEL=(1,SL),DCB=(RECFM=FB,LRECL=80,BLKSIZE=5600)
//SYSIN    DD *
  O I=PDS,O=SEQ,T=IEBUPDTE
  E M=RINSTAL$ 
//

There are three control cards, of which two are completely optional.  

The required OFFLOAD control card provides the DD Name for the Partitioned Dataset to be processed, the DD Name for the sequential dataset to contain the offloaded members, and an option to trigger the writing of IEBUPDTE control cards.  This control card is identified by the letter O.  The DD Name for the input PDS is provided by the value given in the I= operand.  The DD Name for the output sequential dataset is provided by the value given in the O= operand.  If you include the operand T=IEBUPDTE, IEBUPDTE ./ ADD control cards will be written before each member on the output dataset.  If the program detects IEBUPDTE control cards in the member of the PDS, the './' identifiers of the member records are altered to '><'.  

If you wish to select one or more specific members from the input PDS, you may use SELECT card(s) following the OFFLOAD control card.  The SELECT cards are identified by the letter S.  The member names are provided by the value given in the M= operand.  This is the same format as the SELECT card used for the IEBCOPY utility.

Conversely, you may EXCLUDE specific members from the input dataset, allowing all members not contained in EXCLUDE control cards to be offloaded.  The EXCLUDE cards are identified by the letter E.  The member names are provided by the value given in the M= operand.  Again, this is the same format as the EXCLUDE card used for the IEBCOPY utility.


I hope that you have found my instructions useful.  If you have questions that I can answer to help expand upon my explanations and examples shown here, please don't hesitate to send them to me:


Return to Site Home Page 


This page was last updated on January 17, 2015 .