A little more than one and a half year ago I wrote a tip about how to make your own SDSF. Meanwhile I have discovered a fantastic command in SDSF called COLSHELP. This command can display the names of the REXX stem variables in which the contents of the different columns are placed. When you execute COLSHELP the panel displayed looks similar to this:
Columns on SDSF Panels Row 1330 from 1434 Command ===> Sort with F5 (panel), F6 (column), F10 (title). Use Filter to filter rows. All panels Descriptions Panel Column Title Delayed? Overtype? ST EXECNODE ExecNode JES2 ST DEVID Device ST RETCODE Max-RC ST SRVCLS SrvClass X ST WLMPOS WPos ST SCHENV Scheduling-Env JES2 ST DELAY Dly ST SSMODE Mode ST PHASENAME PhaseName ST PHASE Phase ST ROOMN RNum X ST PNAME Programmer-Name X ST ACCTN Acct X ST NOTIFY Notify X
The display is context sensitive and the above output is the result of executing COLSHELP on the ST display (Panel ST). The list of columns/stem-variables is thus dependent of where you execute COLSHELP. If you want to use the Max-RC column in you SDSF REXX, you should use the stem-variable RETCODE. Well there is hardly any excuse left to avoid building your own SDSF ;o)
Please note the column Delayed? If the column you want to use in your REXX has an X in the Delayed? column, your ISFEXEC command needs an extra parameter:
ADDRESS SDSF "ISFEXEC ST (DELAYED)"
You should append (DELAYED) after the name of the panel you want to pick data from. This parameter will also make your call to SDSF even more resource consuming, because it forces SDSF to make one more I/O for each row that the SDSF command returns to your REXX.