- Timestamp:
- Dec 4, 2009, 12:11:15 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WorldVistAEHR/trunk/r/ORDER_ENTRY_RESULTS_REPORTING-OR-OCX--ORRC--ORRJ/OCXOZ0W.m
r613 r623 1 OCXOZ0W ;SLC/RJS,CLA - Order Check Scan ;NOV 8,2009 at 18:44 2 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**32,221,243**;Dec 17,1997;Build 242 3 ;; ;;ORDER CHECK EXPERT version 1.01 released OCT 29,1998 4 ; 5 ; *************************************************************** 6 ; ** Warning: This routine is automatically generated by the ** 7 ; ** Rule Compiler (^OCXOCMP) and ANY changes to this routine ** 8 ; ** will be lost the next time the rule compiler executes. ** 9 ; *************************************************************** 10 ; 11 Q 12 ; 13 R56R1A ; Verify all Event/Elements of Rule #56 'RECENT BARIUM STUDY' Relation #1 'BARIUM' 14 ; Called from EL67+5^OCXOZ0H. 15 ; 16 Q:$G(OCXOERR) 17 ; 18 ; Local Extrinsic Functions 19 ; MCE67( -----------> Verify Event/Element: 'RECENT BARIUM STUDY ORDERED' 20 ; 21 Q:$G(^OCXS(860.2,56,"INACT")) 22 ; 23 I $$MCE67 D R56R1B 24 Q 25 ; 26 R56R1B ; Send Order Check, Notication messages and/or Execute code for Rule #56 'RECENT BARIUM STUDY' Relation #1 'BARIUM' 27 ; Called from R56R1A+10. 28 ; 29 Q:$G(OCXOERR) 30 ; 31 ; Local Extrinsic Functions 32 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 33 ; 34 Q:$D(OCXRULE("R56R1B")) 35 ; 36 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 37 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^14^^Recent Barium study: "_$$GETDATA(DFN,"67^",70)_" ["_$$GETDATA(DFN,"67^",121)_"]" I 1 38 E S OCXCMSG="Recent Barium study: "_$$GETDATA(DFN,"67^",70)_" ["_$$GETDATA(DFN,"67^",121)_"]" 39 S OCXNMSG="" 40 ; 41 Q:$G(OCXOERR) 42 ; 43 ; Send Order Check Message 44 ; 45 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 46 Q 47 ; 48 R57R1A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #1 'CLOZAPINE AND (NO WBC W/IN 7 DAYS OR NO ANC W/IN 7...' 49 ; Called from EL116+5^OCXOZ0H, and EL117+5^OCXOZ0H, and EL118+5^OCXOZ0H. 50 ; 51 Q:$G(OCXOERR) 52 ; 53 ; Local Extrinsic Functions 54 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 55 ; MCE117( ----------> Verify Event/Element: 'CLOZAPINE NO ANC W/IN 7 DAYS' 56 ; MCE118( ----------> Verify Event/Element: 'CLOZAPINE NO WBC W/IN 7 DAYS' 57 ; 58 Q:$G(^OCXS(860.2,57,"INACT")) 59 ; 60 I $$MCE116 D 61 .I $$MCE118 D R57R1B 62 .I $$MCE117 D R57R1B 63 Q 64 ; 65 R57R1B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #1 'CLOZAPINE AND (NO WBC W/IN 7 DAYS OR NO ANC W/IN 7...' 66 ; Called from R57R1A+13. 67 ; 68 Q:$G(OCXOERR) 69 ; 70 ; Local Extrinsic Functions 71 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 72 ; 73 Q:$D(OCXRULE("R57R1B")) 74 ; 75 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 76 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^Clozapine orders require a CBC/Diff within past 7 days. Please order CBC/Diff with WBC and ANC immediately. Most recent results - "_$$GETDATA(DFN,"116^117^118",130) I 1 77 E S OCXCMSG="Clozapine orders require a CBC/Diff within past 7 days. Please order CBC/Diff with WBC and ANC immediately. Most recent results - "_$$GETDATA(DFN,"116^117^118",130) 78 S OCXNMSG="" 79 ; 80 Q:$G(OCXOERR) 81 ; 82 ; Send Order Check Message 83 ; 84 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 85 Q 86 ; 87 R57R2A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #2 'CLOZAPINE AND (WBC < 3.0 OR ANC < 1.5)' 88 ; Called from EL116+6^OCXOZ0H, and EL114+5^OCXOZ0I, and EL119+5^OCXOZ0I. 89 ; 90 Q:$G(OCXOERR) 91 ; 92 ; Local Extrinsic Functions 93 ; MCE114( ----------> Verify Event/Element: 'CLOZAPINE ANC < 1.5' 94 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 95 ; MCE119( ----------> Verify Event/Element: 'CLOZAPINE WBC < 3.0' 96 ; 97 Q:$G(^OCXS(860.2,57,"INACT")) 98 ; 99 I $$MCE116 D 100 .I $$MCE119 D R57R2B 101 .I $$MCE114 D R57R2B 102 Q 103 ; 104 R57R2B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #2 'CLOZAPINE AND (WBC < 3.0 OR ANC < 1.5)' 105 ; Called from R57R2A+13. 106 ; 107 Q:$G(OCXOERR) 108 ; 109 ; Local Extrinsic Functions 110 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 111 ; 112 Q:$D(OCXRULE("R57R2B")) 113 ; 114 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 115 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^WBC < 3.0 and/or ANC < 1.5 - pharmacy cannot fill clozapine order. Most recent results - "_$$GETDATA(DFN,"114^116^119",130) I 1 116 E S OCXCMSG="WBC < 3.0 and/or ANC < 1.5 - pharmacy cannot fill clozapine order. Most recent results - "_$$GETDATA(DFN,"114^116^119",130) 117 S OCXNMSG="" 118 ; 119 Q:$G(OCXOERR) 120 ; 121 ; Send Order Check Message 122 ; 123 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 124 Q 125 ; 126 R57R3A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #3 'CLOZAPINE AND 3.0 <= WBC < 3.5 AND ANC >= 1.5' 127 ; Called from EL116+7^OCXOZ0H, and EL115+5^OCXOZ0I, and EL120+5^OCXOZ0I. 128 ; 129 Q:$G(OCXOERR) 130 ; 131 ; Local Extrinsic Functions 132 ; MCE115( ----------> Verify Event/Element: 'CLOZAPINE ANC >= 1.5' 133 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 134 ; MCE120( ----------> Verify Event/Element: 'CLOZAPINE WBC >= 3.0 & < 3.5' 135 ; 136 Q:$G(^OCXS(860.2,57,"INACT")) 137 ; 138 I $$MCE116 D 139 .I $$MCE120 D 140 ..I $$MCE115 D R57R3B 141 Q 142 ; 143 R57R3B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #3 'CLOZAPINE AND 3.0 <= WBC < 3.5 AND ANC >= 1.5' 144 ; Called from R57R3A+14. 145 ; 146 Q:$G(OCXOERR) 147 ; 148 ; Local Extrinsic Functions 149 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 150 ; 151 Q:$D(OCXRULE("R57R3B")) 152 ; 153 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 154 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^WBC between 3.0 and 3.5 with ANC >= 1.5 - please repeat CBC/Diff including WBC and ANC immediately and twice weekly. Most recent results - "_$$GETDATA(DFN,"115^116^120",130) I 1 155 E S OCXCMSG="WBC between 3.0 and 3.5 with ANC >= 1.5 - please repeat CBC/Diff including WBC and ANC immediately and twice weekly. Most recent results - "_$$GETDATA(DFN,"115^116^120",130) 156 S OCXNMSG="" 157 ; 158 Q:$G(OCXOERR) 159 ; 160 ; Send Order Check Message 161 ; 162 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 163 Q 164 ; 165 R57R4A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #4 'CLOZAPINE AND 1.5 <= ANC < 2.0' 166 ; Called from EL116+8^OCXOZ0H, and EL140+5^OCXOZ0I. 167 ; 168 Q:$G(OCXOERR) 169 ; 170 ; Local Extrinsic Functions 171 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 172 ; MCE140( ----------> Verify Event/Element: 'CLOZAPINE ANC >= 1.5 & < 2.0' 173 ; 174 Q:$G(^OCXS(860.2,57,"INACT")) 175 ; 176 I $$MCE116 D 177 .I $$MCE140 D R57R4B^OCXOZ0X 178 Q 179 ; 180 GETDATA(DFN,OCXL,OCXDFI) ; This Local Extrinsic Function returns runtime data 181 ; 182 N OCXE,VAL,PC S VAL="" 183 F PC=1:1:$L(OCXL,U) S OCXE=$P(OCXL,U,PC) I OCXE S VAL=$G(^TMP("OCXCHK",$J,DFN,OCXE,OCXDFI)) Q:$L(VAL) 184 Q VAL 185 ; 186 MCE114() ; Verify Event/Element: CLOZAPINE ANC < 1.5 187 ; 188 ; OCXDF(37) -> PATIENT IEN data field 189 ; 190 N OCXRES 191 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(114,37)=OCXDF(37) 192 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),114)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),114)) 193 Q 0 194 ; 195 MCE115() ; Verify Event/Element: CLOZAPINE ANC >= 1.5 196 ; 197 ; OCXDF(37) -> PATIENT IEN data field 198 ; 199 N OCXRES 200 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(115,37)=OCXDF(37) 201 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),115)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),115)) 202 Q 0 203 ; 204 MCE116() ; Verify Event/Element: CLOZAPINE DRUG SELECTED 205 ; 206 ; OCXDF(37) -> PATIENT IEN data field 207 ; 208 N OCXRES 209 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(116,37)=OCXDF(37) 210 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),116)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),116)) 211 Q 0 212 ; 213 MCE117() ; Verify Event/Element: CLOZAPINE NO ANC W/IN 7 DAYS 214 ; 215 ; OCXDF(37) -> PATIENT IEN data field 216 ; 217 N OCXRES 218 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(117,37)=OCXDF(37) 219 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),117)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),117)) 220 Q 0 221 ; 222 MCE118() ; Verify Event/Element: CLOZAPINE NO WBC W/IN 7 DAYS 223 ; 224 ; OCXDF(37) -> PATIENT IEN data field 225 ; 226 N OCXRES 227 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(118,37)=OCXDF(37) 228 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),118)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),118)) 229 Q 0 230 ; 231 MCE119() ; Verify Event/Element: CLOZAPINE WBC < 3.0 232 ; 233 ; OCXDF(37) -> PATIENT IEN data field 234 ; 235 N OCXRES 236 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(119,37)=OCXDF(37) 237 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),119)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),119)) 238 Q 0 239 ; 240 MCE120() ; Verify Event/Element: CLOZAPINE WBC >= 3.0 & < 3.5 241 ; 242 ; OCXDF(37) -> PATIENT IEN data field 243 ; 244 N OCXRES 245 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(120,37)=OCXDF(37) 246 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),120)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),120)) 247 Q 0 248 ; 249 MCE140() ; Verify Event/Element: CLOZAPINE ANC >= 1.5 & < 2.0 250 ; 251 ; OCXDF(37) -> PATIENT IEN data field 252 ; 253 N OCXRES 254 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(140,37)=OCXDF(37) 255 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),140)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),140)) 256 Q 0 257 ; 258 MCE67() ; Verify Event/Element: RECENT BARIUM STUDY ORDERED 259 ; 260 ; OCXDF(37) -> PATIENT IEN data field 261 ; 262 N OCXRES 263 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(67,37)=OCXDF(37) 264 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),67)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),67)) 265 Q 0 266 ; 1 OCXOZ0W ;SLC/RJS,CLA - Order Check Scan ;DEC 27,2007 at 06:00 2 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**32,221**;Dec 17,1997 3 ;; ;;ORDER CHECK EXPERT version 1.01 released OCT 29,1998 4 ; 5 ; *************************************************************** 6 ; ** Warning: This routine is automatically generated by the ** 7 ; ** Rule Compiler (^OCXOCMP) and ANY changes to this routine ** 8 ; ** will be lost the next time the rule compiler executes. ** 9 ; *************************************************************** 10 ; 11 Q 12 ; 13 R56R1A ; Verify all Event/Elements of Rule #56 'RECENT BARIUM STUDY' Relation #1 'BARIUM' 14 ; Called from EL67+5^OCXOZ0H. 15 ; 16 Q:$G(OCXOERR) 17 ; 18 ; Local Extrinsic Functions 19 ; MCE67( -----------> Verify Event/Element: 'RECENT BARIUM STUDY ORDERED' 20 ; 21 Q:$G(^OCXS(860.2,56,"INACT")) 22 ; 23 I $$MCE67 D R56R1B 24 Q 25 ; 26 R56R1B ; Send Order Check, Notication messages and/or Execute code for Rule #56 'RECENT BARIUM STUDY' Relation #1 'BARIUM' 27 ; Called from R56R1A+10. 28 ; 29 Q:$G(OCXOERR) 30 ; 31 ; Local Extrinsic Functions 32 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 33 ; 34 Q:$D(OCXRULE("R56R1B")) 35 ; 36 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 37 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^14^^Recent Barium study: "_$$GETDATA(DFN,"67^",70)_" ["_$$GETDATA(DFN,"67^",121)_"]" I 1 38 E S OCXCMSG="Recent Barium study: "_$$GETDATA(DFN,"67^",70)_" ["_$$GETDATA(DFN,"67^",121)_"]" 39 S OCXNMSG="" 40 ; 41 Q:$G(OCXOERR) 42 ; 43 ; Send Order Check Message 44 ; 45 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 46 Q 47 ; 48 R57R1A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #1 'CLOZAPINE AND (WBC < 3.0 OR ANC < 1.5)' 49 ; Called from EL114+5^OCXOZ0H, and EL116+5^OCXOZ0H, and EL119+5^OCXOZ0H. 50 ; 51 Q:$G(OCXOERR) 52 ; 53 ; Local Extrinsic Functions 54 ; MCE114( ----------> Verify Event/Element: 'CLOZAPINE ANC < 1.5' 55 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 56 ; MCE119( ----------> Verify Event/Element: 'CLOZAPINE WBC < 3.0' 57 ; 58 Q:$G(^OCXS(860.2,57,"INACT")) 59 ; 60 I $$MCE116 D 61 .I $$MCE119 D R57R1B 62 .I $$MCE114 D R57R1B 63 Q 64 ; 65 R57R1B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #1 'CLOZAPINE AND (WBC < 3.0 OR ANC < 1.5)' 66 ; Called from R57R1A+13. 67 ; 68 Q:$G(OCXOERR) 69 ; 70 ; Local Extrinsic Functions 71 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 72 ; 73 Q:$D(OCXRULE("R57R1B")) 74 ; 75 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 76 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^WBC < 3.0 and/or ANC < 1.5 - pharmacy cannot fill clozapine order. Most recent results - "_$$GETDATA(DFN,"114^116^119",130) I 1 77 E S OCXCMSG="WBC < 3.0 and/or ANC < 1.5 - pharmacy cannot fill clozapine order. Most recent results - "_$$GETDATA(DFN,"114^116^119",130) 78 S OCXNMSG="" 79 ; 80 Q:$G(OCXOERR) 81 ; 82 ; Send Order Check Message 83 ; 84 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 85 Q 86 ; 87 R57R2A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #2 'CLOZAPINE AND NO WBC W/IN 7 DAYS' 88 ; Called from EL116+6^OCXOZ0H, and EL118+5^OCXOZ0H. 89 ; 90 Q:$G(OCXOERR) 91 ; 92 ; Local Extrinsic Functions 93 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 94 ; MCE118( ----------> Verify Event/Element: 'CLOZAPINE NO WBC W/IN 7 DAYS' 95 ; 96 Q:$G(^OCXS(860.2,57,"INACT")) 97 ; 98 I $$MCE116 D 99 .I $$MCE118 D R57R2B 100 Q 101 ; 102 R57R2B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #2 'CLOZAPINE AND NO WBC W/IN 7 DAYS' 103 ; Called from R57R2A+12. 104 ; 105 Q:$G(OCXOERR) 106 ; 107 ; Local Extrinsic Functions 108 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 109 ; 110 Q:$D(OCXRULE("R57R2B")) 111 ; 112 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 113 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^Clozapine orders require a CBC/Diff within past 7 days. Please order CBC/Diff with WBC and ANC immediately. Most recent results - "_$$GETDATA(DFN,"116^118",130) I 1 114 E S OCXCMSG="Clozapine orders require a CBC/Diff within past 7 days. Please order CBC/Diff with WBC and ANC immediately. Most recent results - "_$$GETDATA(DFN,"116^118",130) 115 S OCXNMSG="" 116 ; 117 Q:$G(OCXOERR) 118 ; 119 ; Send Order Check Message 120 ; 121 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 122 Q 123 ; 124 R57R3A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #3 'CLOZAPINE AND 3.0 <= WBC < 3.5 AND NO ANC W/IN 7 D...' 125 ; Called from EL116+7^OCXOZ0H, and EL117+5^OCXOZ0H, and EL120+5^OCXOZ0I. 126 ; 127 Q:$G(OCXOERR) 128 ; 129 ; Local Extrinsic Functions 130 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 131 ; MCE117( ----------> Verify Event/Element: 'CLOZAPINE NO ANC W/IN 7 DAYS' 132 ; MCE120( ----------> Verify Event/Element: 'CLOZAPINE WBC >= 3.0 & < 3.5' 133 ; 134 Q:$G(^OCXS(860.2,57,"INACT")) 135 ; 136 I $$MCE116 D 137 .I $$MCE120 D 138 ..I $$MCE117 D R57R3B 139 Q 140 ; 141 R57R3B ; Send Order Check, Notication messages and/or Execute code for Rule #57 'CLOZAPINE' Relation #3 'CLOZAPINE AND 3.0 <= WBC < 3.5 AND NO ANC W/IN 7 D...' 142 ; Called from R57R3A+14. 143 ; 144 Q:$G(OCXOERR) 145 ; 146 ; Local Extrinsic Functions 147 ; GETDATA( ---------> GET DATA FROM THE ACTIVE DATA FILE 148 ; 149 Q:$D(OCXRULE("R57R3B")) 150 ; 151 N OCXNMSG,OCXCMSG,OCXPORD,OCXFORD,OCXDATA,OCXNUM,OCXDUZ,OCXQUIT,OCXLOGS,OCXLOGD 152 I ($G(OCXOSRC)="CPRS ORDER PRESCAN") S OCXCMSG=(+OCXPSD)_"^19^^"_$$GETDATA(DFN,"116^117^120",145)_" Most recent results - "_$$GETDATA(DFN,"116^117^120",130) I 1 153 E S OCXCMSG=$$GETDATA(DFN,"116^117^120",145)_" Most recent results - "_$$GETDATA(DFN,"116^117^120",130) 154 S OCXNMSG="" 155 ; 156 Q:$G(OCXOERR) 157 ; 158 ; Send Order Check Message 159 ; 160 S OCXOCMSG($O(OCXOCMSG(999999),-1)+1)=OCXCMSG 161 Q 162 ; 163 R57R4A ; Verify all Event/Elements of Rule #57 'CLOZAPINE' Relation #4 'CLOZAPINE AND 3.0 <= WBC < 3.5 AND ANC >= 1.5' 164 ; Called from EL116+8^OCXOZ0H, and EL120+6^OCXOZ0I, and EL115+5^OCXOZ0I. 165 ; 166 Q:$G(OCXOERR) 167 ; 168 ; Local Extrinsic Functions 169 ; MCE115( ----------> Verify Event/Element: 'CLOZAPINE ANC >= 1.5' 170 ; MCE116( ----------> Verify Event/Element: 'CLOZAPINE DRUG SELECTED' 171 ; MCE120( ----------> Verify Event/Element: 'CLOZAPINE WBC >= 3.0 & < 3.5' 172 ; 173 Q:$G(^OCXS(860.2,57,"INACT")) 174 ; 175 I $$MCE116 D 176 .I $$MCE120 D 177 ..I $$MCE115 D R57R4B^OCXOZ0X 178 Q 179 ; 180 GETDATA(DFN,OCXL,OCXDFI) ; This Local Extrinsic Function returns runtime data 181 ; 182 N OCXE,VAL,PC S VAL="" 183 F PC=1:1:$L(OCXL,U) S OCXE=$P(OCXL,U,PC) I OCXE S VAL=$G(^TMP("OCXCHK",$J,DFN,OCXE,OCXDFI)) Q:$L(VAL) 184 Q VAL 185 ; 186 MCE114() ; Verify Event/Element: CLOZAPINE ANC < 1.5 187 ; 188 ; OCXDF(37) -> PATIENT IEN data field 189 ; 190 N OCXRES 191 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(114,37)=OCXDF(37) 192 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),114)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),114)) 193 Q 0 194 ; 195 MCE115() ; Verify Event/Element: CLOZAPINE ANC >= 1.5 196 ; 197 ; OCXDF(37) -> PATIENT IEN data field 198 ; 199 N OCXRES 200 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(115,37)=OCXDF(37) 201 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),115)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),115)) 202 Q 0 203 ; 204 MCE116() ; Verify Event/Element: CLOZAPINE DRUG SELECTED 205 ; 206 ; OCXDF(37) -> PATIENT IEN data field 207 ; 208 N OCXRES 209 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(116,37)=OCXDF(37) 210 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),116)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),116)) 211 Q 0 212 ; 213 MCE117() ; Verify Event/Element: CLOZAPINE NO ANC W/IN 7 DAYS 214 ; 215 ; OCXDF(37) -> PATIENT IEN data field 216 ; 217 N OCXRES 218 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(117,37)=OCXDF(37) 219 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),117)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),117)) 220 Q 0 221 ; 222 MCE118() ; Verify Event/Element: CLOZAPINE NO WBC W/IN 7 DAYS 223 ; 224 ; OCXDF(37) -> PATIENT IEN data field 225 ; 226 N OCXRES 227 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(118,37)=OCXDF(37) 228 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),118)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),118)) 229 Q 0 230 ; 231 MCE119() ; Verify Event/Element: CLOZAPINE WBC < 3.0 232 ; 233 ; OCXDF(37) -> PATIENT IEN data field 234 ; 235 N OCXRES 236 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(119,37)=OCXDF(37) 237 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),119)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),119)) 238 Q 0 239 ; 240 MCE120() ; Verify Event/Element: CLOZAPINE WBC >= 3.0 & < 3.5 241 ; 242 ; OCXDF(37) -> PATIENT IEN data field 243 ; 244 N OCXRES 245 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(120,37)=OCXDF(37) 246 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),120)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),120)) 247 Q 0 248 ; 249 MCE67() ; Verify Event/Element: RECENT BARIUM STUDY ORDERED 250 ; 251 ; OCXDF(37) -> PATIENT IEN data field 252 ; 253 N OCXRES 254 S OCXDF(37)=$G(DFN) I $L(OCXDF(37)) S OCXRES(67,37)=OCXDF(37) 255 Q:'(OCXDF(37)) 0 I $D(^TMP("OCXCHK",$J,OCXDF(37),67)) Q $G(^TMP("OCXCHK",$J,OCXDF(37),67)) 256 Q 0 257 ;
Note:
See TracChangeset
for help on using the changeset viewer.