- MAGGTERR ;WOIFO/GEK - IMAGING ERROR TRAP, AND ERROR LOG ; [ 06/20/2001 08:56 ]
- ;;3.0;IMAGING;**8,59**;Nov 27, 2007;Build 20
- ;;Per VHA Directive 2004-038, this routine should not be modified.
- ;; +---------------------------------------------------------------+
- ;; | Property of the US Government. |
- ;; | No permission to copy or redistribute this software is given. |
- ;; | Use of unreleased versions of this software requires the user |
- ;; | to execute a written test agreement with the VistA Imaging |
- ;; | Development Office of the Department of Veterans Affairs, |
- ;; | telephone (301) 734-0100. |
- ;; | |
- ;; | The Food and Drug Administration classifies this software as |
- ;; | a medical device. As such, it may not be changed in any way. |
- ;; | Modifications to this software may result in an adulterated |
- ;; | medical device under 21CFR820, the use of which is considered |
- ;; | to be a violation of US Federal Statutes. |
- ;; +---------------------------------------------------------------+
- ;;
- Q
- ; Imaging routines should have this code for setting error trap
- ; This will enable logging Imaging errors and Sending messages for
- ; certain errors etc. later
- ;N $ETRAP,$ESTACK S $ETRAP="D ERRA^MAGGTERR"
- ;
- ; This assumes the Return variable or array is MAGRY or MAGRY()
- Q
- ERRA ; ERROR TRAP FOR Array Return variables
- N ERR S ERR=$$EC^%ZOSV
- S MAGRY(0)="0^"_ERR
- D LOGERR(ERR)
- D @^%ZOSF("ERRTN")
- Q
- ;
- AERRA ; ERROR TRAP FOR Global Return Variables
- N ERR S ERR=$$EC^%ZOSV
- S @MAGRY@(0)="0^ERROR "_ERR
- D LOGERR(ERR)
- D @^%ZOSF("ERRTN")
- Q
- ERR ; ERROR TRAP FOR String Return variables
- N ERR S ERR=$$EC^%ZOSV
- S MAGRY="0^ERROR "_ERR
- D LOGERR(ERR)
- D @^%ZOSF("ERRTN")
- Q
- LOGERR(ERROR) ;
- Q:'$G(MAGJOB("SESSION"))
- N SESS,WRKS,ERR
- S SESS=$G(MAGJOB("SESSION"))
- ; Quit if No entry in Session File.
- Q:'$D(^MAG(2006.82,SESS,0))
- I '$D(^MAG(2006.82,SESS,"ERR",0)) S ^MAG(2006.82,SESS,"ERR",0)="^2006.823A^0^0"
- S ERR=$O(^MAG(2006.82,SESS,"ERR"," "),-1)+1
- S ^MAG(2006.82,SESS,"ERR",ERR,0)=ERROR
- S $P(^MAG(2006.82,SESS,"ERR",0),"^",3,4)=ERR_"^"_ERR
- ;
- Q:'$G(MAGJOB("WRKSIEN"))
- S WRKS=$G(MAGJOB("WRKSIEN"))
- ; Quit if No entry in Workstation File.
- Q:'$D(^MAG(2006.81,WRKS,0))
- S $P(^MAG(2006.81,WRKS,0),"^",11)=ERR
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HMAGGTERR 2470 printed Feb 18, 2025@23:29:24 Page 2
- MAGGTERR ;WOIFO/GEK - IMAGING ERROR TRAP, AND ERROR LOG ; [ 06/20/2001 08:56 ]
- +1 ;;3.0;IMAGING;**8,59**;Nov 27, 2007;Build 20
- +2 ;;Per VHA Directive 2004-038, this routine should not be modified.
- +3 ;; +---------------------------------------------------------------+
- +4 ;; | Property of the US Government. |
- +5 ;; | No permission to copy or redistribute this software is given. |
- +6 ;; | Use of unreleased versions of this software requires the user |
- +7 ;; | to execute a written test agreement with the VistA Imaging |
- +8 ;; | Development Office of the Department of Veterans Affairs, |
- +9 ;; | telephone (301) 734-0100. |
- +10 ;; | |
- +11 ;; | The Food and Drug Administration classifies this software as |
- +12 ;; | a medical device. As such, it may not be changed in any way. |
- +13 ;; | Modifications to this software may result in an adulterated |
- +14 ;; | medical device under 21CFR820, the use of which is considered |
- +15 ;; | to be a violation of US Federal Statutes. |
- +16 ;; +---------------------------------------------------------------+
- +17 ;;
- +18 QUIT
- +19 ; Imaging routines should have this code for setting error trap
- +20 ; This will enable logging Imaging errors and Sending messages for
- +21 ; certain errors etc. later
- +22 ;N $ETRAP,$ESTACK S $ETRAP="D ERRA^MAGGTERR"
- +23 ;
- +24 ; This assumes the Return variable or array is MAGRY or MAGRY()
- +25 QUIT
- ERRA ; ERROR TRAP FOR Array Return variables
- +1 NEW ERR
- SET ERR=$$EC^%ZOSV
- +2 SET MAGRY(0)="0^"_ERR
- +3 DO LOGERR(ERR)
- +4 DO @^%ZOSF("ERRTN")
- +5 QUIT
- +6 ;
- AERRA ; ERROR TRAP FOR Global Return Variables
- +1 NEW ERR
- SET ERR=$$EC^%ZOSV
- +2 SET @MAGRY@(0)="0^ERROR "_ERR
- +3 DO LOGERR(ERR)
- +4 DO @^%ZOSF("ERRTN")
- +5 QUIT
- ERR ; ERROR TRAP FOR String Return variables
- +1 NEW ERR
- SET ERR=$$EC^%ZOSV
- +2 SET MAGRY="0^ERROR "_ERR
- +3 DO LOGERR(ERR)
- +4 DO @^%ZOSF("ERRTN")
- +5 QUIT
- LOGERR(ERROR) ;
- +1 if '$GET(MAGJOB("SESSION"))
- QUIT
- +2 NEW SESS,WRKS,ERR
- +3 SET SESS=$GET(MAGJOB("SESSION"))
- +4 ; Quit if No entry in Session File.
- +5 if '$DATA(^MAG(2006.82,SESS,0))
- QUIT
- +6 IF '$DATA(^MAG(2006.82,SESS,"ERR",0))
- SET ^MAG(2006.82,SESS,"ERR",0)="^2006.823A^0^0"
- +7 SET ERR=$ORDER(^MAG(2006.82,SESS,"ERR"," "),-1)+1
- +8 SET ^MAG(2006.82,SESS,"ERR",ERR,0)=ERROR
- +9 SET $PIECE(^MAG(2006.82,SESS,"ERR",0),"^",3,4)=ERR_"^"_ERR
- +10 ;
- +11 if '$GET(MAGJOB("WRKSIEN"))
- QUIT
- +12 SET WRKS=$GET(MAGJOB("WRKSIEN"))
- +13 ; Quit if No entry in Workstation File.
- +14 if '$DATA(^MAG(2006.81,WRKS,0))
- QUIT
- +15 SET $PIECE(^MAG(2006.81,WRKS,0),"^",11)=ERR
- +16 QUIT