How to use REXX OUTTRAP external function in TSO

304 Views Asked by At

i need to capture a TSO message every time a user insert a data set name and count that data set and display its name.

The script will only do that once and then the script fails with BRX0003E - ABEND CAUGHT IN BREXX/370 error code

The REXX code follows:

Please advice me on how to solve this issue

/* BREXX */                             
DO WHILE (FINSHED<>"NO")                
   SAY "ENTER DATA SET NAME"           
   PULL DATA_SET_NAME                  
   X=OUTTRAP(LINES.)                   
   "LISTDS" DATA_SET_NAME              
   X=OUTTRAP(OFF)                      
   IF (LINES.0==1) THEN                
     DO                                
       SAY LINES.1                     
       EXIT 0                          
     END                               
   ELSE                                
     DO                                
       SAY LINES.1                     
       SAY "DO YOU WANT TO CONTINUE"   
       PULL FINSHED                    
     END                               
END                                     
EXIT 0    

error message:

BRX0003E - ABEND CAUGHT IN BREXX/370

USER HERC01 RX ABEND S0C4
EPA 000F9B78 PSW 078D0000 00125494 ILC 04 INTC 0004
GR 0-3 00000000 00199EA8 00000000 00000000
GR 4-7 00000000 00000001 00000000 00000001
GR 8-11 002020A0 00112990 0012EC04 00199EA8
GR 12-15 00125380 00199EB8 00199FFC 00125380
1

There are 1 best solutions below

1
karam On

Issue was solved by removing the STEM using the DROP command and stem name in my case lines. and clean its content

my source code:

 /* BREXX */                            
 TRACE I                                
 DO WHILE (FINSHED<>"NO")               
     SAY "ENTER DATA SET NAME"          
     PULL DATA_SET_NAME                 
     X=OUTTRAP(LINES.)                  
     "LISTDS" DATA_SET_NAME             
     X=OUTTRAP(OFF)                     
     IF (LINES.0==1) THEN               
       DO                               
         SAY LINES.1                    
         EXIT 0                         
       END                              
     ELSE                               
       DO                               
         SAY LINES.1                    
         SAY "DO YOU WANT TO CONTINUE"  
         PULL FINSHED                   
         DROP LINES.                    
       END                              
 END                                    
 EXIT 0                                 

my OUTTRAP command:
 X=OUTTRAP(LINES.)      
 "LISTDS" DATA_SET_NAME 
 X=OUTTRAP(OFF)         

my DROP command for MY STEM.
DROP LINES.