1 | ORQQPXRM ; SLC/PJH - Functions for reminder data ;12/04/2007
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**10,85,116,173,187,190,215,243**;Dec 17, 1997;Build 242
|
---|
3 | ;
|
---|
4 | ;ORQQPXRM DIALOG ACTIVE
|
---|
5 | ACTIVE(ORY,ORLIST) D ACTIVE^PXRMRPCC(.ORY,.ORLIST) Q ; DBIA 3080
|
---|
6 | ;
|
---|
7 | ;ORQQPXRM REMINDER EVALUATION
|
---|
8 | ALIST(ORY,ORPT,ORLIST) D ALIST^PXRMRPCA(.ORY,.ORPT,.ORLIST) Q ; DBIA 3078
|
---|
9 | ;
|
---|
10 | ;ORQQPXRM REMINDERS APPLICABLE
|
---|
11 | APPL(ORY,ORPT,ORLOC) D EVALCOVR^ORQQPX(.ORY,ORPT,ORLOC) Q
|
---|
12 | ;D APPL^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078
|
---|
13 | ;
|
---|
14 | ;ORQQPXRM REMINDER CATEGORIES
|
---|
15 | CATEGORY(ORY,ORPT,ORLOC) ;
|
---|
16 | D CATEGORY^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078
|
---|
17 | ;
|
---|
18 | ;ORQQPXRM REMINDER DIALOG
|
---|
19 | DIALOG(ORY,ORREM,DFN) ;
|
---|
20 | ; DBIA 3080
|
---|
21 | N DIEN
|
---|
22 | D DIALOG^PXRMRPCC(.ORY,ORREM,DFN)
|
---|
23 | ;I $G(DFN)'="" D DIALOG^PXRMRPCC(.ORY,ORREM,DFN)
|
---|
24 | ;I $G(DFN)="" D DIALOG^PXRMRPCC(.ORY,ORREM)
|
---|
25 | I $P($G(ORY(1)),U)=-1 Q
|
---|
26 | S DIEN=$G(^PXD(811.9,ORREM,51))
|
---|
27 | S ORY(0)=0_U_+$P($G(^PXRMD(801.41,DIEN,0)),U,17)
|
---|
28 | Q
|
---|
29 | ;
|
---|
30 | ;ORQQPXRM EDUCATION SUBTOPICS
|
---|
31 | EDS(ORY,OREDU) D EDS^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079
|
---|
32 | ;
|
---|
33 | ;ORQQPXRM EDUCATION SUMMARY
|
---|
34 | EDL(ORY,OREM) D EDL^PXRMRPCB(.ORY,OREM) Q ; DBIA 3079
|
---|
35 | ;
|
---|
36 | ;ORQQPXRM EDUCATION TOPIC
|
---|
37 | EDU(ORY,OREDU) D EDU^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079
|
---|
38 | ;
|
---|
39 | ;ORQQPXRM PROGRESS NOTE HEADER
|
---|
40 | HDR(ORY,ORLOC) D HDR^PXRMRPCC(.ORY,ORLOC) Q ; DBIA 3080
|
---|
41 | ;
|
---|
42 | ;ORQQPXRM REMINDERS UNEVALUATED
|
---|
43 | LIST(ORY,ORPT,ORLOC) D GETLIST^ORQQPX(.ORY,ORLOC) Q
|
---|
44 | ;D LIST^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078
|
---|
45 | ;
|
---|
46 | ;ORQQPXRM MENTAL HEALTH
|
---|
47 | MH(ORY,OTEST) ;
|
---|
48 | D MH^PXRMRPCC(.ORY,OTEST) ; DBIA 3080
|
---|
49 | S ORY(0)=0
|
---|
50 | I $$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=1
|
---|
51 | Q
|
---|
52 | ;
|
---|
53 | MHDLL(ORY,DFN,INPUTS) ;
|
---|
54 | N CNT,CNT1,ORRESULT,ORSCORES,TEXT
|
---|
55 | F TEXT="RESULTS","SCORES" D
|
---|
56 | .S CNT=0,CNT1=0
|
---|
57 | .F S CNT=$O(INPUTS(TEXT,CNT)) Q:CNT="" D
|
---|
58 | ..S CNT1=CNT1+1
|
---|
59 | ..I TEXT="RESULTS" S ORRESULT(CNT1)=$G(INPUTS(TEXT,CNT))
|
---|
60 | ..I TEXT="SCORES" S ORSCORES(CNT1)=$G(INPUTS(TEXT,CNT))
|
---|
61 | D MHDLL^PXRMDRSG(.ORY,.ORRESULT,.ORSCORES,DFN)
|
---|
62 | Q
|
---|
63 | ;
|
---|
64 | MHDLLDMS(ORY) ;
|
---|
65 | ;Returns a one if CPRS should used the MH dll. Returns a 0 if CPRS
|
---|
66 | ;should not used the MH dll.
|
---|
67 | S ORY=1
|
---|
68 | I '$$PATCH^XPDUTL("YS*5.01*85") S ORY=0 Q
|
---|
69 | I '$$PATCH^XPDUTL("PXRM*2.0*6") S ORY=0 Q
|
---|
70 | I $$GET^XPAR("SYS","OR USE MH DLL")<1 S ORY=0 Q
|
---|
71 | Q
|
---|
72 | ;
|
---|
73 | ;ORQQPXRM MENTAL HEALTH RESULTS
|
---|
74 | MHR(ORY,RESULT,ORES) ;
|
---|
75 | ; DBIA 3080
|
---|
76 | D MHR^PXRMRPCC(.ORY,RESULT,.ORES)
|
---|
77 | Q
|
---|
78 | ;
|
---|
79 | ;ORQQPXRM MENTAL HEALTH SAVE
|
---|
80 | MHS(ORY,ORES) D MHS^PXRMRPCC(.ORY,.ORES) Q ; DBIA 3080
|
---|
81 | ;
|
---|
82 | MHV(ORY,DFN,NAME,ANS) ;
|
---|
83 | N ORDATA,ORES,X
|
---|
84 | S ORY(0)=0
|
---|
85 | I '$$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=2 Q
|
---|
86 | I '$L(ANS) Q
|
---|
87 | S ORES("DFN")=DFN,ORES("CODE")=NAME
|
---|
88 | F X=1:1:$L(ANS) I $E(ANS,X)'="X" D
|
---|
89 | .;I $E(ANS,X)="T" S $E(ANS,X)=1
|
---|
90 | .;I $E(ANS,X)="F" S $E(ANS,X)=2
|
---|
91 | .S ORES(X)=X_U_$E(ANS,X)
|
---|
92 | D CHECKCR^YTQPXRM4(.ORDATA,.ORES)
|
---|
93 | I $G(ORDATA(2))="OK" S ORY(0)=1 Q
|
---|
94 | S ORY(1)=$P($G(ORDATA(2)),U,2)
|
---|
95 | Q
|
---|
96 | ;
|
---|
97 | ;ORQQPXRM MST UPDATE
|
---|
98 | MST(ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) ;
|
---|
99 | D MST^PXRMRPCC(.ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) Q
|
---|
100 | ;
|
---|
101 | ;ORQQPXRM WOMEN HEALTH RESULT
|
---|
102 | WH(ORY,ORRESULT) ;
|
---|
103 | D WH^PXRMRPCC(.ORY,.ORRESULT) Q
|
---|
104 | ;
|
---|
105 | WHLETTER(ORY,ORIEN) ;
|
---|
106 | D LETTER^WVRPCNO1(.ORY,ORIEN) Q
|
---|
107 | ;
|
---|
108 | WHREPORT(ORY,ORIEN) ;
|
---|
109 | D RESULTS^WVALERTF(.ORY,ORIEN) Q
|
---|
110 | ;
|
---|
111 | ;ORQQPXRM DIALOG PROMPTS
|
---|
112 | PROMPT(ORY,ORDLG,ORDCUR,ORFTYP) ;
|
---|
113 | D PROMPT^PXRMRPCC(.ORY,ORDLG,ORDCUR,ORFTYP) Q ; DBIA 3080
|
---|
114 | ;
|
---|
115 | ;ORQQPXRM REMINDER DETAIL
|
---|
116 | REMDET(ORY,ORPT,ORIEN) D REMDET^PXRMRPCA(.ORY,ORPT,ORIEN) Q ; DBIA 3078
|
---|
117 | ;
|
---|
118 | ;ORQQPXRM REMINDER INQUIRY
|
---|
119 | RES(ORY,ORREM) D RES^PXRMRPCC(.ORY,ORREM) Q ; DBIA 3080
|
---|
120 | ;
|
---|
121 | ;ORQQPXRM REMINDER WEB
|
---|
122 | WEB(ORY,ORREM) D WEB^PXRMRPCA(.ORY,ORREM) Q ; DBIA 3078
|
---|
123 | ;
|
---|
124 | ;PXRM REMINDER DIALOG (TIU)
|
---|
125 | TDIALOG(ORY,ORDLG,DFN) ;
|
---|
126 | D DIALOG^PXRMRPCD(.ORY,ORDLG,DFN)
|
---|
127 | I $P($G(ORY(1)),U)=-1 Q
|
---|
128 | S ORY(0)=0_U_+$P($G(^PXRMD(801.41,ORDLG,0)),U,17)
|
---|
129 | Q
|
---|
130 | ;
|
---|
131 | ACT(REM) ;ORQQPX SEARCH ITEMS - XPAR value screen for active reminders
|
---|
132 | ;Treat a null value as inactive
|
---|
133 | I 'REM Q 0
|
---|
134 | ;Treat a non-existen entry as inactive
|
---|
135 | I $G(^PXD(811.9,REM,0))="" Q 0
|
---|
136 | ;Check IF inactive flag is set
|
---|
137 | I ($T(INACTIVE^PXRM)'=""),$$INACTIVE^PXRM(REM) Q 0 ; DBIA 2182
|
---|
138 | ;Otherwise active
|
---|
139 | Q 1
|
---|
140 | ;
|
---|
141 | REMVER(ORLIST) ;
|
---|
142 | S ORLIST=$$VERSION^XPDUTL("PXRM")
|
---|
143 | Q
|
---|
144 | ;
|
---|
145 | GEC(ORRESULT,IEN,DFN,VISIT,NOTEIEN) ;
|
---|
146 | D API^PXRMGECU(.ORRESULT,IEN,DFN,VISIT,1,NOTEIEN)
|
---|
147 | Q
|
---|
148 | ;
|
---|
149 | GECF(RESULT,DFN,FIN) ;
|
---|
150 | D FINISHED^PXRMGECU(DFN,FIN)
|
---|
151 | Q
|
---|
152 | ;
|
---|
153 | GECP(RESULT,DFN) ;
|
---|
154 | S RESULT=$$STATUS^PXRMGECU(DFN)
|
---|
155 | Q
|
---|
156 | ;
|
---|