Should you not be using TSO SEND?
 
Here is a Clist version, invoked in batch.
 
 MEMBER NAME  TSOSEND
 // <Job card etc.>
 //*********************************************************************
 //* NOTE: NO LINE NUMBERS IN COLS 73-80 ALLOWED, ELSE CLIST FAILS!    *
 //* ¯¯¯¯¯                                                             *
 //*********************************************************************
 //* NOTE: 'U' => TSO USERID(S); SPECIFY LIST OF USERIDS UNDER DESTIDS *
 //* ¯¯¯¯¯ 'C' -> CONSOLE; SPECIFY MASTER ETC. UNDER CONSIDS           *
 //*                                                                   *
 //* 04/01/95 CMP                                                      *
 //*********************************************************************
 //*
 //CLIST   EXEC PGM=IKJEFT01,
 //             REGION=512K,
 //*           PARM='%TSOSEND DESTIDS SYSIN USERID'
 //            PARM='%TSOSEND CONSIDS SYSIN CONSOLE'
 //*
 //SYSPROC  DD  DISP=SHR,DSN=<Clist PDS DSN>
 //SYSTSIN  DD  DUMMY
 //SYSTSPRT DD  SYSOUT=*
 //CONSIDS  DD  *
 <console IDs, if any>
 //*
 //DESTIDS  DD  *
 <user IDs, if any>
 //SYSIN    DD  *
 <whatever message to send line #1>
 <whatever message to send line #2>
 <etc.>
 //*
 //
 
 MEMBER NAME  TSOSEND
 PROC 2 DESTLIST MESSAGE DEBUG USERID CONSOLE
 /*-------------------------------------------------------------------*/
 /* N.B. DEFAULT IS 'NOW'                                             */
 /* 'LOGON' -> 'NOW' IF LOGGED ON, ELSE AT LOGON TIME.                */
 /* 'SAVE' -> ONLY AT NEXT LOGON TIME (OR LISTBC)                     */
 /*                                                                   */
 /* PARMS: DESTLIST DDNAME OF USERS/CONSOLES TO WHOM MESSAGE IS TO    */
 /*                 BE SENT - DEFAULT=NONE                            */
 /*        MESSAGE: DDNAME OF MESSAGE TEXT TO BE SENT - DEFAULT=NONE  */
 /*        DEBUG:   SETS TRACE ON - DEFAULT=OFF                       */
 /*                                                                   */
 /* 13/12/94 CMP - ALLOW SENDING TO USERID(S) OR TO MVS CONSOLE(S)    */
 /* 17/04/89 CMP                                                      */
 /*-------------------------------------------------------------------*/
 CONTROL: +
   CONTROL END(ENDO)
   IF &DEBUG = DEBUG | &DEBUG = D THEN +
     CONTROL LIST SYMLIST CONLIST MSG ASIS
   ELSE +
     CONTROL NOLIST NOSYMLIST NOCONLIST NOMSG ASIS
 ERROR: +
 ERROR DO                                                               
   SET CC = &LASTCC                                                     
   IF &CC = 400 THEN RETURN                                             
   ELSE DO                                                              
   WRITE ERROR WITH CONDITION CODE = &CC OCCURRED : INTERRUPT AT LABEL +
         'ERROR'
   WRITE CLIST RUN ABANDONNED
   GOTO EXIT
   ENDO
   ENDO                                                                 

 IF &USERID ¬= THEN SET TO = USER
 ELSE IF &CONSOLE ¬= THEN SET TO = CN
 ELSE +
 WHERE: +
   DO
   WRITE YOU MUST SPECIFY PARAMETER 'USERID' OR 'CONSOLE'
   WRITE
   GOTO EXIT
   ENDO WHERE

 SET SENDTO =
 SET K = &&K
 SET USREC  = &&&DESTLIST
 SET MSGREC = &&&MESSAGE
 SET MAXCC = 0
 OPENFILE &DESTLIST INPUT
 GETFILE &DESTLIST
 DO I = 0 TO 99 WHILE &MAXCC = 0
   SET USER = &USREC
   SET J = &SYSINDEX(&STR( ),&USER,1)
   SET J = &J - 1
   SET USER = &SUBSTR(1:&J,&USER)
   SET SENDTO = &STR(&SENDTO&USER,)
   GETFILE &DESTLIST
   ENDO
 CLOSFILE &DESTLIST
 IF &I > 0 THEN +
   DO
   SET LSENDTO = &LENGTH(&STR(&SENDTO)) - 1
   SET SENDTO = &SUBSTR(1:&LSENDTO,&STR(&SENDTO))
   SET MSG = &&MSG
   SET MAXCC = 0
   OPENFILE &MESSAGE INPUT
   GETFILE &MESSAGE
   DO J = 1 TO 99 WHILE &MAXCC = 0
     SET MSG&J = &SUBSTR(1:71,&MSGREC)
     SET K0 = 1
     DO I = 1 TO 99 WHILE &K&EVAL(&I-1) > 0
       SET K&I = &SYSINDEX(&STR('),&STR(&MSG&J),&K&EVAL(&I-1))
       IF &K&I > 0 THEN SET K&I = &K&I + 1
       ENDO
     DO L = &I-2 TO 1 BY -1 WHILE &K&L > 0
       SET MSG&J = &SUBSTR(1:&K&L-1,&STR(&MSG&J))&STR(')+
                   &SUBSTR(&K&L:&LENGTH(&STR(&MSG&J)),&STR(&MSG&J))
       ENDO
     GETFILE &MESSAGE
     ENDO
   SET J = &J - 1
   DO I = 1 TO &J
     SEND '&MSG&I' +
     &TO(&STR(&SENDTO)) LOGON
     ENDO
   ENDO
 EXIT: +
 EXIT CODE(0)
 
Cheers, CP
 


On 08/06/2018 11:36, saurabh khandelwal wrote:
> Hello Group,
>
> In this below REXX,  I want to send message only to operator AG54 but, not
> sure why this send command sending message to all users in system , not
> only AG54.
>
> I checked syntax for this send command but result is same,
>
>
>
>
>
> EDIT       NETVIEW.CNMCLST(FAIREXX1) - 01.14
>
> ****** ***************************** Top of Data ********
>
> 000100 /*  REXX     */
>
> 000120 parse arg mtxt . mtxt
>
> 000240 say 'AG54LST Job STARTED at' mtxt
>
> 000500 mvs "send 'AG54LST JOB "mtxt"' user(AG54) now"
>
> 000600 exit
>
> ****** **************************** Bottom of Data ******
>
> Can you please help.
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> .
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to