OCXOZ10 ;SLC/RJS,CLA - Order Check Scan ;OCT 30,2024 at 12:49
Source file <OCXOZ10.m>
action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
Package | Total | Caller Graph |
---|---|---|
Order Entry Results Reporting | 1 | OCXOZ0H |
Name | Comments | DBIA/ICR reference |
---|---|---|
R71R1A | ; Verify all Event/Elements of Rule #71 'OPIOID MEDICATIONS' Relation #1 'OPIOID MED ORDER AND DUP OPIOID MEDS'
; Called from EL138+5^OCXOZ0H, and EL139+5^OCXOZ0H. |
|
R71R1B | ; Send Order Check, Notication messages and/or Execute code for Rule #71 'OPIOID MEDICATIONS' Relation #1 'OPIOID MED ORDER AND DUP OPIOID MEDS'
; Called from R71R1A+12. |
|
R72R1A | ; Verify all Event/Elements of Rule #72 'AUTO DCED CONTROLLED SUBSTANCE ORDERS' Relation #1 'PHARM DCED AND PHARM HASH MISMATCH'
; Called from EL142+5^OCXOZ0H, and EL143+5^OCXOZ0H. |
|
R72R1B | ; Send Order Check, Notication messages and/or Execute code for Rule #72 'AUTO DCED CONTROLLED SUBSTANCE ORDERS' Relation #1 'PHARM DCED AND PHARM HASH MISMATCH'
; Called from R72R1A+12. |
|
R72R2A | ; Verify all Event/Elements of Rule #72 'AUTO DCED CONTROLLED SUBSTANCE ORDERS' Relation #2 'PHARM DCED AND DEA CERT REVOKED'
; Called from EL142+6^OCXOZ0H, and EL141+5^OCXOZ0H. |
|
CKSUM(STR) | ; Compiler Function: GENERATE STRING CHECKSUM
|
|
GETDATA(DFN,OCXL,OCXDFI) | ; This Local Extrinsic Function returns runtime data
|
|
MCE138() | ; Verify Event/Element: DUP OPIOID MEDS
|
|
MCE139() | ; Verify Event/Element: OPIOID MED ORDER
|
|
MCE141() | ; Verify Event/Element: HL7 DEA CERT REVOKED
|
|
MCE142() | ; Verify Event/Element: HL7 PHARMACY DCED ORDER
|
|
MCE143() | ; Verify Event/Element: HL7 PHARMACY HASH MISMATCH
|
|
NEWRULE(OCXDFN,OCXORD,OCXRUL,OCXREL,OCXNOTF,OCXMESS) | ; Has this rule already been triggered for this order number
|
|
SETAP(ROOT,DD,DATA,DA) | ; Set Rule Event data
|
|
OPIOID(ORPT) | ;determine if pat is receiving opioid med
; rtn 1^opioid drug 1, opioid drug 2, opioid drug3, ... |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^OCXD(860.7 - [#860.7] | NEWRULE+13, NEWRULE+47! |
^OCXS(860.2 - [#860.2] | R71R1A+9, R72R1A+9, R72R2A+9, NEWRULE+38 |
^ORD(100.98 - [#100.98] | OPIOID+5 |
^PSDRUG - [#50] | OPIOID+15 |
^TMP("OCXCHK" | GETDATA+3, MCE138+8, MCE138+11*, MCE139+6, MCE141+5, MCE142+5, MCE143+5, NEWRULE+50, NEWRULE+55 |
^TMP("OCXSWAP" | R72R1B+20 |
^TMP("ORR" | OPIOID+4!, OPIOID+8, OPIOID+9, OPIOID+10, OPIOID+27! |
Name | Line Occurrences |
---|---|
$$CKSUM | NEWRULE+10 |
$$GETDATA | R71R1B+11, R71R1B+12 |
$$MCE138 | R71R1A+12 |
$$MCE139 | R71R1A+11 |
$$MCE141 | R72R2A+12 |
$$MCE142 | R72R1A+11, R72R2A+11 |
$$MCE143 | R72R1A+12 |
$$NEWRULE | R72R1B+27 |
$$OPIOID | MCE138+9, MCE138+11 |
R71R1B | R71R1A+12 |
R72R1B | R72R1A+12 |
SETAP | NEWRULE+23, NEWRULE+30, NEWRULE+36, NEWRULE+48, NEWRULE+57 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
ASC | CKSUM+2~, CKSUM+4* |
CKSUM | CKSUM+2~*, CKSUM+4*, CKSUM+5 |
DA | SETAP~, SETAP+2, SETAP+3 |
DATA | SETAP~, SETAP+1 |
DD | SETAP~, SETAP+2, SETAP+3 |
DFN | R71R1B+11, R71R1B+12, R72R1B+27, R72R1B+28, GETDATA~, GETDATA+3, MCE138+7, MCE139+5 |
DUP | OPIOID+2~ |
DUP( | OPIOID+19*, OPIOID+25, OPIOID+26 |
DUPI | OPIOID+2~, OPIOID+3*, OPIOID+19*, OPIOID+21, OPIOID+24 |
DUPJ | OPIOID+2~, OPIOID+24*, OPIOID+25, OPIOID+26 |
DUPLEN | OPIOID+2~, OPIOID+3*, OPIOID+23*, OPIOID+25, OPIOID+26 |
HOR | OPIOID+7~*, OPIOID+8*, OPIOID+9, OPIOID+10 |
J | OPIOID+7~* |
OCXCKSUM | NEWRULE+7~, NEWRULE+10*, NEWRULE+13, NEWRULE+20 |
OCXCMSG | R71R1B+10~, R71R1B+11*, R71R1B+12*, R71R1B+19, R72R1B+10~, R72R1B+11* |
OCXDATA | R71R1B+10~, R72R1B+10~, R72R1B+18*, R72R1B+20*, R72R1B+21*, R72R1B+28, NEWRULE+7~, NEWRULE+17!, NEWRULE+23, NEWRULE+25! , NEWRULE+30, NEWRULE+32!, NEWRULE+36, NEWRULE+42!, NEWRULE+48, NEWRULE+53!, NEWRULE+57 |
OCXDATA( | NEWRULE+18*, NEWRULE+26*, NEWRULE+27*, NEWRULE+33*, NEWRULE+43*, NEWRULE+44*, NEWRULE+45*, NEWRULE+54*, NEWRULE+55* |
OCXDATA("AT" | NEWRULE+20* |
OCXDATA("B" | NEWRULE+19*, NEWRULE+28*, NEWRULE+34*, NEWRULE+46*, NEWRULE+56* |
>> OCXDF(157 | MCE138+9* |
>> OCXDF(158 | MCE138+11* |
>> OCXDF(37 | MCE138+7*, MCE138+8, MCE138+9, MCE138+11, MCE139+5*, MCE139+6, MCE141+4, MCE141+5, MCE142+4, MCE142+5 , MCE143+4, MCE143+5 |
OCXDFI | GETDATA~, GETDATA+3, NEWRULE+7~, NEWRULE+50*, NEWRULE+54, NEWRULE+55, NEWRULE+56, NEWRULE+57 |
OCXDFN | NEWRULE~, NEWRULE+3, NEWRULE+5*, NEWRULE+13, NEWRULE+18, NEWRULE+19, NEWRULE+20, NEWRULE+23, NEWRULE+29, NEWRULE+47 , NEWRULE+50, NEWRULE+55 |
OCXDUZ | R71R1B+10~, R72R1B+10~, R72R1B+18*, R72R1B+28 |
OCXDUZ( | R72R1B+23* |
OCXE | GETDATA+2~, GETDATA+3* |
OCXELE | NEWRULE+7~, NEWRULE+38*, NEWRULE+43, NEWRULE+44, NEWRULE+45, NEWRULE+46, NEWRULE+47, NEWRULE+48, NEWRULE+50, NEWRULE+52 , NEWRULE+55 |
OCXFORD | R71R1B+10~, R72R1B+10~ |
OCXGR | NEWRULE+7~, NEWRULE+22*, NEWRULE+23, NEWRULE+29*, NEWRULE+30, NEWRULE+35*, NEWRULE+36, NEWRULE+41 |
OCXGR1 | NEWRULE+40~, NEWRULE+41*, NEWRULE+48, NEWRULE+52 |
OCXGR2 | NEWRULE+51~, NEWRULE+52*, NEWRULE+57 |
OCXL | GETDATA~, GETDATA+3 |
OCXLOGD | R71R1B+10~, R72R1B+10~ |
OCXLOGS | R71R1B+10~, R72R1B+10~ |
OCXMESS | NEWRULE~, NEWRULE+4, NEWRULE+10, NEWRULE+27 |
OCXNDX | NEWRULE+7~ |
OCXNMSG | R71R1B+10~, R71R1B+13*, R72R1B+10~, R72R1B+12*, R72R1B+27, R72R1B+28 |
OCXNOTF | NEWRULE~, NEWRULE+4 |
OCXNUM | R71R1B+10~, R72R1B+10~, R72R1B+18*, R72R1B+21*, R72R1B+24*, R72R1B+25*, R72R1B+27, R72R1B+28 |
>> OCXOCMSG( | R71R1B+19* |
>> OCXOCMSG(999999 | R71R1B+19 |
>> OCXOERR | R71R1A+3, R71R1B+3, R71R1B+15, R72R1A+3, R72R1B+3, R72R1B+14, R72R2A+3 |
>> OCXOLOG | NEWRULE+45 |
OCXORD | R72R1B+23, R72R1B+24, NEWRULE~, NEWRULE+5*, NEWRULE+13, NEWRULE+20, NEWRULE+26 |
>> OCXOSRC | R71R1B+11, R72R1B+19, R72R1B+22, R72R1B+25 |
OCXPORD | R71R1B+10~, R72R1B+10~ |
>> OCXPSD | R71R1B+11, R72R1B+25 |
OCXQUIT | R71R1B+10~, R72R1B+10~ |
OCXREL | NEWRULE~, NEWRULE+4, NEWRULE+33, NEWRULE+34, NEWRULE+36, NEWRULE+41, NEWRULE+47 |
OCXRES | MCE138+6~, MCE139+4~, MCE141+3~, MCE142+3~, MCE143+3~ |
OCXRES(138 | MCE138+7*, MCE138+9*, MCE138+11*, MCE138+12 |
OCXRES(139 | MCE139+5* |
OCXRES(141 | MCE141+4* |
OCXRES(142 | MCE142+4* |
OCXRES(143 | MCE143+4* |
OCXRUL | NEWRULE~, NEWRULE+3, NEWRULE+13, NEWRULE+20, NEWRULE+26, NEWRULE+27, NEWRULE+28, NEWRULE+30, NEWRULE+35, NEWRULE+38 , NEWRULE+47 |
>> OCXRULE("R71R1B" | R71R1B+8 |
>> OCXRULE("R72R1B" | R72R1B+8, R72R1B+26* |
OCXTIME | NEWRULE+7~, NEWRULE+9*, NEWRULE+13, NEWRULE+20, NEWRULE+26, NEWRULE+44 |
>> OCXTRACE | R72R1B+28 |
OCXTSP | NEWRULE+7~, NEWRULE+12*, NEWRULE+15, NEWRULE+20 |
>> OCXTSPI | NEWRULE+13 |
OCXTSPL | NEWRULE+7~, NEWRULE+13*, NEWRULE+15 |
ORDCLAS | OPIOID+2~, OPIOID+15*, OPIOID+16 |
ORDERS | OPIOID+2~, OPIOID+25*, OPIOID+26*, OPIOID+28 |
ORDG | OPIOID+2~, OPIOID+3*, OPIOID+5*, OPIOID+6 |
ORDI | OPIOID+2~, OPIOID+13*, OPIOID+14, OPIOID+15 |
>> ORIFN | OPIOID+12 |
ORNUM | OPIOID+2~, OPIOID+11*, OPIOID+12, OPIOID+13, OPIOID+17 |
ORPT | OPIOID~, OPIOID+6 |
ORTEXT | OPIOID+2~, OPIOID+17*, OPIOID+18*, OPIOID+19 |
ORTN | OPIOID+2~, OPIOID+3*, OPIOID+8, OPIOID+20*, OPIOID+28 |
PC | GETDATA+2~, GETDATA+3* |
PTR | CKSUM+2~, CKSUM+4* |
ROOT | SETAP~, SETAP+1, SETAP+2, SETAP+3* |
SEQ | OPIOID+7~*, OPIOID+9*, OPIOID+10 |
STR | CKSUM~, CKSUM+3*, CKSUM+4 |
U | R72R1B+23, R72R1B+24, GETDATA+3, NEWRULE+26, SETAP+2, SETAP+3, OPIOID+15, OPIOID+18, OPIOID+28 |
VAL | GETDATA+2~*, GETDATA+3*, GETDATA+4 |
X | OPIOID+7~, OPIOID+10*, OPIOID+11 |