Cross Program Communication in z/OS - Course Objectives

On successful completion of this course, the student, with the aid of the appropriate reference materials, should be able to:

  1. Code calling and called programs using one or more of these LE-conforming compilers:
    1. IBM Enterprise COBOL
    2. XL C/C++ for z/OS
    3. IBM Enterprise PL/I
    4. or High Level Assembler language (HLASM)
  2. Define elementary and aggregate data types in all of the above languages
  3. Access JCL PARM data from a main program written in any of these languages, and set the JCL return code value; access the parm data from a subroutine written in any of these languages using the CEE3PRM or CEE3PR2 services
  4. Describe the general content of object modules in OBJ, XOBJ, and GOFF formats
  5. Call subroutines / external functions from each of these languages, statically and dynamically, passing elementary and aggregate data items, passing by reference, by content, and by value, and examining any returned value from the subroutine, as possible for each language
  6. Code subroutines in each of these languages, receiving data as it is passed and passing back a return value as appropriate and possible, with an objective of creating subroutines that can be called from programs written in any of the four languages discussed here
  7. Describe how argument lists are built and how parameter lists are received in all four languages
  8. Use the program binder to create load modules and program objects
  9. Create and use programs with multiple entry points
  10. Deal with variable numbers of arguments and parameters, as appropriate to each language, and setting and recognizing omitted parameters where possible
  11. Where possible, share external data items across programs, modules, and languages.


These Materials © Copyright 2012 by Steven H. Comstock

Materials version: V3.x


Course description
Topical Outline
LE curriculum
Home page