1 | SDAMQ5 ;ALB/MJK - AM Background Job/Disposition Processing ; 05/19/97
|
---|
2 | ;;5.3;Scheduling;**24,125,374**;Aug 13, 1993
|
---|
3 | ;
|
---|
4 | EN(SDBEG,SDEND) ; -- count dispositions
|
---|
5 | N SDIVNM,SDT,SD0,SDDA,SDNAT,DFN,X,SDOE
|
---|
6 | S SDT=SDBEG F S SDT=$O(^DPT("ADIS",SDT)) Q:'SDT!(SDT>SDEND) I $$REQ^SDM1A(.SDT)="CO" D
|
---|
7 | .S DFN=0 F S DFN=$O(^DPT("ADIS",SDT,DFN)) Q:'DFN D
|
---|
8 | ..S SDDA=0 F S SDDA=$O(^DPT("ADIS",SDT,DFN,SDDA)) Q:'SDDA D CHK(.DFN,.SDDA,.SDT)
|
---|
9 | ENQ Q
|
---|
10 | ;
|
---|
11 | CHK(DFN,SDDA,SDT) ; check dispositions
|
---|
12 | N SDOE,SD0,SDIVNM,SDNAT,X,SDERR,SDLOC
|
---|
13 | S SDERR=""
|
---|
14 | G CHKQ:'$D(^DPT(DFN,"DIS",SDDA,0)) S SD0=^(0)
|
---|
15 | I $P(SD0,U,2)=0!($P(SD0,U,2)=1),$P(SD0,U,7),$$DIV^SDAMQ(+$P(SD0,U,4),.SDIVNM,35) D
|
---|
16 | .;CHECK INSTALL DATE FOR PATCH DG*5.3*459 IF BEFORE RELEASE DATE
|
---|
17 | .;SEND TO ERROR CHECKER OTHERWISE SKIP. DBIA:2197
|
---|
18 | .N SDINIEN,SDINDT,SDPCHK S SDPCHK=0
|
---|
19 | .S SDINIEN=$O(^XPD(9.7,"B","DG*5.3*459",0)) D
|
---|
20 | ..I SDINIEN'="" S SDINDT=$$GET1^DIQ(9.7,SDINIEN,2,"I") D
|
---|
21 | ...I SDINDT>SDT S SDPCHK=1
|
---|
22 | .S SDOE=$P(SD0,U,18)
|
---|
23 | .I SDOE="" I SDPCHK S SDERR=1 G CHKERR
|
---|
24 | .I SDOE="" Q
|
---|
25 | .I '$D(^SCE(SDOE,0)) S SDERR=2 G CHKERR
|
---|
26 | .S SDLOC=$P(^SCE(SDOE,0),U,4)
|
---|
27 | .I SDLOC="" S SDERR=3 G CHKERR
|
---|
28 | .I '$D(^PX(815,1,"DHL","B",SDLOC)) S SDERR=4 G CHKERR
|
---|
29 | .S SDNAT='$$CO^SDAMQ(+$$GETDISP^SDVSIT2(DFN,SDT))
|
---|
30 | .S X=$G(^TMP("SDSTATS",$J,SDIVNM,"DISP",102)),^(102)=(X+SDNAT)_U_($P(X,U,2)+1) Q
|
---|
31 | CHKERR .S ^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",SDERR,DFN,SDDA)="" Q
|
---|
32 | CHKQ Q
|
---|
33 | ;
|
---|
34 | BULL(SDIVNM,SDLN,SDTOT) ; build disposition section of bulletin
|
---|
35 | N SDSTOP,NAT,GRAND,OTHER,TNAT,TGRAND
|
---|
36 | I $D(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR")) D ERRLIST
|
---|
37 | D HDR
|
---|
38 | S (SDSTOP,TNAT,TGRAND)=0
|
---|
39 | F S SDSTOP=$O(^TMP("SDSTATS",$J,SDIVNM,"DISP",SDSTOP)) Q:'SDSTOP!(SDSTOP="ERR") S X=^(SDSTOP) D
|
---|
40 | .S NAT=+X,GRAND=+$P(X,U,2)
|
---|
41 | .S TNAT=TNAT+NAT,TGRAND=TGRAND+GRAND
|
---|
42 | .S SDTOT("DIV","NAT")=SDTOT("DIV","NAT")+NAT
|
---|
43 | .S SDTOT("DIV","GRAND")=SDTOT("DIV","GRAND")+GRAND
|
---|
44 | D LINE^SDAMQ3("Dispositions",TNAT,TGRAND)
|
---|
45 | BULLQ Q
|
---|
46 | ;
|
---|
47 | HDR ; header for disposition section of bulletin
|
---|
48 | D SET^SDAMQ3("")
|
---|
49 | D SET^SDAMQ3(" Dispositions")
|
---|
50 | D SET^SDAMQ3(" Requiring Action Total Pct.")
|
---|
51 | D SET^SDAMQ3(" ---------------- ------- -------")
|
---|
52 | Q
|
---|
53 | ERRLIST ; if disposition errors, add to bulletin
|
---|
54 | I $D(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",1)) D SHOWIT(1)
|
---|
55 | I $D(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",2)) D SHOWIT(2)
|
---|
56 | I $D(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",3)) D SHOWIT(3)
|
---|
57 | I $D(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",4)) D SHOWIT(4)
|
---|
58 | Q
|
---|
59 | SHOWIT(SDERR) ; add disposition errors to bulletin
|
---|
60 | N SDDFN,SDDI,SDPAT,Y
|
---|
61 | D SET^SDAMQ3("")
|
---|
62 | D SET^SDAMQ3($P($T(HEADERS+SDERR),"^",2))
|
---|
63 | D SET^SDAMQ3(" (not included in totals)")
|
---|
64 | D SET^SDAMQ3(" -------------------------------------")
|
---|
65 | S SDDFN=""
|
---|
66 | F S SDDFN=$O(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",SDERR,SDDFN)) Q:'SDDFN D
|
---|
67 | .S SDDI=""
|
---|
68 | .F S SDDI=$O(^TMP("SDSTATS",$J,SDIVNM,"DISP","ERR",SDERR,SDDFN,SDDI)) Q:'SDDI D
|
---|
69 | ..S SDPAT=$P(^DPT(SDDFN,0),U,1),Y=(9999999-SDDI) D DD^%DT
|
---|
70 | ..D SET^SDAMQ3(" "_SDPAT_" "_Y)
|
---|
71 | Q
|
---|
72 | HEADERS ; text for message headers
|
---|
73 | ;;^ **** Disposition without encounter pointer: ****
|
---|
74 | ;;^ **** Disposition points to non-existent encounter: ****
|
---|
75 | ;;^ **** Disposition clinic missing: ****
|
---|
76 | ;;^ **** Disposition clinic not in file 815: ****
|
---|
77 | ;
|
---|