1 | MAGGTUX1 ;WIOFO/GEK Imaging utility to track missing TYPE INDEX values.
|
---|
2 | ;;3.0;IMAGING;**59**;Nov 27, 2007;Build 20
|
---|
3 | ;;Per VHA Directive 2004-038, this routine should not be modified.
|
---|
4 | ;; +---------------------------------------------------------------+
|
---|
5 | ;; | Property of the US Government. |
|
---|
6 | ;; | No permission to copy or redistribute this software is given. |
|
---|
7 | ;; | Use of unreleased versions of this software requires the user |
|
---|
8 | ;; | to execute a written test agreement with the VistA Imaging |
|
---|
9 | ;; | Development Office of the Department of Veterans Affairs, |
|
---|
10 | ;; | telephone (301) 734-0100. |
|
---|
11 | ;; | |
|
---|
12 | ;; | The Food and Drug Administration classifies this software as |
|
---|
13 | ;; | a medical device. As such, it may not be changed in any way. |
|
---|
14 | ;; | Modifications to this software may result in an adulterated |
|
---|
15 | ;; | medical device under 21CFR820, the use of which is considered |
|
---|
16 | ;; | to be a violation of US Federal Statutes. |
|
---|
17 | ;; +---------------------------------------------------------------+
|
---|
18 | ;;
|
---|
19 | Q
|
---|
20 | REVIEW ;
|
---|
21 | N CHK,FIX,MAGN
|
---|
22 | S CHK=$D(^XTMP("MAGGTUXC"))
|
---|
23 | S FIX=$D(^XTMP("MAGGTUX"))
|
---|
24 | N EQ S $P(EQ,"=",78)=""
|
---|
25 | W !,EQ
|
---|
26 | I 'CHK,'FIX W !,"No reports to review." Q
|
---|
27 | S X=$S(FIX:"F",1:"C")
|
---|
28 | I CHK&FIX D
|
---|
29 | . W !,"Review last Report of Checked or Fixed Index terms: C/F //F :" R X:30
|
---|
30 | I "fF"[$E(X) W !,"Starting Review of last Fixed Report:" S MAGN="MAGGTUX"
|
---|
31 | E W !,"Starting Review of last Checked Report:" S MAGN="MAGGTUXC"
|
---|
32 | W !,"Summary of search for Images where TYPE INDEX = null"
|
---|
33 | N I,PKG,BT,ICT,CT,J,JCT,TCT,TTCT
|
---|
34 | S BT=0
|
---|
35 | D 3
|
---|
36 | ;
|
---|
37 | W !,"Last Image IEN missing a Type Index : ",$P($G(^XTMP(MAGN,0,"NT")),"-")
|
---|
38 | W ?41,$$FMTE^XLFDT($P($G(^XTMP(MAGN,0,"NT")),"-",2))
|
---|
39 | W !,"Last Image IEN missing All Index : ",$P($G(^XTMP(MAGN,0,"NI")),"-")
|
---|
40 | W ?41,$$FMTE^XLFDT($P($G(^XTMP(MAGN,0,"NI")),"-",2))
|
---|
41 | W !,"------------------------------"
|
---|
42 | S I="",TCT=0
|
---|
43 | W !,"Different settings of invalid INDEX Node"
|
---|
44 | W !,"Current Terms",?22,"Generated Terms",?50,"New Terms",!
|
---|
45 | F S I=$O(^XTMP(MAGN,"AAN40",I)) Q:I="" D
|
---|
46 | . S TCT=TCT+$G(^XTMP(MAGN,"AAN40",I))
|
---|
47 | . W !,I,?20,^XTMP(MAGN,"AAN40",I),?65,"= ",TCT
|
---|
48 | . S J="" F S J=$O(^XTMP(MAGN,"AAN40",I,"CVT",J)) Q:J="" D
|
---|
49 | . . W !,I,?20,"+ ",J,?45,"= ",^XTMP(MAGN,"AAN40",I,"CVT",J)
|
---|
50 | . Q
|
---|
51 | ;
|
---|
52 | DISPLAY ; This is called after a CHECK or a FIX from MAGGTUX
|
---|
53 | N A
|
---|
54 | S A=$NA(^TMP($J,"MAGGTUX","RPT"))
|
---|
55 | D BUILD(A)
|
---|
56 | S I="" F S I=$O(@A@(I)) Q:I="" D MES^XPDUTL(^(I))
|
---|
57 | Q
|
---|
58 | MAIL ; This will mail results to the MAG SERVER mail group.
|
---|
59 | N A,MAGDT
|
---|
60 | S MAGDT=$P($$FMTE^XLFDT($$NOW^XLFDT),"@",1)
|
---|
61 | S A=$NA(^TMP($J,"MAGQ"))
|
---|
62 | D BUILD(A)
|
---|
63 | N XMSUB S XMSUB="Image Index Validate "_MAGDT_": Report"
|
---|
64 | S @A@(1)=$$GET1^DIQ(200,$G(DUZ),.01)_" "_$$GET1^DIQ(4,$G(DUZ(2)),.01)
|
---|
65 | D MAILSHR^MAGQBUT1
|
---|
66 | Q
|
---|
67 | BUILD(A) ;BUILD A TMP global of the report.
|
---|
68 | N CT
|
---|
69 | S CT=5 K @A
|
---|
70 | S CT=CT+1,@A@(CT)="================================================================="
|
---|
71 | S CT=CT+1,@A@(CT)="Start time : "_$$FMTE^XLFDT($P(^XTMP(MAGN,0),"^",2))
|
---|
72 | S CT=CT+1,@A@(CT)="End time : "_$P($G(^XTMP(MAGN,0,"END")),"^",1)
|
---|
73 | S CT=CT+1,@A@(CT)="Elapsed time : "_$P($G(^XTMP(MAGN,0,"END")),"^",2)
|
---|
74 | S CT=CT+1,@A@(CT)="Last Image IEN missing a Type Index : "_$P($G(^XTMP(MAGN,0,"NT")),"-")_" "_$$FMTE^XLFDT($P($G(^XTMP(MAGN,0,"NT")),"-",2))
|
---|
75 | S CT=CT+1,@A@(CT)="Last Image IEN missing All Index : "_$P($G(^XTMP(MAGN,0,"NI")),"-")_" "_$$FMTE^XLFDT($P($G(^XTMP(MAGN,0,"NI")),"-",2))
|
---|
76 | S CT=CT+1,@A@(CT)="Total Checked: "_$G(^XTMP(MAGN,"AATCHK"))
|
---|
77 | S CT=CT+1,@A@(CT)=" -- Entries Missing a Type Index -- "
|
---|
78 | S CT=CT+1,@A@(CT)="Total Study Groups & Single Images : "_+$G(^XTMP(MAGN,"AANT"))
|
---|
79 | S CT=CT+1,@A@(CT)="Total Group Images : "_$G(^XTMP(MAGN,"AAGRINT"))
|
---|
80 | S CT=CT+1,@A@(CT)=" -- Entries Missing all Index Terms -- "
|
---|
81 | S CT=CT+1,@A@(CT)="Total Study Groups & Single Images : "_+$G(^XTMP(MAGN,"AANI"))
|
---|
82 | S CT=CT+1,@A@(CT)="Total Group Images : "_$G(^XTMP(MAGN,"AAGRINI"))
|
---|
83 | S CT=CT+1,@A@(CT)=" -- Other Index checks -- "
|
---|
84 | S CT=CT+1,@A@(CT)=" Total Origin Index fixes : "_$G(^XTMP(MAGN,"AAOFX"))
|
---|
85 | S CT=CT+1,@A@(CT)=" CR -> CT fix : "_$G(^XTMP(MAGN,"AACRCT"))
|
---|
86 | S CT=CT+1,@A@(CT)=" Total DataBase Changes = "_+$G(^XTMP(MAGN,"AAFIX"))
|
---|
87 | S CT=CT+1,@A@(CT)=" "
|
---|
88 | S CT=CT+1,@A@(CT)="Also : Information gathered during Check/Fix"
|
---|
89 | S CT=CT+1,@A@(CT)=" - - - Generate Index Values and Merge - - - "
|
---|
90 | S CT=CT+1,@A@(CT)=" The Merged proc/spec not valid. No change.) "_$G(^XTMP(MAGN,"AANOMERG"))
|
---|
91 | S CT=CT+1,@A@(CT)=" The Merged proc/spec was okay. Changed. "_$G(^XTMP(MAGN,"AAOKMERG"))
|
---|
92 | S CT=CT+1,@A@(CT)=" - - - other - - - "
|
---|
93 | S CT=CT+1,@A@(CT)=" Total Groups of only 1 image "_$G(^XTMP(MAGN,"AAGO1"))
|
---|
94 | S CT=CT+1,@A@(CT)=" Total Groups of 0 images "_$G(^XTMP(MAGN,"AAGO0"))
|
---|
95 | S CT=CT+1,@A@(CT)=" Total Images w/No Patient "_$G(^XTMP(MAGN,"AANOPAT"))
|
---|
96 | S CT=CT+1,@A@(CT)=" Total Images w/No 0 node "_$G(^XTMP(MAGN,"AANOZ"))
|
---|
97 | S CT=CT+1,@A@(CT)=" Warnings: Generated Proc,Spec "_$G(^XTMP(MAGN,"AAINVG"))
|
---|
98 | S CT=CT+1,@A@(CT)=" Warnings: Entered Proc,Spec "_$G(^XTMP(MAGN,"AAINVO"))
|
---|
99 | S IEN=$P(^XTMP(MAGN,0),"^",3)
|
---|
100 | I +IEN D
|
---|
101 | . S CT=CT+1,@A@(CT)=" "
|
---|
102 | . S CT=CT+1,@A@(CT)="Last IEN Checked: "_IEN
|
---|
103 | . S CT=CT+1,@A@(CT)=" Capture Date: "_$$FMTE^XLFDT($P($G(^MAG(2005,IEN,2)),"^",1))
|
---|
104 | . Q
|
---|
105 | I IEN=0 D
|
---|
106 | . S CT=CT+1,@A@(CT)=" "
|
---|
107 | . S CT=CT+1,@A@(CT)="All Entries were checked"
|
---|
108 | . Q
|
---|
109 | S CT=CT+1,@A@(CT)=" "
|
---|
110 | S CT=CT+1,@A@(CT)="For a summary of the last Check or Fix process"
|
---|
111 | S CT=CT+1,@A@(CT)="Use the menu option: "
|
---|
112 | S CT=CT+1,@A@(CT)=" ""REV Review a Summary of the last Fix or Check process."""
|
---|
113 | S CT=CT+1,@A@(CT)="================================================================="
|
---|
114 | Q
|
---|
115 | ;
|
---|
116 | 3 ; called from above. Display the Spec - Proc problems
|
---|
117 | N MAIDX
|
---|
118 | S MAIDX="MAIDXG"
|
---|
119 | W !!,"Mismatch in the Generated Values of Specialty/SubSpec <-> Proc/Event",!
|
---|
120 | D 31
|
---|
121 | S MAIDX="MAIDXO"
|
---|
122 | W !!,"Mismatch in the User entered Values of Specialty/SubSpec <-> Proc/Event",!
|
---|
123 | D 31
|
---|
124 | Q
|
---|
125 | 31 ;
|
---|
126 | N IT,IS,IP
|
---|
127 | N I,SD,SUBO,I3,CT,J,MY
|
---|
128 | S IT="" F S IT=$O(^XTMP(MAGN,MAIDX,IT)) Q:IT="" D
|
---|
129 | . S IS="" F S IS=$O(^XTMP(MAGN,MAIDX,IT,IS)) Q:IS="" D
|
---|
130 | . . S IP="" F S IP=$O(^XTMP(MAGN,MAIDX,IT,IS,IP)) Q:IP="" D
|
---|
131 | . . . S CT=^(IP)
|
---|
132 | . . . K MY D VALTUX1^MAGGTUX3(.MY,IT,IS,IP) W !,CT," "
|
---|
133 | . . . S I="" F S I=$O(MY(I)) Q:I="" W ?7,MY(I),!
|
---|
134 | . . . I $L($O(^MAG(2005.85,IP,1,"B",""))) W ?35,"Valid specs: "
|
---|
135 | . . . S I3="" F S I3=$O(^MAG(2005.85,IP,1,"B",I3)) Q:'I3 D
|
---|
136 | . . . . W !,?35,$P(^MAG(2005.84,I3,0),"^")
|
---|
137 | . . . . S SUBO=$P(^MAG(2005.84,I3,0),"^",3)
|
---|
138 | . . . . I SUBO W " <",$P(^MAG(2005.84,SUBO,0),"^"),">"
|
---|
139 | . . . . Q
|
---|
140 | . . . K ^TMP($J,"MAGDCT")
|
---|
141 | . . . S SD="" F S SD=$O(^XTMP(MAGN,"MAIDSD",+IT,+IS,+IP,"SD",SD)) Q:SD="" D
|
---|
142 | . . . . S ^TMP($J,"MAGDCT",^XTMP(MAGN,"MAIDSD",+IT,+IS,+IP,"SD",SD))="Desc: "_SD
|
---|
143 | . . . S CT="" F J=1:1:5 S CT=$O(^TMP($J,"MAGDCT",CT),-1) Q:CT="" W !,?7,CT,?15,"Desc: ",^TMP($J,"MAGDCT",CT)
|
---|
144 | . . . W !
|
---|
145 | . . . Q
|
---|
146 | . . Q
|
---|
147 | . Q
|
---|
148 | Q
|
---|