CALL statement

The CALL control statement has two parts: CALL FUNCTION and CALL DATA.

  • The CALL FUNCTION statement supplies the DL/I call function, the segment search arguments (SSAs), and the number of times to repeat the call. SSAs are coded according to IMS™ standards.
  • With the CALL DATA statement you provide any data (database segments, z/OS® commands, checkpoint IDs) required by the DL/I call specified in the CALL FUNCTION statement.

Examples of DFSDDLT0 call functions

STAK/END Call: The following example shows the STAK and END call functions.

//BATCH.SYSIN DD *                                                      10000700
|---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----<
O SNAP= ,ABORT=0                                                        10000800
S 1 1 1 1 1                                                             10001000
L        GU    SEGA    (KEYA     =A300)                                 10001100
L   0003 STAK                                                           10001150
WTO THIS IS PART OF THE STAK                                            10001200
T THIS COMMENT IS PART OF THE STAK                                      10001300
L        GN                                                             10001400
L        END                                                            10001450
U THIS COMMENT SHOULD GET PRINTED AFTER THE STAK IS DONE 3 TIMES        10001500
L   0020 GN                                                             10001600
/*

SKIP/START Call: The following example demonstrates the use of the SKIP and START call functions in SYSIN2 to override and stop the processing of the STAK and END call functions in SYSIN. DFSDDLT0 executes the GU call function in SYSIN, skips the processing of STACK, WTO, T comment, GN, and END in SYSIN, and goes to the COMMENT.

//BATCH.SYSIN DD *                                                      10000700
|---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----<
O SNAP= ,ABORT=0                                                        10000800
S 1 1 1 1 1                                                             10001000
L        GU    SEGA    (KEYA     =A300)                                 10001100
L   0003 STAK                                                           10001150
WTO THIS IS PART OF THE STAK                                            10001200
T THIS COMMENT IS PART OF THE STAK                                      10001300
L        GN                                                             10001400
L        END                                                            10001450
U THIS COMMENT SHOULD GET PRINTED AFTER THE STAK IS DONE 3 TIMES        10001500
L   0020 GN                                                             10001600
/*
//BATCH.SYSIN2 DD *
|---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----<
L        SKIP                                                           10001150
L        START                                                          10001450
U THIS COMMENT SHOULD REPLACE THE STAK COMMENT                          10001500
U ********THIS COMMENT SHOULD GET PRINTED BECAUSE OF SYSIN2*********    10001650
/*