1 | SCRPTP2 ;ALB/CMM - List of Team's Patients ; 29 Jun 99 04:11PM
|
---|
2 | ;;5.3;Scheduling;**41,53,52,174,177,231,526,520**;AUG 13, 1993;Build 26
|
---|
3 | ;
|
---|
4 | ;List of Team's Patients Report
|
---|
5 | ;
|
---|
6 | TFORMAT(INST,INAME,TIEN,TNAME,PHONE,PC) ; Format team information
|
---|
7 | ;INST - institution ien
|
---|
8 | ;INAME - institution name
|
---|
9 | ;TIEN - team ien
|
---|
10 | ;TNAME - team name
|
---|
11 | ;PHONE - team phone
|
---|
12 | ;PC - primary care team (yes/no)
|
---|
13 | ;
|
---|
14 | I INAME="" S INAME="[BAD DATA]"
|
---|
15 | I TNAME="" S TNAME="[BAD DATA]"
|
---|
16 | S @STORE@("I",INAME,INST)=""
|
---|
17 | S @STORE@("T",INST,TNAME,TIEN)=""
|
---|
18 | S @STORE@(INST)="Division: "_INAME
|
---|
19 | S @STORE@(INST,TIEN)="Team: "_TNAME
|
---|
20 | S $E(@STORE@(INST,TIEN),45)="Team Phone: "_PHONE
|
---|
21 | S @STORE@(INST,TIEN,1)="Primary Care Team: "_PC
|
---|
22 | Q
|
---|
23 | ;
|
---|
24 | PRINTIT(STORE,TITL) ;
|
---|
25 | N INST,INAME,TNAME,TIEN
|
---|
26 | S (NEW,PAGE)=1,STOP=0 W:$E(IOST)="C" @IOF
|
---|
27 | D TITLE^SCRPU3(.PAGE,TITL,132) ;write title
|
---|
28 | D SETH
|
---|
29 | ;
|
---|
30 | S INAME=""
|
---|
31 | F S INAME=$O(@STORE@("I",INAME)) Q:INAME=""!(STOP) D
|
---|
32 | .S INST=$O(@STORE@("I",INAME,""))
|
---|
33 | .Q:INST=""
|
---|
34 | .I ('NEW)&(IOST'?1"C-".E) D NEWP1^SCRPU3(.PAGE,TITL,132)
|
---|
35 | .I ('NEW)&(IOST?1"C-".E) D HOLD^SCRPU3(.PAGE,TITL,132)
|
---|
36 | .Q:STOP
|
---|
37 | .W !,$G(@STORE@(INST)) ;write institution
|
---|
38 | .S TNAME=""
|
---|
39 | .F S TNAME=$O(@STORE@("T",INST,TNAME)) Q:TNAME=""!(STOP) D
|
---|
40 | ..S TIEN=$O(@STORE@("T",INST,TNAME,""))
|
---|
41 | ..Q:TIEN=""
|
---|
42 | ..D TPRINT(INST,TIEN) ;writes team info
|
---|
43 | ..Q:STOP
|
---|
44 | ..;
|
---|
45 | ..I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132)
|
---|
46 | ..I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132)
|
---|
47 | ..Q:STOP
|
---|
48 | ..D HEADER
|
---|
49 | ..I (SORT=3)!(SORT=4) D PRACT(INST,TIEN,.NEW)
|
---|
50 | ..I (SORT=1)!(SORT=2) D PTP(INST,TIEN,.NEW)
|
---|
51 | K NEW,PAGE
|
---|
52 | I 'STOP,$E(IOST)="C" N DIR S DIR(0)="E" W ! D ^DIR
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | PRACT(INST,TIEN,NEW) ;Print by practitioner/patient
|
---|
56 | N PNAME,PIEN,SEC2,ST1,TRD,TRDI
|
---|
57 | S PNAME="",PIEN=""
|
---|
58 | F S PNAME=$O(@STORE@("P",INST,TIEN,PNAME)) Q:PNAME=""!(STOP) D
|
---|
59 | . F S PIEN=$O(@STORE@("P",INST,TIEN,PNAME,PIEN)) Q:PIEN=""!(STOP) D
|
---|
60 | . . I (SORT=1)!(SORT=3) S SEC2="""PT""" ;sort by patient name
|
---|
61 | . . I (SORT=2)!(SORT=4) S SEC2="""PID""" ;sort by last 4 PID
|
---|
62 | . . S ST1=$E(STORE,1,$L(STORE)-1)_","_SEC2_")"
|
---|
63 | . . I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
64 | . . Q:STOP
|
---|
65 | . . I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
66 | . . Q:STOP
|
---|
67 | . . S (TRDI,TRD)=""
|
---|
68 | . . F S TRD=$O(@ST1@(INST,TIEN,TRD)) Q:TRD=""!(STOP) D
|
---|
69 | . . . F S TRDI=$O(@ST1@(INST,TIEN,TRD,TRDI)) Q:TRDI=""!(STOP) D
|
---|
70 | . . . . I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
71 | . . . . Q:STOP
|
---|
72 | . . . . I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
73 | . . . . Q:STOP
|
---|
74 | . . . . I $D(@STORE@(INST,TIEN,PIEN,TRDI)) W !,$G(@STORE@(INST,TIEN,PIEN,TRDI)) ;write column data
|
---|
75 | . . . . N SCACL
|
---|
76 | . . . . S SCACL="" F S SCACL=$O(@STORE@(INST,TIEN,PIEN,TRDI,SCACL)) Q:SCACL="" D
|
---|
77 | . . . . . W !,$G(@STORE@(INST,TIEN,PIEN,TRDI,SCACL))
|
---|
78 | . S NEW=0
|
---|
79 | Q
|
---|
80 | ;
|
---|
81 | PTP(INST,TIEN,NEW) ;Print by patient/practitioner
|
---|
82 | N SEC2,ST1,TRDI,TRD,PNAME,PIEN
|
---|
83 | I (SORT=1)!(SORT=3) S SEC2="""PT""" ;sort by patient name
|
---|
84 | I (SORT=2)!(SORT=4) S SEC2="""PID""" ;sort by last 4 PID
|
---|
85 | S ST1=$E(STORE,1,$L(STORE)-1)_","_SEC2_")"
|
---|
86 | I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132)
|
---|
87 | I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132)
|
---|
88 | Q:STOP
|
---|
89 | S (TRDI,TRD)=""
|
---|
90 | F S TRD=$O(@ST1@(INST,TIEN,TRD)) Q:TRD=""!(STOP) D
|
---|
91 | . F S TRDI=$O(@ST1@(INST,TIEN,TRD,TRDI)) Q:TRDI=""!(STOP) D
|
---|
92 | . . I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
93 | . . Q:STOP
|
---|
94 | . . I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
95 | . . Q:STOP
|
---|
96 | . . S PNAME="",PIEN=""
|
---|
97 | . . F S PNAME=$O(@STORE@("P",INST,TIEN,PNAME)) Q:PNAME=""!(STOP)!(PIEN=0) D
|
---|
98 | . . . F S PIEN=$O(@STORE@("P",INST,TIEN,PNAME,PIEN)) Q:PIEN=""!(STOP) D
|
---|
99 | . . . . I (IOST'?1"C-".E)&($Y>(IOSL-4)) D NEWP1^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
100 | . . . . Q:STOP
|
---|
101 | . . . . I (IOST?1"C-".E)&($Y>(IOSL-4)) D HOLD^SCRPU3(.PAGE,TITL,132) D:'STOP HEADER
|
---|
102 | . . . . Q:STOP
|
---|
103 | . . . . I $D(@STORE@(INST,TIEN,TRDI,PIEN)) W !,$G(@STORE@(INST,TIEN,TRDI,PIEN)) ;write column data
|
---|
104 | . . . . N SCACL
|
---|
105 | . . . . S SCACL="" F S SCACL=$O(@STORE@(INST,TIEN,TRDI,PIEN,SCACL)) Q:SCACL="" D
|
---|
106 | . . . . . W !,$G(@STORE@(INST,TIEN,TRDI,PIEN,SCACL))
|
---|
107 | . S NEW=0
|
---|
108 | Q
|
---|
109 | ;
|
---|
110 | TPRINT(INST,TIEN) ;
|
---|
111 | ;prints team data
|
---|
112 | N NXT
|
---|
113 | I (IOST'?1"C-".E)&($Y>(IOSL-13)) D NEWP1^SCRPU3(.PAGE,TITL,132) W:'STOP !,$G(@STORE@(INST))
|
---|
114 | I (IOST?1"C-".E)&($Y>(IOSL-13)) D HOLD^SCRPU3(.PAGE,TITL,132) W:'STOP !,$G(@STORE@(INST))
|
---|
115 | Q:STOP
|
---|
116 | W !!,$G(@STORE@(INST,TIEN))
|
---|
117 | S NXT=0
|
---|
118 | W !,$G(@STORE@(INST,TIEN,1)) ;write team info
|
---|
119 | Q:'$D(@STORE@(INST,TIEN,"D")) W !
|
---|
120 | S NXT=""
|
---|
121 | ;write team description
|
---|
122 | F S NXT=$O(@STORE@(INST,TIEN,"D",NXT)) Q:NXT=""!(STOP) D
|
---|
123 | .I (IOST'?1"C-".E)&$Y>(IOSL-13) D NEWP1^SCRPU3(.PAGE,TITL,132) W:'STOP !,$G(@STORE@(INST))
|
---|
124 | .I (IOST?1"C-".E)&$Y>(IOSL-13) D HOLD^SCRPU3(.PAGE,TITL,132) W:'STOP !,$G(@STORE@(INST))
|
---|
125 | .Q:STOP
|
---|
126 | .W !,$G(@STORE@(INST,TIEN,"D",NXT))
|
---|
127 | W !!,"[Not Assigned] = Patient assigned to Team but not to a position/provider"
|
---|
128 | W !,"[Inactive Position] = Patient assigned to Team & Position but has no active provider"
|
---|
129 | Q
|
---|
130 | ;
|
---|
131 | HEADER ;prints column headings
|
---|
132 | N NXT
|
---|
133 | F NXT="H1","H2","H3" D
|
---|
134 | .W !,$G(@STORE@(NXT))
|
---|
135 | Q
|
---|
136 | ;
|
---|
137 | SETH ;sets column headings
|
---|
138 | S @STORE@("H2")="Patient Name"
|
---|
139 | S $E(@STORE@("H2"),18)="Pt ID"
|
---|
140 | S $E(@STORE@("H2"),32)="Practitioner"
|
---|
141 | S $E(@STORE@("H2"),56)="Role"
|
---|
142 | S $E(@STORE@("H2"),80)="PC?"
|
---|
143 | S $E(@STORE@("H1"),85)="Last"
|
---|
144 | S $E(@STORE@("H2"),85)="Appt."
|
---|
145 | S $E(@STORE@("H1"),97)="Next"
|
---|
146 | S $E(@STORE@("H2"),97)="Appt."
|
---|
147 | S $E(@STORE@("H2"),109)="Associated Clinic"
|
---|
148 | S $P(@STORE@("H3"),"=",133)=""
|
---|
149 | Q
|
---|