Over on the TSO-REXX list there's discussion of how to put REXX code
inline in JCL.  It occurred to me that BatchPipeWorks installations
would have a trivial method for very short programs:

  //TRYPIPE  EXEC PGM=IKJEFT01
  //SYSTSPRT DD SYSOUT=*
  //SYSTSIN  DD *
  PIPE literal /**/Say 'SAY output';output 'CONS output'|rexx *:|cons
  /*

But the output took me by surprise.  The left-hand column of the REXX
terminal output is chopped off:

  AY output
  CONS output

What's going on here?  At the console, with SYSTSPRT allocated to
TERMFILE, the same pipeline gives me the expected output.  (REXX trace
output is also shifted left in batch, but REXX error messages are not.)

When I allocate SYSTSPRT to a data set, it gets even weirder.  In batch,
*none* of the REXX output (SAY, trace, or messages) goes there.  In an
interactive session, *only* the REXX output goes there.  (Hmm, is that a
matter of different record formats and which output happens to be
written first, since the batch session starts with a READY message?)

¬R

Reply via email to