[613] | 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
|
---|