As has been mentioned partially: DESBUF may not be wise.
DESBUF does not only remove all lines stacked from keyboard (the "terminal
input buffer"), and those stacked by programs (the "program stack"), but
also clears the "terminal output buffer". Everything to send to the
console (in linemode) is first placed in the terminal output buffer.
Somewhat later, CMS writes the lines out (I don't know what triggers
this). So, if the SAY from rexx is still stacked when DESBUF is executed,
it will never appear on the screen.
If you need a DESBUF, place a CONWAIT before it: it asks CMS to flush the
terminal output buffer to the screen.
Most of the time however, you don't need DESBUF:
DROPBUF 0 removes all lines from the program stack. But, as already
mentioned, EXECs should not simply remove lines stacked by other execs,
you better use MAKEBUF and DROPBUF. For example:
'MAKEBUF' /* Make a new entrypoint in the program stack */
oq=queued() /* How many lines are already in the program stack */
'LISTFILE * EXEC A(STACK'
do queued()-oq /* read only the lines we stacked */
parse pull fn ft fm
end
'DROPBUF' /* Remove the new entrypoint in the stack */
Anyhow, even that is oldfashioned: since we've got CMS Pipelines using the
stack is most of the time no longer required.
Kris,
IBM Belgium, VM customer support
The IBM z/VM Operating System <[email protected]> wrote on
2006-12-11 15:52:54:
> Hi again!
>
> ...
> /* */
> 'SET IMSG OFF'
> 'SET EMSG OFF'
> 'ERASE INFO SAVE A'
> trace off
> trace O
> say 'Link to the DB save disk running, Please WAIT'
> /*QSQLDMK1 = ' QSQLDMK1 Pas de sauvegarde'*/
> 'LISTFILE SAVE LINK A (ALL STACK'
> Parse Pull . . . . . nb .
> 'DESBUF'
> Do K=1 to nb
> 'EXECIO 1 DISKR SAVE LINK A'
> Parse Pull server dsk .
> say 'Im here right now'
> ---------------------------------------
> I dont get back the line i inserted between the lines. So the Parse
> Pull may be wrong. (I tried to paste the say line to other places
> too, so i KNOW the problem is
> with Parse Pull or EXECIO). But why?
>
> Can you help me?
>
> Zoltan