DB2 graphic  QMF Version 8

Writing an edit routine in PL/I for native z/OS, TSO, or ISPF with language environment (LE)

The QMF edit exit interface for PL/I in TSO, ISPF, or native z/OS with LE consists of these parts:

Figure 74 shows the program structure of a PL/I edit exit routine in TSO, ISPF, or native z/OS.

Figure 74. Program structure of a PL/I edit exit routine with LE
QMF Main Module DSQQMF points to QMF Edit Exit Module DSQUEDIT  Entry: DBQUXILE via Call. QMF Edit Exit Module which contains IBM-supplied QMF Control  program DSQUXILE, and CEEPIPI User Edit Exit program DSQUXDT via Standard call to LE points  to QMF Main Module via Return.

How a PL/I Edit routine interacts with native z/OS, TSO, or ISPF with LE

The user edit program is called as an LE subroutine. The following parameters are provided in the indicated order:

  1. DXEECS
  2. Input data
  3. Output data

An example procedure statement specifying parameters is as follows:

DSQUXDT:
    PROCEDURE(DXEECSF,ECSINPTF,ECSRSLTF) OPTIONS(REENTRANT);
 

Compiling DSQUXDT

During the compile, QMF edit exit interface control block DXEECSP, located in QMF sample library QMF810.SDSQUSRE must be available in a macro library.

Compile the program with no STAE or SPIE macros. To do this, add the following statement to your PL/I program:

DCL PLIXOPT CHAR(15) VAR INIT('NOSTAE,NOSPIE') STATIC EXTERNAL;

Compile DSQUPLI with the MAIN option. Your edit exit program DSQUXDT must not specify MAIN.

Link-editing your program

Create a new QMF edit exit module DSQUEDIT by including your edit program DSQUXDT with the IBM-supplied control module DSQUXILE, located in the QMF module library QMF810.SDSQLOAD. The module DSQUXILE must be specified as the entry point.

The module DSQUEDIT can be executed in either 24-bit or 31- bit addressing mode. QMF runs in 31-bit addressing mode and automatically switches to 24-bit addressing mode if the edit exit module DSQUEDIT has a 24-bit addressing mode.

We recommend 31-bit addressing mode.

Example statements for compiling and link-editing

The following are example statements for assembling and link-editing your job for TSO or z/OS.

  //samPLI     JOB
  //STEP1      EXEC PLIXCL
  //* Provide Access to QMF Edit Macro DXEECSP
  //PLI.SYSLIB   DD  DSN=QMF810.SDSQUSRE,DISP=SHR
  //PLI.SYSIN    DD  *
            .
            Your program or copy of QMF sample DSQUXDTP
            .
 /*
 //* Provide Access to QMF & LE Interface Module
 //LKED.QMFLOAD  DD DSN=QMF810.SDSQLOAD,DISP=SHR
 //LKED.SYSLIB        DD DSN=SYS1.SCEELKED,DISP=SHR
  //LKED.SYSIN    DD  *
            INCLUDE QMFLOAD(DSQUXILE)
            ENTRY DSQUXILE
            MODE  AMODE(31) RMODE(ANY)
            NAME  DSQUEDIT(R)
  /*

Example program DSQUXDTP

The IBM-supplied example edit exit program in PL/I, named DSQUXDTP, is located in QMF sample library QMF810.SDSQSAPE. The example program is heavily commented; it can be browsed online, printed, or modified to meet your needs. If you plan to use the example program, copy it to your program library and change its name to DSQUXDT.


Go to the previous page Go to the next page

Downloads | Library | Support | Support Policy | Terms of use | Feedback
Copyright IBM Corporation 1982,2004 Copyright IBM Corporation 1982, 2004
timestamp Last updated: March, 2004