Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Is there a way to add a wait step in the Connect:Direct PROC

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> All Other Mainframe Topics
View previous topic :: :: View next topic  
Author Message
ram5er

New User


Joined: 14 Jul 2006
Posts: 14
Location: Dallas, Texas

PostPosted: Fri Feb 09, 2007 6:02 am    Post subject: Is there a way to add a wait step in the Connect:Direct PROC
Reply with quote

Need to add a wait step of 4 min to the CONNECT:Direct process card. Does anyone know how to do this?

ZYPxxxV1 PROCESS SNODEID=(PROD)
STEP01 COPY FROM(PNODE DSN=&FROMDSN -
DISP=(OLD,KEEP,KEEP)) -

TO(SNODE DSN=&TODSN -
SYSOPTS=":STRIP.BLANKS=NO:DATATYPE=BINARY:" -
DISP=(NEW,CATLG,DELETE)) -
COMPRESS EXT
Back to top
View user's profile Send private message

superk

Moderator Team Head


Joined: 26 Apr 2004
Posts: 4648
Location: Raleigh, NC, USA

PostPosted: Tue Feb 13, 2007 8:11 pm    Post subject: Re: Is there a way to add a wait step in the Connect:Direct
Reply with quote

A RUN TASK would keep the process executing in an Asynchronous manner. You didn't offer any details as to what language you would code the wait routine in.

I ran this test using a REXX exec that takes advantage of the REXX elapsed time event:

Code:

MYPROC   PROCESS PNODE=PNODE NOTIFY=%USER                       -
                 SNODE=SNODE                                    -
                 &USER=%USER                                    -
                 &SEQ=%NUM1                                     
*                                                               
                 SYMBOL &SEQ1=\T\ || &SEQ                       
                 SYMBOL &ADSN=\&USER\ || \.PROCESS.\ || &SEQ1   
                 SYMBOL &BDSN=\&USER\ || \.SYSTSPRT.\ || &SEQ1   
                 SYMBOL &CDSN=\&USER\ || \.SYSTSIN.\ || &SEQ1   
*                                                               
STEP1    COPY    FROM (PNODE DSN=HLQ1.HLQ2.PROCESS              -
                       DISP=(SHR,DELETE,KEEP))                  -
                 TO   (SNODE DSN="&ADSN"                        -
                       DISP=(NEW,CATLG,CATLG))                  -
                 COMPRESS EXTENDED                               
*                                                               
STEP2A   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'ALLOC',                              -
                         C' DD=SYSEXEC'                         -
                         C' DSN=HLQ1.HLQ2.REXX'                 -
                         C' DISP=(SHR,KEEP)')) PNODE             
*                                                                 
STEP2B   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'ALLOC',                              -
                         C' DD=SYSTSPRT'                        -
                         C" DSN=&BDSN"                          -
                         C' DISP=(NEW,CATLG)',                  -
                         C' SPACE=(TRK,(1,1))',                 -
                         C' DCB=(RECFM=FB,LRECL=133,BLKSIZE=0)', -
                         C'UNIT=SYSDA')) PNODE                   
*                                                                 
STEP2C   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'ALLOC',                              -
                         C' DD=SYSTSIN'                         -
                         C" DSN=&CDSN"                          -
                         C' DISP=(NEW,CATLG)',                  -
                         C' SPACE=(TRK,(1,1))',                 -
                         C' DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)', -
                         C'UNIT=SYSDA')) PNODE                   
*                                                               
STEP2D   RUN TASK (PGM=IRXJCL,PARM=(C'WAIT 240')) PNODE         
*                                                               
STEP3A   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'UNALLOC',                            -
                         C' DD=SYSEXEC')) PNODE                 
*                                                               
STEP3B   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'UNALLOC',                            -
                         C' DD=SYSTSIN')) PNODE                 
*                                                               
STEP3C   RUN TASK (PGM=DMRTDYN                                  -
                   PARM=(C'UNALLOC',                            -
                         C' DD=SYSTSPRT')) PNODE                 
*                                                               


The WAIT exec:

Code:

/* REXX WAIT */                                       
Parse Arg secs .                                     
If Datatype(secs) <> 'NUM' Then secs = 60             
secs = Abs(secs)                                     
secs = Trunc(secs,0)                                 
Say Time()' Starting Wait For 'secs' Seconds ...'     
rc = Time(R)                                         
Do Forever                                           
  n = Time(E)                                         
  If n >= secs Then Leave                             
End                                                   
Say Time()' Ending Wait'                             
Exit 0                                               


I had previously successfully tested this COBOL program for a wait:

Code:

CBL DATA(24)                                                           
       IDENTIFICATION DIVISION.                                         
       PROGRAM-ID. WAIT.                                               
                                                                       
       WORKING-STORAGE SECTION.                                         
       01  DELAY-AMT               PIC S9(9) COMP.                     
       01  CURRENT-TIME            PIC 9(8).                           
                                                                       
       LINKAGE SECTION.                                                 
       01  PARM.                                                       
           03  PARM-LENGTH         PIC S9(04) COMP SYNC.               
           03  PARM-DELAY-AMT      PIC 9(3).                           
                                                                       
       PROCEDURE DIVISION USING PARM.                                   
           MOVE PARM-DELAY-AMT TO DELAY-AMT.                           
           ACCEPT CURRENT-TIME FROM TIME.                               
           DISPLAY CURRENT-TIME.                                       
           CALL 'ILBOWAT0' USING DELAY-AMT.                             
           ACCEPT CURRENT-TIME FROM TIME.                               
           DISPLAY CURRENT-TIME.             
           MOVE ZEROS TO RETURN-CODE.       
           STOP RUN.                         
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> All Other Mainframe Topics All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Validate date and numeric fields and ... Rick Silvers DFSORT/ICETOOL 6 Thu May 11, 2017 6:51 pm
No new posts DIrect link of dynam/nodynam nkjain87 COBOL Programming 2 Mon Apr 24, 2017 6:23 pm
No new posts Connect:Direct - RC=000000FF MSG=SVTM... R.Manivannan All Other Mainframe Topics 3 Fri Apr 21, 2017 1:30 am
No new posts Jcl pram vs proc parms ashek15 JCL & VSAM 3 Thu Mar 30, 2017 6:50 pm
This topic is locked: you cannot edit posts or make replies. Job to wait and continue based on reply yugendran COBOL Programming 5 Wed Oct 05, 2016 1:46 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us