HP3000-L Archives

July 1999, Week 3

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
"Stigers, Greg [And]" <[log in to unmask]>
Reply To:
Stigers, Greg [And]
Date:
Thu, 15 Jul 1999 15:49:10 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (51 lines)
X-no-Archive:yes
MPE's ESCAPE does this, terminating the batch job:
!IF FTPLASTERR <> 0
!   TELL MGR.AIHWORK !HPJOBNAME Did not receive data . . . job ended.
!   TELL MGR.AIHWORK !HPJOBNAME Try job again.
!   SHOWVAR FTP@
!   ESCAPE
!ENDIF

So long as the error condition is testable such as FTPLASTERR, STOREJCW,
CIERROR, etc., and it seems like this is the case that you have given, you
can use CI programming and ESCAPE to do what you want. It sounds like you
may have a serious operator problem, if they cannot or will not or are
otherwise discouraged from trying to make sense out of the actual error. If
this is the case, perhaps no amount of CI programming or 'human engineering'
can be fool-proof enough to ensure that the error is understood and
appropriate action taken.

If CI programming can solve your problems, something like what you are
already doing, but using ESCAPE, should do the trick. See HELP on ESCAPE,
RETURN, and ERRCLEAR; you can have ESCAPE set another CIERROR if necessary.
And it may be necessary to use CONTINUE before certain commands that would
have fatal / job-aborting errors, and then write your own logic to TELLOP
and abort the job. Unfortunately, this lengthens and complicates the jobs.
This is what we do in our store jobs:
!CONTINUE
!STORE ^!HPJOBNAME.CONFIG;!TAPE;&
!PROGRESS=1;PURGE;SHOW=OFFLINE;STATISTICS
!#Show error, warning, and job control word / return code
!SHOWVAR STORE@
!IF STOREJCW = 0
!   TELLOP !HPJOBNAME STORE returned STOREJCW !STOREJCW
!ELSE
!   TELLOP !HPJOBNAME STORE failed with STOREJCW !STOREJCW
!ENDIF
!IF STORE_ERROR = 0
!   TELLOP !HPJOBNAME STORE returned STORE_ERROR !STORE_ERROR
!ELSE
!   TELLOP !HPJOBNAME STORE failed with STORE_ERROR !STORE_ERROR
!ENDIF
!IF STOREJCW = 0 &
!   AND STORE_ERROR = 0
!   TELLOP ![CHR(27)]&dJ!HPJOBNAME on !TAPE STOREd normally
!ELSE
!   TELLOP ![CHR(27)]&dJ!HPJOBNAME on !TAPE STORE failed; call CGI.
!   ESCAPE
!ENDIF
...

HTH. If I can explain in more detail what we do with this, let me know.

ATOM RSS1 RSS2