• Subject: RE: QDEVRCYACN system value
  • From: "Popeil, Russ" <Russ.Popeil@xxxxxxxxx>
  • Date: Fri, 24 Jul 1998 06:17:17 -0700

The device recovery action can be set system wide buy using the system value
or on a job by job basis using the chgjob command. The possible values are
as follows:

  Device recovery action (DEVRCYACN)

      Specifies the recovery action to take for the job when an I/O error
      is encountered on the *REQUESTER device for interactive jobs.  This
      attribute is ignored for non-interactive jobs.

      *SAME
          The work station recovery action does not change.

      *SYSVAL
          The value in the system value QDEVRCYACN is used as the device
          recovery action for this job.

      *MSG
          The application program requesting the I/O operation receives an
          error message indicating the I/O operation has failed.

      *DSCMSG
          The job is automatically disconnected.  When the job is
          reconnected, it receives an error message indicating that an I/O
          error has occurred but the device has been recovered.  Although
          the device has been recovered, the contents of the display prior
          to the error will need to be shown.

      *DSCENDRQS
          The job is automatically disconnected.  Once it is reconnected,
          the ENDRQS command is issued specifying the previous request
          processor.  If there is no request processor, an error message
          is issued.

      *ENDJOB
          The job is ended with the *IMMED option.  A job log is produced
          for the job.

      *ENDJOBNOLIST
          The job is ended with the *IMMED option.  No job log is produced
          for the job.


      NOTE: Users should have authority to issue the CHGJOB (CHANGE JOB)
            Command.
 
 Using the *DSCMSG an RPG program might looks as follows to handle the
message and recover the screen(redisplay). You can check the Feed back area
for the Major and minor codes of  Major  '83'  and Minor  'E1' this
indicates a disconneted condition has occured. In the program sample below
the program in a do loop based on indicator 56 wehn that occure and the
major and minor is not 83 & E1 the program ends else it loops back and
redisplays the screen. 

                   TSTRSP/qrpglesrc TSR002P
 SEQNBR*... ... 1 ... ... 2 ... ... 3 ... ... 4 ... ... 5 ... ... 6 ... ...
7 ... ... 8 ... ... 9 ... ...
 
+---------------------------------------------------------------------------
------------------------------+
 |
|
 |   100
F****************************************************************
|
 |   200      F*     PURPOSE : PROGRAM TO DEMONSTRATE USE OF DEVRCYACN
PARAMETER                           |
 |   300      F*               THIS WILL ONLY WORK FOR *REQUESTER DEVICES
AND                              |
 |   400      F*               DOES NOT APPLY TO BATCH, PASS-THROUGH, OR
|
 |   500      F*               WORK-STATION-FUNCTION JOBS.
|
 |   600
F*---------------------------------------------------------------
|
 |   700      F*           (C) 1995 - RUSSELL POPEIL
|
 |   800
F****************************************************************
|
 |   900
.....F*ilename++IPEASFRlen+LKlen+AIDevice+.Functions++++++++++++++++++++++++
++++Comments+++++++++ |
 |  1000      FTSD001P   CF   E             WORKSTN INFDS(DSPDS)
|
 |  1100
.....D*ame+++++++++++ETDsFrom+++To/L+++IDc.Functions++++++++++++++++++++++++
++++Comments+++++++++ |
 |  1200      DCMD              S             80    DIM(1) CTDATA PERRCD(1)
|
 |  1300      D                SDS
|
 |  1400      D Prog              *PROC
|
 |  1500      D User                  254    263
|
 |  1600      DDsPDS            DS
|
 |  1700      D Major                 401    402
|
 |  1800      D Minor                 403    404
|
 |  1900      F*---------------->    MAIN BODY   <------------------------
|
 |  2000
.....C*0N01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq
....Comments+++++++++ |
 |  2100      C                   Z-ADD     80            CMDLEN
15 5                            |
 |  2200      C                   CALL      'QCMDEXC'
CHGJOB            |
 |  2300      C                   PARM                    CMD(1)
|
 |  2400      C                   PARM                    CMDLEN
|
 |  2500      C*
|
 |  2600      C                   DOU       *In03
DO UTL EXIT       |
 |  2700      C                   DOU       not *in56
DO TILL NO ERR    |
 |  2800       *
|
 |  2900      C                   Write     D001RH
57      WRITE HEADING     |
 |  3000      C                   Write     D001RC
57      WRITE  COMMANDS   |
 |  3100      C                   ExFmt     D001R1
56      DISPLAY PROMPT    |
 |  3200       *
|
 |  3300      C                   IF        *in56
I/O ERROR ?       |
 |  3400      C                   IF        Major <> '83'  and Minor <> 'E1'
NOT               |
 |  3500      C* HANDLE NON-RECONNECTED CONDITIONS HERE
|
 |  3600      C                   Eval      *inlr = *on
EOJ               |
 |  3700      C                   Return
GET OUT           |
 |  3800      C                   EndIf
MAJOR IFNE 83     |
 |  3900      C                   EndIf
*IN56 IFEQ 1      |
 |  4000      C                   EndDo
*IN56 DOUEQ 1     |
 |  4100      C                   EndDo
*IN03 DOUEQ 1     |
 |  4200      C                   Eval      *Inlr = *on
|
 |  4300      C                   Return
|
 |  4400 ** CMD
|
 |  4500 CHGJOB DEVRCYACN(*DSCMSG)
|
 |
|
 
+---------------------------------------------------------------------------
------------------------------+
 

Russ Popeil
IBM Certified Specialist - RPG Programmer & AS/400 Sales Associate 
Avnet Computer - Integrated Solutions. Bottom-Line Results.
Office: 516-677-9346, Fax: 516-677-0296, Beeper: 516-786-5846
eMail:  Russ.popeil@avnet.com
http://www.avnetcomputer.com




-----Original Message-----
From: owner-midrange-l@midrange.com
[mailto:owner-midrange-l@midrange.com]On Behalf Of Neil Palmer
Sent: Tuesday, July 21, 1998 5:25 PM
To: 'MIDRANGE-L@midrange.com'
Subject: RE: QDEVRCYACN system value


Sign on to a interactive session, preferably with a dumb terminal.
Make sure the job is logging LOG (4 0 *SECLVL).
Go into your application.
Power off your screen.
Now go look at the joblog and see what messages were generated.
Now code an error handling subroutine to check for those messages and
provide recovery in you application.

If you are in most IBM programs (try SEU) and do the same, when you
power back on you should be able to get to the last screen you were
displaying.
(Check QDEVRCYACN *DSCMSG - that may be preferable to *MSG).



Neil Palmer                                AS/400~~~~~      
NxTrend Technology - Canada   ____________          ___  ~     
Thornhill, Ontario,  Canada   |OOOOOOOOOO| ________  o|__||=   
Phone: (905) 731-9000  x238   |__________|_|______|_|______)   
Cell.: (416) 565-1682  x238    oo      oo   oo  oo   OOOo=o\   
Fax:   (905) 731-9202       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
mailto:NPalmer@NxTrend.com    AS/400  The Ultimate Business Server      
http://www.NxTrend.com

> -----Original Message-----
> From: Bleddyn Williams [SMTP:bleddyn@morpheus.ltd.uk]
> Sent: Tuesday, July 21, 1998 11:19 AM
> To:   MIDRANGE-L@midrange.com
> Subject:      QDEVRCYACN system value
> 
> Can someone tell me the text for the  QDEVRCYACN system value says the
> following when set at *MSG
> 
>  Signals the I/O error message to the user's
>  application program.  The application program performs
>  error recovery.
> 
> Where should I find this message? We have had several system crashes
> and IBM
> are saying its because of messages perhaps being generated from here
> but we
> cant find any where would they go?
> 
> Thanks Bleddyn
> 
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---


This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2019 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].