Fast/Unload invocation

From m204wiki
Revision as of 18:57, 12 September 2016 by JAL (talk | contribs) (misc formatting)
Jump to navigation Jump to search

Invoking Fast/Unload under z/OS

For versions of Fast/Unload through 4.7, the product is invoked as a standalone z/OS program. As of the next version after 4.7, numbered 7.7 to associate it to Model 204 version 7.7, the product is integrated with the Model 204 Online load module and invoked as part of the integrated load module.

Regardless of product version, Fast/Unload is invoked with the EXEC JCL card, and its program name as distributed is FUNLOAD:

// EXEC PGM=FUNLOAD

DD names

The following DD names are used by Fast/Unload:

  • FUNIN — This DD contains the statements used to describe the unload. FUNIN must be composed of fixed-length, 80-byte records.
  • FUNPRINT — This DD is used as a log file and for reporting errors. This DD is referred to as the report data set. No DCB information is required, but if supplied:
    • RECFM may be x[B][A], where x is F or V. If not specified, it defaults to VBA. ASCII carriage control (the A suffix) is always used.
    • LRECL defaults to either 133 (for RECFM F) or 137 (for RECFM V)
    • BLKSIZE defaults to 8192 (for RECFM F) or 8196 (for RECFM V)
  • destination — A DD is required for each of the sequential data sets (which must be unique) declared as an output stream to which records are to be unloaded. FUNOUT is the default output stream for FUEL programs written for versions prior to 4.1.
  • input — A DD statement is required for the input Model 204 data file. The DD statement for the Model 204 file must match the internal name of the data file. In addition, if a Model 204 data file is made up of multiple physical files, DD cards must be provided for all physical files making up the logical file.
  • SYSUDUMP or SYSMDUMP
    • Prior to version 7.7:

      It is recommended that you allocate either SYSUDUMP or SYSMDUMP to the Fast/Unload job step.

    • As of version 7.7:

      Do not use SYSUDUMP. SYSMDUMP is still useful.

As of the version 7.7 integration of Fast/Unload with the Online load module, these additional DD names can be used with PGM=FUNLOAD for possible problem diagnosis by Rocket Technical Support. They are not required.

  • CCASNAP — If Fast/Unload encounters an abend, a Model 204 snap is created and sent to the CCASNAP DD. Since this is key to diagnosing many problems, Fast/Unload ensures that the DD name is allocated (to SYSOUT=A) if it has not been provided.
  • CCAAUDIT — You can capture the normal Model 204 audit trail if you provide a CCAAUDIT DD. This is a small file (generally less than 100 records) and the information is usually not important, but it might be helpful for problem diagnosis.
  • CCAPRINT — You can capture the normal Model 204 file for initialization if you provide a CCAPRINT DD. This is a small file (generally less than 50 records) and the information is usually not important, but it might be helpful for problem diagnosis. You should be able to define this as a SYSOUT file.

Sample JCL

The following is an example of JCL that runs pre-7.7 Fast/Unload as a standalone program in a z/OS environment:

//FUNLOAD JOB (0),CLASS=C,MSGCLASS=A,NOTIFY=HOMER //FUNLOAD EXEC PGM=FUNLOAD,REGION=1024K //STEPLIB DD DSN=M204.FUNLOAD.LOAD,DISP=SHR //SYSUDUMP DD DSN=SYSOUT=* //SIRXREFD DD DSN=ULSPF.V404.SIRXREFD,DISP=SHR //FUNOUT DD UNIT=TAPE,VOL=SER=DUMP1, // LABEL=(1,SL),DISP=(NEW,PASS), // DSN=SIRXREFD.OUTPUT,DCB=BLKSIZE=30000 //FUNPRINT DD SYSOUT=* //FUNIN DD * OPEN SIRXREFD FOR EACH RECORD PUT '*' OUTPUT PAI END FOR //

The same JCL can be used for version 7.7 and later, except:

  • Change the load library. Use something like the following to reference the integrated Model 204 library:

    //STEPLIB DD DISP=SHR,DSN=M204.V77.LOADLIB

  • Consider using the additional optional 7.7 DD statements.

Invoking Fast/Unload as a standalone CMS program

Fast/Unload must be invoked by the Model 204 CMS interface because it uses the CMS interface's EXCP and BSAM simulation. The program name of Fast/Unload as distributed is FUNLOAD. A FILEDEF must be provided for any DD to be used by Fast/Unload.

Note: Because Fast/Unload uses the Model 204 CMS interface, any file can be on an OS format minidisk.

The following DDNAMEs are used by Fast/Unload:

  • FUNIN — This DD contains the FUEL used to describe the unload. FUNIN must be composed of fixed length, 80 byte records.
  • FUNPRINT — This DD will be used as a log file and for reporting errors. This DD will also be referred to as the report data set.
  • destination — A DD is required for each of the sequential data sets (which must be unique) declared as an output stream to which records are to be unloaded. FUNOUT is the default output stream for FUEL programs written for versions prior to 4.1.

A FILEDEF statement is also required for the input Model 204 data file. The FILEDEF statement for the Model 204 file must match the internal name of the data file. In addition, if a Model 204 data file is made up of multiple physical files, FILEDEF commands must be provided for all physical files making up the logical file.

The following is an example of an EXEC that runs Fast/Unload in a CMS environment. Note that while REXX is used here, the EXEC could be written in EXEC or EXEC2.

/* Exec to run Fast/Unload */ Address command; 'FILEDEF * CLEAR'; 'FILEDEF FUNIN DISK FUN FUNLOAD A'; 'FILEDEF FUNPRINT DISK FUN LISTING A', '(RECFM VB LRECL 137 BLOCK 4096'; 'FILEDEF FUNOUT TAP1 (LRECL 10000 BLOCK 30000 RECFM VB'; 'FILEDEF SIRXREFD I DSN ULSPF V404 SIRXREFD'; 'M204CMS FUNLOAD'; Exit rc;

Note: In the above example, the Fast/Unload Extraction Language program is in file FUN FUNLOAD on a CMS format disk, and the Model 204 data file SIRXREFD is on an OS-format minidisk.

See also