MainframeSupports
tip week 27/2009:

Back in week 25/2007 I wrote that it is possible to replace the dataset name on a TSO CALL with a * which makes the CALL command work in the same manner as EXEC PGM= does in JCL. This tip is a more in depth description of this feature.

The TSO command CALL has been enhanced and now it is possible to use TSO CALL *(MYPGM). The description of what this means is rather unclear, but it works just as EXEC PGM= does. Try and use TSO CALL *(IEFBR14). This command will execute IEFBR14 (rather harmless) and you do not have to know that IEFBR14 is located in SYS1.LINKLIB. When using CALL *(MYPGM) then TSO will look for MYPGM in STEPLIB and then in JOBLIB and at last in the LINKLIST in precisely the same manner as EXEC PGM= does. And on top of that CALL *(MYPGM) looks in ISPLLIB and other tasklibs allocated to TSO.

Another important thing is that TSO CALL always executes the load module from the dataset. This ensures that you always executes the newest version of the load module even when the first call to the load module in your TSO session was for a previous version. For instance a dynamic COBOL CALL will always execute the copy in storage and not necessarily the newest version. This is the same problem as you might be familiar with from CICS where you have to perform a newcopy before you are able to execute the newest version. This problem does not exist with TSO CALL.

Previous tip in english        Sidste danske tip        Tip list