I was sent private email re. a comment I made wrt PAUSE-FOR-JOB. In
composing my response I thought some of this may be of general interest.
On Nov 26, 9:17am, SB PARTAGE wrote:
> Thanks Jeff for your suggestions,
> You say ,
> > This doesn't solve the problem of inserting a
> > new job in the middle, however, nor do the suggestions about using the
> > PAUSE-for-a -job enhancement suggested by others.
>
> But ...
> The "PAUSE-for-a -job enhancement suggested by others" needn't be strictly
> job-specific.
Good point! And, in thinking more about it, you can actually *be* job
specific yet still be able to insert/delete one or more jobs easily.
> I am testing it with PAUSE-for-ANY-job coming from a specific account.
> ie. !PAUSE [log in to unmask];EXIST
> As my Weekday and Weekend jobs are all from XACCT, I think this should work.
Yes this should work. I have a few comments below.
> !JOB JWEEKEND,MGR.ZACCT;outclass=LP,1
> !COMMENT Creation du fichier YYY
> !STREAM JOB1.YYY.ZACCT
> !PAUSE 300
Why are you pausing 300 seconds? What if your job for whatever reason
completes in 60 seconds -- do you really want to wait an additional
4 minutes?
Did you know you could do this?
!stream job1.yyy.zacct
!pause job=!hplastjob
This causes your 'master' job to pause until the job it last streamed is
done.
> !PAUSE [log in to unmask];EXIST
> !
> !COMMENT Creation fichier XXX1
> !STREAM JOB2.XXX.ZACCT
> !PAUSE 300
Again, you could do this:
!pause job=!hplastjob
Now, if you decide to add a new job you simply insert the STREAM command
line and the same PAUSE line as above.
> I also load in an extra PAUSE 300 in case the next job is a "very fast job".
> And, mercifully!, according to the doc, the job won't PAUSE itself.
(correct)
This is an interesting observation; however, if you try to pause for
a job that does not exist anymore, the pause immediately returns. So,
this should not be a problem.
Sort of related: I have used the HPLASTSPID variable to see the spoolfile
for a job I just streamed. Example:
!stream job1
!print !hplastspid.out.hpspool
...
What I've observed a few times is that "job1" did not get processed in
time and the HPLASTSPID variable was not yet set, so it returned an
error (or "", I forget). If I place a pause between the STREAM and PRINT
all works fine. Example:
!stream job1
!pause job=!hplastjob ;WAIT
!print !hplastspid.out.hpspool
...
In this example, I did not want to sleep until "job1" was finished. The
WAIT lets me pause until "job1" is at least INTROduced.
Good luck,
Jeff Vance, CSY
--
|