MAGDCRP ;WIRMFO/JHC CR-PARAMETERS RPC ; 27 July 2006 10:05 AM
;;3.0;IMAGING;**65**;Jul 27, 2006;Build 28
;;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
ERR N ERR S ERR=$$EC^%ZOSV S @MAGGRY@(0)="0^4~"_ERR
D @^%ZOSF("ERRTN")
Q:$Q 1 Q
;
RPCIN(MAGGRY,PARAMS) ; RPC: MAGD CR PARAMS
;PARAMS: SLOC--Location code of interest
;
N $ETRAP,$ESTACK S $ETRAP="D ERR^MAGDCRP"
N DIQUIET,GLOC,LOCIEN,MAGLST,MANIEN,MANUF,MODEL,MODIEN,REC,REPLY,SLOC,VERSION,VERIEN
S SLOC=$P(PARAMS,U)
S MAGLST="MAGDRPC" K MAGGRY S MAGGRY=$NA(^TMP($J,MAGLST)) K @MAGGRY
N CT S CT=0
S DIQUIET=1 D DT^DICRW
I 'SLOC S REPLY="Invalid parameter passed to MAGD CR PARAMS call ("_SLOC_")." G RPCINZ
S LOCIEN=$O(^MAG(2006.623,"B",SLOC,""))
I 'LOCIEN S REPLY="No Location data defined in CR Parameter file ("_SLOC_")." G RPCINZ
S GLOC=$NA(^MAG(2006.623,LOCIEN)),MANIEN=0
F S MANIEN=$O(@GLOC@(1,MANIEN)) Q:'MANIEN S MANUF=^(MANIEN,0),MODIEN=0 D
. F S MODIEN=$O(@GLOC@(1,MANIEN,1,MODIEN)) Q:'MODIEN S MODEL=^(MODIEN,0),VERSION=0 D
. . F S VERSION=$O(@GLOC@(1,MANIEN,1,MODIEN,1,"B",VERSION)) Q:VERSION="" S VERIEN=$O(^(VERSION,"")) D
. . . S X=$G(@GLOC@(1,MANIEN,1,MODIEN,1,VERIEN,0)) Q:X=""
. . . S REC=SLOC_"|"_MANUF_"|"_MODEL_"|"_VERSION_"|"_+$P(X,U,2)
. . . S CT=CT+1,@MAGGRY@(CT)=REC
S REPLY=CT_" records returned"
;
RPCINZ S @MAGGRY@(0)=CT_U_REPLY
Q
;
EECR ;
W @IOF,!!?10,"** Enter/Edit MAG CR PARAMETER data **",!!
N MAGIEN
K DIC S (DIC,DLAYGO)=2006.623,DIC(0)="ALMEQN"
D ^DIC I Y=-1 K DIC,DIE,DR,DLAYGO Q
S DIE=2006.623,DA=+Y
S DR=".01;1;",DR(2,2006.6231)=".01;1;",DR(3,2006.62311)=".01;1;",DR(4,2006.623111)=".01;1;"
S MAGIEN=DA
D ^DIE I '$D(DA) G EECR
G EECR
Q
;
INCR ;
W @IOF,!!?10,"** Inquire MAG CR PARAMETER data **",!!
N MAGIEN,BY,FR,TO
S DIC=2006.623,DIC(0)="AMEQ"
D ^DIC I Y=-1 K DIC Q
S DA=+Y,(FR,TO)=$P(Y,U,2),MAGIEN=DA,L=0
S BY="#.01",FLDS="[MAGD CR PARAM LIST]",DIS(0)="I D0=MAGIEN"
D EN1^DIP
R !,"Enter RETURN to continue: ",X:DTIME W !
G INCR
Q
;
;
END ;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HMAGDCRP 3069 printed Nov 22, 2024@17:09:57 Page 2
MAGDCRP ;WIRMFO/JHC CR-PARAMETERS RPC ; 27 July 2006 10:05 AM
+1 ;;3.0;IMAGING;**65**;Jul 27, 2006;Build 28
+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
ERR NEW ERR
SET ERR=$$EC^%ZOSV
SET @MAGGRY@(0)="0^4~"_ERR
+1 DO @^%ZOSF("ERRTN")
+2 if $QUIT
QUIT 1
QUIT
+3 ;
RPCIN(MAGGRY,PARAMS) ; RPC: MAGD CR PARAMS
+1 ;PARAMS: SLOC--Location code of interest
+2 ;
+3 NEW $ETRAP,$ESTACK
SET $ETRAP="D ERR^MAGDCRP"
+4 NEW DIQUIET,GLOC,LOCIEN,MAGLST,MANIEN,MANUF,MODEL,MODIEN,REC,REPLY,SLOC,VERSION,VERIEN
+5 SET SLOC=$PIECE(PARAMS,U)
+6 SET MAGLST="MAGDRPC"
KILL MAGGRY
SET MAGGRY=$NAME(^TMP($JOB,MAGLST))
KILL @MAGGRY
+7 NEW CT
SET CT=0
+8 SET DIQUIET=1
DO DT^DICRW
+9 IF 'SLOC
SET REPLY="Invalid parameter passed to MAGD CR PARAMS call ("_SLOC_")."
GOTO RPCINZ
+10 SET LOCIEN=$ORDER(^MAG(2006.623,"B",SLOC,""))
+11 IF 'LOCIEN
SET REPLY="No Location data defined in CR Parameter file ("_SLOC_")."
GOTO RPCINZ
+12 SET GLOC=$NAME(^MAG(2006.623,LOCIEN))
SET MANIEN=0
+13 FOR
SET MANIEN=$ORDER(@GLOC@(1,MANIEN))
if 'MANIEN
QUIT
SET MANUF=^(MANIEN,0)
SET MODIEN=0
Begin DoDot:1
+14 FOR
SET MODIEN=$ORDER(@GLOC@(1,MANIEN,1,MODIEN))
if 'MODIEN
QUIT
SET MODEL=^(MODIEN,0)
SET VERSION=0
Begin DoDot:2
+15 FOR
SET VERSION=$ORDER(@GLOC@(1,MANIEN,1,MODIEN,1,"B",VERSION))
if VERSION=""
QUIT
SET VERIEN=$ORDER(^(VERSION,""))
Begin DoDot:3
+16 SET X=$GET(@GLOC@(1,MANIEN,1,MODIEN,1,VERIEN,0))
if X=""
QUIT
+17 SET REC=SLOC_"|"_MANUF_"|"_MODEL_"|"_VERSION_"|"_+$PIECE(X,U,2)
+18 SET CT=CT+1
SET @MAGGRY@(CT)=REC
End DoDot:3
End DoDot:2
End DoDot:1
+19 SET REPLY=CT_" records returned"
+20 ;
RPCINZ SET @MAGGRY@(0)=CT_U_REPLY
+1 QUIT
+2 ;
EECR ;
+1 WRITE @IOF,!!?10,"** Enter/Edit MAG CR PARAMETER data **",!!
+2 NEW MAGIEN
+3 KILL DIC
SET (DIC,DLAYGO)=2006.623
SET DIC(0)="ALMEQN"
+4 DO ^DIC
IF Y=-1
KILL DIC,DIE,DR,DLAYGO
QUIT
+5 SET DIE=2006.623
SET DA=+Y
+6 SET DR=".01;1;"
SET DR(2,2006.6231)=".01;1;"
SET DR(3,2006.62311)=".01;1;"
SET DR(4,2006.623111)=".01;1;"
+7 SET MAGIEN=DA
+8 DO ^DIE
IF '$DATA(DA)
GOTO EECR
+9 GOTO EECR
+10 QUIT
+11 ;
INCR ;
+1 WRITE @IOF,!!?10,"** Inquire MAG CR PARAMETER data **",!!
+2 NEW MAGIEN,BY,FR,TO
+3 SET DIC=2006.623
SET DIC(0)="AMEQ"
+4 DO ^DIC
IF Y=-1
KILL DIC
QUIT
+5 SET DA=+Y
SET (FR,TO)=$PIECE(Y,U,2)
SET MAGIEN=DA
SET L=0
+6 SET BY="#.01"
SET FLDS="[MAGD CR PARAM LIST]"
SET DIS(0)="I D0=MAGIEN"
+7 DO EN1^DIP
+8 READ !,"Enter RETURN to continue: ",X:DTIME
WRITE !
+9 GOTO INCR
+10 QUIT
+11 ;
+12 ;
END ;