1 | DVBCCHKR ;ALB/GTS-557/THM-CHECK C&P REQUEST FOR CRITICAL DATA ; 4/23/91 7:53 AM
|
---|
2 | ;;2.7;AMIE;**17**;Apr 10, 1995
|
---|
3 | ;
|
---|
4 | ;** Version Changes
|
---|
5 | ; 2.7 - GTS/C&P appt links report (Enhc 13)
|
---|
6 | ;
|
---|
7 | S DVBCMAN="" G EN
|
---|
8 | ;
|
---|
9 | CHECK N OLDX
|
---|
10 | S OLDX=X,DTA=^DVB(396.3,DA,0),DTB=$S($D(^DVB(396.3,DA,1)):^(1),1:"")
|
---|
11 | Q:$P(DTA,U,18)["X" F XI=2,3,4,10,18 I $P(^DVB(396.3,DA,0),U,XI)="" S X=X_XI_U
|
---|
12 | I $P(DTB,U,4)="" S X=X_99_U
|
---|
13 | I $O(^DVB(396.4,"C",DA,0))="" S X=X_98_U ;no exams selected
|
---|
14 | S REQDA=DA,NAME=$P(^DPT(DFN,0),U,1) D:STYLEIND'="4" LINKCK
|
---|
15 | I OLDX'=X DO
|
---|
16 | .S:$E(X,$L(X))="^" X=$E(X,1,($L(X)-1))
|
---|
17 | .S X=X_";"_DA_"~"
|
---|
18 | I X]"" S ^TMP($J,NAME,DFN)=X
|
---|
19 | Q
|
---|
20 | ;
|
---|
21 | PRINT D HDR S NAME=""
|
---|
22 | F XI=0:0 S NAME=$O(^TMP($J,NAME)) Q:NAME=""!($D(DVBCQUIT)) DO
|
---|
23 | .S (DVBAPC,DVBADTA)=""
|
---|
24 | .F DFN=0:0 S DFN=$O(^TMP($J,NAME,DFN)) Q:DFN=""!($D(DVBCQUIT)) DO
|
---|
25 | ..I (IOST?1"C-".E),($Y>(IOSL-9)) D TERM^DVBCUTL3 S:$D(GETOUT) DVBCQUIT=""
|
---|
26 | ..I '$D(DVBCQUIT) DO
|
---|
27 | ...D:($Y>(IOSL-9)) HDR
|
---|
28 | ...D NAMELN ;**Output name
|
---|
29 | ...F DVBAPC=1:1 S DVBADTA=$P(^TMP($J,NAME,DFN),"~",DVBAPC) Q:DVBADTA="" DO
|
---|
30 | ....W !
|
---|
31 | ....S DTA=$P(DVBADTA,";",1),REQDA=$P(DVBADTA,";",2) ;**DVBADTA=Prob pce
|
---|
32 | ....F DVBCX=1:1 S DVBAY=$P(DTA,U,DVBCX) Q:DVBAY=""!($D(DVBCQUIT)) I DVBAY]"" D PRINT1
|
---|
33 | .K DVBAPC,DVBADTA
|
---|
34 | I '$D(DVBCQUIT)&(IOST?1"C-".E) D TERM^DVBCUTL3 S:$D(GETOUT) DVBCQUIT=""
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | PRINT1 I (IOST?1"C-".E),($Y>(IOSL-2)) D TERM^DVBCUTL3 S:$D(GETOUT) DVBCQUIT=""
|
---|
38 | I '$D(DVBCQUIT) DO
|
---|
39 | .I ($Y>(IOSL-2)) D HDR,NAMELN
|
---|
40 | .W ?50,$S(DVBAY=2:"Request date",DVBAY=3:"Regional office number",DVBAY=4:"Requester",DVBAY=10:"Priority of exam",DVBAY=18:"Request status",DVBAY=99:"Routing location",1:"")
|
---|
41 | .W:DVBAY=98 ?50,"** No exams selected **"
|
---|
42 | .W:DVBAY=199 ?50,"** No C&P Appt's linked **"
|
---|
43 | .W !
|
---|
44 | Q
|
---|
45 | ;
|
---|
46 | EN D HOME^%ZIS S FF=IOF
|
---|
47 | W @FF,!!,"This report will check the 2507 REQUEST file for missing crucial data.",!!,"All requests will be checked and those found missing any of the following",!,"will be reported:",!!
|
---|
48 | W "1) Request date",!,"2) Regional office number",!,"3) Requester",!,"4) Priority of exam",!
|
---|
49 | W "5) Request status",!,"6) Routing location",!,"7) No exams selected"
|
---|
50 | D SETSTYLE
|
---|
51 | W:STYLEIND=4 !
|
---|
52 | W:STYLEIND'="4" !,"8) Requests older than 3 days without C&P Appt links ",!
|
---|
53 | W ! K PARAMDA
|
---|
54 | ;
|
---|
55 | ASK W "Do you want to continue" S %=2 D YN^DICN G:$D(DTOUT) EXIT
|
---|
56 | I $D(%Y),%Y["?" W !!,"Enter Y to print the report or N to quit.",!! H 2 G ASK
|
---|
57 | I $D(%),%'=1 G EXIT
|
---|
58 | ;
|
---|
59 | DEV W !! S %ZIS="AEQ" D ^%ZIS K %ZIS G:POP EXIT I $D(IO("Q")) S ZTIO=ION,ZTDESC="2507 exam integrity report",ZTRTN="GO^DVBCCHKR" F I="FF" S ZTSAVE(I)=""
|
---|
60 | I D ^%ZTLOAD W:$D(ZTSK) !!,"Request queued",!! G EXIT
|
---|
61 | ;
|
---|
62 | GO D:'$D(STYLEIND) SETSTYLE
|
---|
63 | K ^TMP($J),LN,DVBCQUIT,GETOUT S (ITEMS,PG)=0,$P(LN,"-",80)="-",HD="C & P Exam Integrity Report",DVBCDT=$$FMTE^XLFDT(DT,"5DZ")
|
---|
64 | U IO F DFN=0:0 S X="",DFN=$O(^DVB(396.3,"B",DFN)) Q:DFN="" F DA=0:0 S DA=$O(^DVB(396.3,"B",DFN,DA)) Q:DA="" D CHECK
|
---|
65 | I '$D(^TMP($J)) D HDR W !!!!!?25,"Nothing found to report",!!
|
---|
66 | I $D(^TMP($J)) D PRINT
|
---|
67 | I ('$D(^TMP("DVBA",$J))&((+STYLEIND'="4")&(+$$RPTCHK=1))) DO
|
---|
68 | .D NOW^%DTC S Y=X X ^DD("DD")
|
---|
69 | .S TODAYDT=Y K Y,X
|
---|
70 | .S SITE=$$SITE^DVBCUTL4
|
---|
71 | .D RPTHD^DVBCULAP W !!!!!?25,"Nothing found to report",!!
|
---|
72 | .I (IOST?1"C-".E) D PAUSE^DVBCUTL4
|
---|
73 | .K TODAYDT,SITE
|
---|
74 | I $D(^TMP("DVBA",$J)) D:(+$$RPTCHK=1) ^DVBCULAP
|
---|
75 | ;
|
---|
76 | EXIT D ^%ZISC
|
---|
77 | W:'$D(ZTQUEUED) @FF,!!!
|
---|
78 | I $D(ZTQUEUED)&($D(DVBCMAN)) D KILL^%ZTLOAD
|
---|
79 | K %,%Y,DTA,DTB,DTOUT,DVBCDT,FF,HD,NAME,PG,I,ZTSAVE,POP,X,XI,Y,ZTDESC,ZTIO,ZTRTN,ZTSK,ITEMS,PRINT,DFN,DA,LN,DVBCMAN,DVBCQUIT,GETOUT,DVBCX,HDRPRT
|
---|
80 | K ^TMP("DVBA",$J),^TMP($J),REQDA,STYLEIND,DVBAY,DIQ,DIR,DIRUT,DUOUT
|
---|
81 | K DR,DIC
|
---|
82 | Q
|
---|
83 | ;
|
---|
84 | HDR S PG=PG+1,HDRPRT="" W @IOF
|
---|
85 | W !,DVBCDT,?(80-$L(HD)\2),HD,?69,"Page: ",PG,!,?(80-$L($$SITE^DVBCUTL4)\2),$$SITE^DVBCUTL4,!!,"Veteran name",?28,"Social Sec #",?50,"Missing items",!
|
---|
86 | Q
|
---|
87 | ;
|
---|
88 | LINKCK ;** Patient DFN's w/ 2507's >3 days w/out links
|
---|
89 | ;** Called - 2507 C&P INTEG RPT'=OFF
|
---|
90 | ;** $D(DVBAFND) - 2507 >3 days old w/out links
|
---|
91 | N DVBAX,DVBADAYS
|
---|
92 | S:'$D(X) X=""
|
---|
93 | S DVBAX=X ;**Save X (prob report var)
|
---|
94 | I +$$STYLE^DVBCUTL8(REQDA)=1 DO
|
---|
95 | .K X,X1,X2
|
---|
96 | .D NOW^%DTC
|
---|
97 | .S X2=($P(^DVB(396.3,REQDA,0),U,5)\1),X1=X\1
|
---|
98 | .K X D ^%DTC
|
---|
99 | .S DVBADAYS=X K X
|
---|
100 | .S X=DVBAX ;**Reset X (prob var)
|
---|
101 | .I +DVBADAYS>3 DO ;**2507 >3 days old, check links
|
---|
102 | ..N APPTDA S APPTDA=""
|
---|
103 | ..K DVBAFND
|
---|
104 | ..I +$O(^DVB(396.95,"AR",REQDA,APPTDA))'>0 DO
|
---|
105 | ...S:$$TRANCHK^DVBCUTA4(REQDA)=0 DVBAFND="" ;**2507 w/out links
|
---|
106 | ..I $D(DVBAFND) DO ;**Unlinked 2507 >3 days old
|
---|
107 | ...S:(+$$RPTCHK=1) ^TMP("DVBA",$J,NAME,DFN)="" ;**TMP("DVBA") - unlinked 2507's
|
---|
108 | ...S X=X_"199^"
|
---|
109 | K DVBAFND
|
---|
110 | Q
|
---|
111 | ;
|
---|
112 | RPTCHK() ;**Check C&P Report Param field - 396.1
|
---|
113 | N PARAMDA,PARAMVAL S PARAMDA=0
|
---|
114 | S PARAMDA=$O(^DVB(396.1,PARAMDA))
|
---|
115 | S PARAMVAL=$P(^DVB(396.1,PARAMDA,0),U,19)
|
---|
116 | Q PARAMVAL
|
---|
117 | ;
|
---|
118 | NAMELN W LN,!!,NAME,?28,$P(^DPT(DFN,0),U,9)
|
---|
119 | Q
|
---|
120 | ;
|
---|
121 | SETSTYLE ;
|
---|
122 | S PARAMDA=0
|
---|
123 | S PARAMDA=$O(^DVB(396.1,PARAMDA))
|
---|
124 | S STYLEIND=$P(^DVB(396.1,PARAMDA,0),U,15)
|
---|
125 | Q
|
---|