1 | RGMTDPCT ;GAI/TMG-Count Entries for ^DPT in Dup. Record file ;3-11-98
|
---|
2 | ;;1.0; CLINICAL INFO RESOURCE NETWORK ;;30 Apr 99
|
---|
3 | ;; Counts duplicate entries for ^DPT in Duplicate Record file by each
|
---|
4 | ;; of the following and then by the match percentile.
|
---|
5 | ;; - STATUS (verification status)
|
---|
6 | ;; P = potential duplicate
|
---|
7 | ;; N = verified, not a duplicate
|
---|
8 | ;; V = verified duplicate
|
---|
9 | ;; X = verification in progress
|
---|
10 | ;; R = required review
|
---|
11 | ;; - MERGE STATUS - 0 = not ready
|
---|
12 | ;; 1 = ready
|
---|
13 | ;; 2 = merged
|
---|
14 | ;; 3 = in progress
|
---|
15 | ;;
|
---|
16 | START W !,"Duplicate Record File Statistics Scan",!
|
---|
17 | I '$D(DUZ) W !!,"Your user identification is not set. Please D ^XUP and try again." Q
|
---|
18 | S USER=DUZ,ZTIO="",ZTRTN="SCAN^RGMTDPCT",ZTDESC="Duplicate Record Statistics Search"
|
---|
19 | S ZTSAVE("USER")="" D ^%ZTLOAD I $D(ZTSK) W !," Task# ",ZTSK," queued to run." D ^%ZISC,KILL
|
---|
20 | S:$D(ZTQUEUED) ZTREQ="@"
|
---|
21 | Q
|
---|
22 | ;;
|
---|
23 | SCAN K ^XTMP("RGMTDPCT") S U="^"
|
---|
24 | ;set purge date of XTMP = 30 days
|
---|
25 | S ^XTMP("RGMTDPCT",0)=$$FMADD^XLFDT($$NOW^XLFDT,30)_U_$$NOW^XLFDT_U_"DUPLICATE RECORD CHECK"
|
---|
26 | S ^XTMP("RGMTDPCT","@@@@","STARTED")=$$NOW^XLFDT
|
---|
27 | S (^XTMP("RGMTDPCT","@@@@","SITE"),SITE)=$$SITE^VASITE()
|
---|
28 | S IEN=0 F S IEN=$O(^VA(15,IEN)) Q:+IEN'>0 I $D(^VA(15,+IEN,0)) S NODE0=^(0) D
|
---|
29 | .S ^XTMP("RGMTDPCT","@@@@","CURR IEN")=IEN
|
---|
30 | .S (VSTAT,MSTAT)="ZZZ" S:$P(NODE0,U,3)'="" VSTAT=$P(NODE0,U,3) S:$P(NODE0,U,5)'="" MSTAT=$P(NODE0,U,5)
|
---|
31 | .S MPERC=(($P(NODE0,U,19))\10)*10
|
---|
32 | .S:'$D(^XTMP("RGMTDPCT","VERIF",VSTAT,MPERC)) ^XTMP("RGMTDPCT","VERIF",VSTAT,MPERC)=0 S ^XTMP("RGMTDPCT","VERIF",VSTAT,MPERC)=^XTMP("RGMTDPCT","VERIF",VSTAT,MPERC)+1
|
---|
33 | .S:'$D(^XTMP("RGMTDPCT","MERGE",MSTAT,MPERC)) ^XTMP("RGMTDPCT","MERGE",MSTAT,MPERC)=0 S ^XTMP("RGMTDPCT","MERGE",MSTAT,MPERC)=^XTMP("RGMTDPCT","MERGE",MSTAT,MPERC)+1
|
---|
34 | ;
|
---|
35 | MSG ;
|
---|
36 | S X=^XTMP("RGMTDPCT","@@@@","STARTED")
|
---|
37 | S %DT="T" D ^%DT S X=Y X ^DD("DD") S MSGDT=Y
|
---|
38 | S BLANKS=" "
|
---|
39 | S TXT(.1)="Duplicate Record (^DPT) Statistics"_$J(" ",15)_"Run Date: "_MSGDT
|
---|
40 | S TXT(.2)=""
|
---|
41 | S TXT(.3)=$P(SITE,U,2)_" ("_$P(SITE,U)_")"
|
---|
42 | S TXT(.4)=""
|
---|
43 | S TXT(.5)=" Counts by: Merge Status and Match Percentile:"
|
---|
44 | S LINE=1,STATUS="" F S STATUS=$O(^XTMP("RGMTDPCT","MERGE",STATUS)) Q:STATUS="" D
|
---|
45 | .S MSGSTAT=$S(STATUS=0:"NOT READY",STATUS=1:"READY",STATUS=2:"MERGED",STATUS=3:"IN PROGRESS",STATUS="ZZZ":"UNKNOWN")
|
---|
46 | . S LINE=LINE+.001
|
---|
47 | . S TXT(LINE)=""
|
---|
48 | . S LINE=LINE+.001 S TXT(LINE)=" Merge Status: "_MSGSTAT
|
---|
49 | .S PERC=0 F S PERC=$O(^XTMP("RGMTDPCT","MERGE",STATUS,PERC)) Q:+PERC'>0 S COUNT=^(PERC) D
|
---|
50 | . . S LINE=LINE+.001
|
---|
51 | . . S TEXT=" Percentile: "_PERC_BLANKS,TEXT=$E(TEXT,1,30),TEXT=TEXT_COUNT
|
---|
52 | . . S TXT(LINE)=TEXT
|
---|
53 | S LINE=2,LINE=LINE+.001 S TXT(LINE)=""
|
---|
54 | S LINE=LINE+.001
|
---|
55 | S TXT(LINE)=" Counts by: Verification Status and Match Percentile:"
|
---|
56 | S STATUS="" F S STATUS=$O(^XTMP("RGMTDPCT","VERIF",STATUS)) Q:STATUS="" D
|
---|
57 | . S MSGSTAT=$S(STATUS="P":"POTENTIAL DUP., UNVERIF",STATUS="N":"VERIFIED, NOT A DUPLICATE",STATUS="V":"VERIFIED DUPLICATE",STATUS="X":"VERIF. IN PROGRESS",STATUS="R":"REQUIRES RESOLUTION",1:"")
|
---|
58 | . S LINE=LINE+.001,TXT(LINE)=""
|
---|
59 | . S LINE=LINE+.001,TXT(LINE)=" Verification Status: "_MSGSTAT
|
---|
60 | . S PERC=0 F S PERC=$O(^XTMP("RGMTDPCT","VERIF",STATUS,PERC)) Q:+PERC'>0 S COUNT=^(PERC) D
|
---|
61 | . . S LINE=LINE+.001
|
---|
62 | . . S TEXT=" Percentile: "_PERC_BLANKS,TEXT=$E(TEXT,1,30),TEXT=TEXT_COUNT
|
---|
63 | . . S TXT(LINE)=TEXT
|
---|
64 | S (XMY(DUZ),XMY(USER))="",(XMDUZ)=DUZ
|
---|
65 | S XMSUB="Duplicate Record Counts: "_$P(SITE,U,2)
|
---|
66 | S XMTEXT="TXT(" D ^XMD
|
---|
67 | ;
|
---|
68 | KILL K ^XTMP("RGMTDPCT"),BLANKS,COUNT,IEN,LINE,MPERC,MSGDT,MSGSTAT,MSTAT,NODE0
|
---|
69 | K PERC,SITE,STATUS,TEXT,TXT,USER,VSTAT,X,XMDUZ,XMSUB,XMTEXT,XMY,Y,ZTSAVE
|
---|
70 | K ZTDESC,ZTIO,ZTRTN,ZTSK,%DT
|
---|
71 | Q
|
---|