... and here is the JCL / Clist version of *writing* to the broadcast
dataset:
 
'// ... <job card> ...                                                  '
'/*JOBPARM SYSAFF=(<LPAR>)                                              '
'//*                                                                    '
'//*********************************************************************'
'//* 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 DSN>                                '
'//SYSTSIN  DD  DUMMY                                                   '
'//SYSTSPRT DD  SYSOUT=*                                                '
'//CONSIDS  DD  *                                                       '
'... <master console ID> ...                                            '
'//*                                                                    '
'//DESTIDS  DD  *                                                       '
'... <userid(s)> ...                                                    '
'//SYSIN    DD  *                                                       '
'... <multi-line message> ...                                           '
'... <... ditto etc 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 ABANDONED
  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 30/06/2017 08:47, Bruce Hewson wrote:
> Hi Jason,
>
> SEND '                                 ',SAVE
>
> these look better in fixed font.
>
> //*                                                               
> //*                                                               
> //SETBROD  EXEC PGM=IKJEFT01,PARM='%SETBROD'                      
> //*                                                               
> //*                                                               
> //BRODCAST DD  *                                                  
> ***********************************************************       
> **                     N O T I C E                       **       
> **                     ===========                       **       
> **               E N D   O F   M O N T H                 **       
> **               =======================                 **       
> **               R E S T R I C T I O N S                 **       
> **               =======================                 **       
> **                                                       **       
> **  Month-End processing period resource restrictions    **       
> **  from 18:00 31Jul2014 to 18:00 01Aug2014 SST:-        **       
> **                                                       **       
> **  Cards development systems:-                          **       
> **  ST06 - System will be not be affected.               **       
> **  ST07 - System will be shutdown.                      **       
> **                                                       **       
> **  Are you logging on to support a PRODUCTION problem   **       
> **  during this period? NO? then LOGOFF ASAP!!!!!!!!!!   **       
> **                                                       **       
> **Please plan to stop all CICS regions before 31Jul 6pm  **       
> ***********************************************************       
> /*                                                                
> //*                                                               
> //*                                                               
> //SYSTSIN  DD  DUMMY                                              
> //SYSPRINT DD  SYSOUT=*                                           
> //SYSPROC  DD  DISP=SHR,DSN=rexx.dataset                
> //SYSTSPRT DD  SYSOUT=*                                           
> //                                                                
>
>
> The REXX  - the important part.
>
> /****************************************************************/           
> /*     Process control cards                                   **/           
> /****************************************************************/           
>                                                                              
>  Say                                                                         
>  Say "Reading new brodcast message"                                          
>  Say                                                                         
>  msg. =                                                                      
>  "EXECIO * DISKR BRODCAST (FINIS STEM msg."                                  
>  msg_cnt = msg.0                                                             
>                                                                              
>  rc=isfcalls('on')                /* Enable SDSF environment         */      
>                                                                              
>                                                                              
>  do ix=1 to msg_cnt                                                          
>    Address SDSF "ISFEXEC '/SEND ''" || msg.ix || "'',SAVE'"                  
>  end                                                                         
>                                                                              
>  rc=isfcalls('off')                                                          
>                                                                              
>  Return                                                                      
>
>> -----Original Message-----
>> From: IBM Mainframe Discussion List [mailto:[email protected]] On
>> Behalf Of [email protected]
>> Sent: Wednesday, June 28, 2017 8:08 PM
>> To: [email protected]
>> Subject: how to keep messages in the sys1.broadcast for ever
>>
>>
>> hi all
>>
>>  Could you tell us how to keep messages in the sys1.broadcast for ever ?
>>
>> Thanks a lot!
>>
>> Jason Cai
>>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
> .
>


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to