Try too sick to want to do it at the time. I didn't know that you had
become a Unix bigot.


-----Original Message-----
From: The IBM z/VM Operating System [mailto:[EMAIL PROTECTED] On
Behalf Of Kris Buelens
Sent: Friday, December 15, 2006 12:33 AM
To: IBMVM@LISTSERV.UARK.EDU
Subject: Re: COMMAND vs. CMS

On Fri, 15 Dec 2006 00:13:43 -0500, Rick Troth <[EMAIL PROTECTED]> wrote:

>Do you have a COMMAND REXX in the mix intercepting the built-in?
>
>-- R;
Sorry Rick, but when you code 'xxx' as stage PIPE first looks for a
built= -in stage, only if not found, it looks for "xxx REXX".

As Richard was too lazy/didn't understand/didn't dare/ ... I ran a
series=  of commands to show the use of CMDCALL with SFS.  It also
proves that DELETE=

USER works perfectly well from under the COMMAND stage.  You truly NEED
t= he CMDCALL prefix to find out what goes wrong with SFS commands.

 ENRoll user TEST
 Ready KRIS at VMKBBR01 ; T=0.01/0.01 08:25:09  ENRoll user TEST
DMSJEN1166E Userid TEST is already enrolled  Ready KRIS at VMKBBR01
(00040); T=0.01/0.01 08:25:41  PIPE COMMAND ENROLL USER TEST!CONS  Ready
KRIS at VMKBBR01 (00040); T=0.01/0.01 08:25:49  PIPE COMMAND CMDCALL
ENROLL USER TEST!CONS  DMSJEN1166E Userid TEST is already enrolled
Ready KRIS at VMKBBR01 (00040); T=0.01/0.01 08:25:56

 delete user TEST2 (Noconf
 Deleted USERs:
 TEST2
 DMSJDE1224W One or more userids were not enrolled as USERs  Ready KRIS
at VMKBBR01 (00004); T=0.01/0.01 08:27:15  PIPE COMMAND DELETE USER
TEST2 (NOCONF!CONS  Deleted USERs:
 TEST2
 Ready KRIS at VMKBBR01 (00004); T=0.01/0.01 08:27:29  PIPE COMMAND
CMDCALL DELETE USER TEST2 (NOCONF!CONS  Deleted USERs:
 TEST2
 DMSJDE1224W One or more userids were not enrolled as USERs  Ready KRIS
at VMKBBR01 (00004); T=0.01/0.01 08:27:46  PIPE COMMAND CMDCALL DELETE
USER TEST (NOCONF!CONS  Deleted USERs:
 TEST
 Ready KRIS at VMKBBR01 ; T=0.01/0.01 08:28:26

In EXECs I often use constructs like this when dealing with SFS
commands:=

    'PIPE COMMAND CMDCALL LISTDIR' JobDirid '(NOSUB',  
       '!VAR EMSG!DROP!CHOP 1!Var fm'            =
      
    select                     =
                        
     when rc=28 then jobmode='-'             =
          
     when rc<>0 then call ErrExit rc,emsg           =
   
     otherwise /* Job found.  Access dirid */          =

      if fm='-' then do                =
                
         Call CSL 'DMSGETFM RC REAS jobmode'          =
 
Key points are CMDCALL and VAR EMSG!DROP.  Because with CMDCALL you not
o= nly get error messages but also headers appear.  In general -with
CMDCALL- th= e first line is either an error message, either a
headerline.

CMDCALL can also help the lazy ones.  Everyone should know that decent
ex= ecs run with ADDRESS COMMAND.  As a result, STAE for example doesn't
produce error messages.  Sometimes though STATE's error message is
usefull for la= zy
programmers:
  Not so lazy
    'STATE' inputfile
    if rc<>0 then do
        say 'Input file "'inputfile'" not found'; exit rc; end
  Lazy, but more, extact, error information is displayed
    'CMDCALL STATE' inputfile
    if rc<>0 then exit rc

All this is explained in great detail in both "telecourses" Guy De
Ceulae= r and I produced.  
Advanced REXX:
  http://www.vm.ibm.com/download/packages/descript.cgi?TCVM1
  (look for Lesson1, Chapter 3)
Pipelines:
  http://www.vm.ibm.com/download/packages/descript.cgi?TCVM
  (look for Lesson2, Chapter 3)

Yours Knigth of VM,
Kris Buelens

Reply via email to