ORY14406 ;SLC/RJS,CLA - OCX PACKAGE RULE TRANSPORT ROUTINE (Delete after Install of OR*3*144) ;JUN 12,2002 at 12:20
;;3.0;ORDER ENTRY/RESULTS REPORTING;**144**;Dec 17,1997
;; ;;ORDER CHECK EXPERT version 1.01 released OCT 29,1998
;
S ;
;
D DOT^ORY144ES
;
;
K REMOTE,LOCAL,OPCODE,REF
F LINE=1:1:500 S TEXT=$P($T(DATA+LINE),";",2,999) Q:TEXT I $L(TEXT) D Q:QUIT
.S ^TMP("OCXRULE",$J,$O(^TMP("OCXRULE",$J,"A"),-1)+1)=TEXT
;
G ^ORY14407
;
Q
;
DATA ;
;
;;R^"860.8:",100,54
;;D^ ; ..N OCXGR2
;;R^"860.8:",100,55
;;D^ ; ..S OCXGR2=OCXGR1_","_OCXELE_",1"
;;R^"860.8:",100,56
;;D^ ; ..K OCXDATA
;;R^"860.8:",100,57
;;D^ ; ..S OCXDATA(OCXDFI,0)=OCXDFI
;;R^"860.8:",100,58
;;D^ ; ..S OCXDATA(OCXDFI,"VAL")=^TMP("OCXCHK",$J,OCXDFN,OCXELE,OCXDFI)
;;R^"860.8:",100,59
;;D^ ; ..S OCXDATA("B",OCXDFI,OCXDFI)=""
;;R^"860.8:",100,60
;;D^T+; ..D SETAP(OCXGR2_")","860.71223P","Data Field",$P($G(^OCXS(860.4,OCXDFI,0)),U,1),.OCXDATA,OCXDFI)
;;R^"860.8:",100,61
;;D^T-; ..D SETAP(OCXGR2_")","860.71223P",.OCXDATA,OCXDFI)
;;R^"860.8:",100,62
;;D^ ; ;
;;R^"860.8:",100,63
;;D^ ; Q 1
;;R^"860.8:",100,64
;;D^ ; ;
;;R^"860.8:",100,65
;;D^T+;SETAP(ROOT,DD,ITEM,ITEMNAME,DATA,DA) ; Set Rule Event data
;;R^"860.8:",100,66
;;D^T-;SETAP(ROOT,DD,DATA,DA) ; Set Rule Event data
;;R^"860.8:",100,67
;;D^ ; M @ROOT=DATA
;;R^"860.8:",100,68
;;D^ ; I +$G(DD) S @ROOT@(0)="^"_($G(DD))_"^"_($P($G(@ROOT@(0)),U,3)+1)_"^"_$G(DA)
;;R^"860.8:",100,69
;;D^ ; I '$G(DD) S $P(@ROOT@(0),U,3,4)=($P($G(@ROOT@(0)),U,3)+1)_"^"_$G(DA)
;;R^"860.8:",100,70
;;D^T+; W:$G(OCXTRACE) !,"File Active Data ",$G(ITEM),": ",$G(ITEMNAME)
;;R^"860.8:",100,71
;;D^ ; ;
;;R^"860.8:",100,72
;;D^ ; Q
;;R^"860.8:",100,73
;;D^ ; ;
;;R^"860.8:",100,74
;;D^ ; ;
;;EOR^
;;KEY^860.8:^ORDERABLE ITEM
;;R^"860.8:",.01,"E"
;;D^ORDERABLE ITEM
;;R^"860.8:",.02,"E"
;;D^OI
;;R^"860.8:",1,1
;;D^Extrinsic function returns the orderable item for an order number.
;;R^"860.8:",100,1
;;D^ ;OI(OCXOR) ;func rtns orderable item for an order number (OCXOR)
;;R^"860.8:",100,2
;;D^ ; Q:+$G(OCXOR)<1 ""
;;R^"860.8:",100,3
;;D^ ; N OCXOI S OCXOI=""
;;R^"860.8:",100,4
;;D^ ; S OCXOI=+$G(^OR(100,+$G(OCXOR),.1,1,0))
;;R^"860.8:",100,5
;;D^ ; Q OCXOI
;;R^"860.8:",100,6
;;D^ ; ;
;;EOR^
;;KEY^860.8:^RECENT CREATININE LAB PROCEDURE
;;R^"860.8:",.01,"E"
;;D^RECENT CREATININE LAB PROCEDURE
;;R^"860.8:",.02,"E"
;;D^RECCREAT
;;R^"860.8:",100,1
;;D^ ;RECCREAT(ORDFN,ORDAYS) ;extrinsic function to return most recent
;;R^"860.8:",100,2
;;D^ ; ;SERUM CREATININE within <ORDAYS> in format:
;;R^"860.8:",100,3
;;D^ ; ; test id^result units flag ref range collection d/t
;;R^"860.8:",100,4
;;D^ ; N BDT,CDT,ORY,ORX,ORZ,X,ORI,ORJ,CREARSLT,LABFILE,SPECFILE
;;R^"860.8:",100,5
;;D^ ; Q:'$L($G(ORDFN)) "0^"
;;R^"860.8:",100,6
;;D^ ; Q:'$L($G(ORDAYS)) "0^"
;;R^"860.8:",100,7
;;D^ ; D NOW^%DTC
;;R^"860.8:",100,8
;;D^ ; S BDT=$$FMADD^XLFDT(%,"-"_ORDAYS,"","","")
;;R^"860.8:",100,9
;;D^ ; K %
;;R^"860.8:",100,10
;;D^ ; Q:'$L($G(BDT)) "0^"
;;R^"860.8:",100,11
;;D^ ; S LABFILE=$$TERMLKUP("SERUM CREATININE",.ORY)
;;R^"860.8:",100,12
;;D^ ; Q:$G(LABFILE)'=60 "0^"
;;R^"860.8:",100,13
;;D^ ; Q:+$D(ORY)<1 "0^"
;;R^"860.8:",100,14
;;D^ ; S SPECFILE=$$TERMLKUP("SERUM SPECIMEN",.ORX)
;;R^"860.8:",100,15
;;D^ ; Q:$G(SPECFILE)'=61 "0^"
;;R^"860.8:",100,16
;;D^ ; Q:+$D(ORX)<1 "0^"
;;R^"860.8:",100,17
;;D^ ; S ORI=0 F S ORI=$O(ORY(ORI)) Q:'ORI I +$G(CREARSLT)<1 D
;;R^"860.8:",100,18
;;D^ ; .S ORJ=0 F S ORJ=$O(ORX(ORJ)) Q:'ORJ I +$G(CREARSLT)<1 D
;;R^"860.8:",100,19
;;D^ ; ..S ORZ=$$LOCL^ORQQLR1(ORDFN,ORI,ORJ)
;;R^"860.8:",100,20
;;D^ ; ..Q:'$L($G(ORZ))
;;R^"860.8:",100,21
;;D^ ; ..S CDT=$P(ORZ,U,7)
;;R^"860.8:",100,22
;;D^ ; ..I CDT'<BDT S CREARSLT=1
;;R^"860.8:",100,23
;;D^ ; Q:+$G(CREARSLT)<1 "0^"
;;R^"860.8:",100,24
;;D^ ; Q $P(ORZ,U)_U_$P(ORZ,U,3)_" "_$P(ORZ,U,4)_" "_$P(ORZ,U,5)_" ("_$P(ORZ,U,6)_") "_$$FMTE^XLFDT(CDT,"2P")_U_$P(ORZ,U,3)
;;EOR^
;;KEY^860.8:^RETURN POINTED TO VALUE
;;R^"860.8:",.01,"E"
;;D^RETURN POINTED TO VALUE
;;R^"860.8:",.02,"E"
;;D^POINTER
;;R^"860.8:",1,1
;;D^ ;POINTER(OCXFILE,D0) ; This Local Extrinsic Function gets the value of the name field
;;R^"860.8:",1,2
;;D^ ; ; of record D0 in file OCXFILE
;;R^"860.8:",100,1
;;D^ ;POINTER(OCXFILE,D0) ; This Local Extrinsic Function gets the value of the name field
;;R^"860.8:",100,2
;;D^ ; ; of record D0 in file OCXFILE
;;R^"860.8:",100,3
;;D^T+; I $G(OCXTRACE) W !,"%%%%",?20," FILE: ",$G(OCXFILE)," D0: ",$G(D0)
;;R^"860.8:",100,4
;;D^ ; Q:'$G(D0) "" Q:'$L($G(OCXFILE)) ""
;;R^"860.8:",100,5
;;D^ ; N GLREF
;;R^"860.8:",100,6
;;D^ ; I '(OCXFILE=(+OCXFILE)) S GLREF=U_OCXFILE
;;R^"860.8:",100,7
;;D^ ; E S GLREF=$$FILE^OCXBDTD(+OCXFILE,"GLOBAL NAME") Q:'$L(GLREF) ""
;;R^"860.8:",100,8
;;D^T+; I $G(OCXTRACE) W !,"%%%%",?20," GLREF: ",GLREF," RESOLVES TO: ",$P($G(@(GLREF_(+D0)_",0)")),U,1)
;;R^"860.8:",100,9
;;D^ ; Q $P($G(@(GLREF_(+D0)_",0)")),U,1)
;;R^"860.8:",100,10
;;D^ ; ;
;;EOR^
;;KEY^860.8:^STRING CONTAINS ONE OF A LIST OF VALUES
;;R^"860.8:",.01,"E"
;;D^STRING CONTAINS ONE OF A LIST OF VALUES
;;R^"860.8:",.02,"E"
;;D^CLIST
;;R^"860.8:",100,1
;;D^ ;CLIST(DATA,LIST) ; DOES THE DATA FIELD CONTAIN AN ELEMENT IN THE LIST
;;R^"860.8:",100,2
;;D^ ; ;
;;R^"860.8:",100,3
;;D^T+; W:$G(OCXTRACE) !!,"$$CLIST(",DATA,",""",LIST,""")"
;;R^"860.8:",100,4
;;D^ ; N PC F PC=1:1:$L(LIST,","),0 I PC,$L($P(LIST,",",PC)),(DATA[$P(LIST,",",PC)) Q
;;R^"860.8:",100,5
;;D^ ; Q ''PC
;;EOR^
;;EOF^OCXS(860.8)^1
;;SOF^860.6 ORDER CHECK DATA CONTEXT
;;KEY^860.6:^CPRS ORDER PROTOCOL
;;R^"860.6:",.01,"E"
;;D^CPRS ORDER PROTOCOL
;;R^"860.6:",.02,"E"
;;D^OERR
;;R^"860.6:",1,"E"
;;D^DATA DRIVEN
;;EOR^
;;KEY^860.6:^DATABASE LOOKUP
;;R^"860.6:",.01,"E"
;;D^DATABASE LOOKUP
;;R^"860.6:",.02,"E"
;;D^DL
;;R^"860.6:",1,"E"
;;D^PACKAGE LOOKUP
;;EOR^
;;KEY^860.6:^GENERIC HL7 MESSAGE ARRAY
;;R^"860.6:",.01,"E"
;;D^GENERIC HL7 MESSAGE ARRAY
;;R^"860.6:",.02,"E"
;;D^HL7
;;R^"860.6:",1,"E"
;;D^DATA DRIVEN
;;EOR^
;;EOF^OCXS(860.6)^1
;;SOF^860.5 ORDER CHECK DATA SOURCE
;;KEY^860.5:^DATABASE LOOKUP
;;R^"860.5:",.01,"E"
;;D^DATABASE LOOKUP
;;R^"860.5:",.02,"E"
;;D^DATABASE LOOKUP
;;EOR^
;;KEY^860.5:^HL7 OBSERVATION/RESULT SEGMENT
;;R^"860.5:",.01,"E"
;;D^HL7 OBSERVATION/RESULT SEGMENT
;;R^"860.5:",.02,"E"
;;D^GENERIC HL7 MESSAGE ARRAY
;;EOR^
;;KEY^860.5:^HL7 PATIENT ID SEGMENT
;;R^"860.5:",.01,"E"
;;D^HL7 PATIENT ID SEGMENT
;;R^"860.5:",.02,"E"
;;D^GENERIC HL7 MESSAGE ARRAY
;;EOR^
;;KEY^860.5:^OERR ORDER EVENT FLAG PROTOCOL
;;R^"860.5:",.01,"E"
;;D^OERR ORDER EVENT FLAG PROTOCOL
;;R^"860.5:",.02,"E"
;;D^CPRS ORDER PROTOCOL
;;EOR^
;;EOF^OCXS(860.5)^1
;;SOF^860.4 ORDER CHECK DATA FIELD
;;KEY^860.4:^LAB SPECIMEN ID
;;R^"860.4:",.01,"E"
;;D^LAB SPECIMEN ID
;;R^"860.4:",1,"E"
;;D^LAB SPEC ID
;;R^"860.4:",101,"E"
;;D^NUMERIC
;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",.01,"E"
;;D^GENERIC HL7 MESSAGE ARRAY
;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",.02,"E"
;;D^HL7 OBSERVATION/RESULT SEGMENT
;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",1,"E"
;;D^PATIENT.LAB_SPECIMEN_ID
;;EOR^
;;KEY^860.4:^LAB SPECIMEN NAME
;;R^"860.4:",.01,"E"
;1;
;
ORY14406 ;SLC/RJS,CLA - OCX PACKAGE RULE TRANSPORT ROUTINE (Delete after Install of OR*3*144) ;JUN 12,2002 at 12:20
+1 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**144**;Dec 17,1997
+2 ;; ;;ORDER CHECK EXPERT version 1.01 released OCT 29,1998
+3 ;
S ;
+1 ;
+2 DO DOT^ORY144ES
+3 ;
+4 ;
+5 KILL REMOTE,LOCAL,OPCODE,REF
+6 FOR LINE=1:1:500
SET TEXT=$PIECE($TEXT(DATA+LINE),";",2,999)
IF TEXT
QUIT
IF $LENGTH(TEXT)
Begin DoDot:1
+7 SET ^TMP("OCXRULE",$JOB,$ORDER(^TMP("OCXRULE",$JOB,"A"),-1)+1)=TEXT
End DoDot:1
IF QUIT
QUIT
+8 ;
+9 GOTO ^ORY14407
+10 ;
+11 QUIT
+12 ;
DATA ;
+1 ;
+2 ;;R^"860.8:",100,54
+3 ;;D^ ; ..N OCXGR2
+4 ;;R^"860.8:",100,55
+5 ;;D^ ; ..S OCXGR2=OCXGR1_","_OCXELE_",1"
+6 ;;R^"860.8:",100,56
+7 ;;D^ ; ..K OCXDATA
+8 ;;R^"860.8:",100,57
+9 ;;D^ ; ..S OCXDATA(OCXDFI,0)=OCXDFI
+10 ;;R^"860.8:",100,58
+11 ;;D^ ; ..S OCXDATA(OCXDFI,"VAL")=^TMP("OCXCHK",$J,OCXDFN,OCXELE,OCXDFI)
+12 ;;R^"860.8:",100,59
+13 ;;D^ ; ..S OCXDATA("B",OCXDFI,OCXDFI)=""
+14 ;;R^"860.8:",100,60
+15 ;;D^T+; ..D SETAP(OCXGR2_")","860.71223P","Data Field",$P($G(^OCXS(860.4,OCXDFI,0)),U,1),.OCXDATA,OCXDFI)
+16 ;;R^"860.8:",100,61
+17 ;;D^T-; ..D SETAP(OCXGR2_")","860.71223P",.OCXDATA,OCXDFI)
+18 ;;R^"860.8:",100,62
+19 ;;D^ ; ;
+20 ;;R^"860.8:",100,63
+21 ;;D^ ; Q 1
+22 ;;R^"860.8:",100,64
+23 ;;D^ ; ;
+24 ;;R^"860.8:",100,65
+25 ;;D^T+;SETAP(ROOT,DD,ITEM,ITEMNAME,DATA,DA) ; Set Rule Event data
+26 ;;R^"860.8:",100,66
+27 ;;D^T-;SETAP(ROOT,DD,DATA,DA) ; Set Rule Event data
+28 ;;R^"860.8:",100,67
+29 ;;D^ ; M @ROOT=DATA
+30 ;;R^"860.8:",100,68
+31 ;;D^ ; I +$G(DD) S @ROOT@(0)="^"_($G(DD))_"^"_($P($G(@ROOT@(0)),U,3)+1)_"^"_$G(DA)
+32 ;;R^"860.8:",100,69
+33 ;;D^ ; I '$G(DD) S $P(@ROOT@(0),U,3,4)=($P($G(@ROOT@(0)),U,3)+1)_"^"_$G(DA)
+34 ;;R^"860.8:",100,70
+35 ;;D^T+; W:$G(OCXTRACE) !,"File Active Data ",$G(ITEM),": ",$G(ITEMNAME)
+36 ;;R^"860.8:",100,71
+37 ;;D^ ; ;
+38 ;;R^"860.8:",100,72
+39 ;;D^ ; Q
+40 ;;R^"860.8:",100,73
+41 ;;D^ ; ;
+42 ;;R^"860.8:",100,74
+43 ;;D^ ; ;
+44 ;;EOR^
+45 ;;KEY^860.8:^ORDERABLE ITEM
+46 ;;R^"860.8:",.01,"E"
+47 ;;D^ORDERABLE ITEM
+48 ;;R^"860.8:",.02,"E"
+49 ;;D^OI
+50 ;;R^"860.8:",1,1
+51 ;;D^Extrinsic function returns the orderable item for an order number.
+52 ;;R^"860.8:",100,1
+53 ;;D^ ;OI(OCXOR) ;func rtns orderable item for an order number (OCXOR)
+54 ;;R^"860.8:",100,2
+55 ;;D^ ; Q:+$G(OCXOR)<1 ""
+56 ;;R^"860.8:",100,3
+57 ;;D^ ; N OCXOI S OCXOI=""
+58 ;;R^"860.8:",100,4
+59 ;;D^ ; S OCXOI=+$G(^OR(100,+$G(OCXOR),.1,1,0))
+60 ;;R^"860.8:",100,5
+61 ;;D^ ; Q OCXOI
+62 ;;R^"860.8:",100,6
+63 ;;D^ ; ;
+64 ;;EOR^
+65 ;;KEY^860.8:^RECENT CREATININE LAB PROCEDURE
+66 ;;R^"860.8:",.01,"E"
+67 ;;D^RECENT CREATININE LAB PROCEDURE
+68 ;;R^"860.8:",.02,"E"
+69 ;;D^RECCREAT
+70 ;;R^"860.8:",100,1
+71 ;;D^ ;RECCREAT(ORDFN,ORDAYS) ;extrinsic function to return most recent
+72 ;;R^"860.8:",100,2
+73 ;;D^ ; ;SERUM CREATININE within <ORDAYS> in format:
+74 ;;R^"860.8:",100,3
+75 ;;D^ ; ; test id^result units flag ref range collection d/t
+76 ;;R^"860.8:",100,4
+77 ;;D^ ; N BDT,CDT,ORY,ORX,ORZ,X,ORI,ORJ,CREARSLT,LABFILE,SPECFILE
+78 ;;R^"860.8:",100,5
+79 ;;D^ ; Q:'$L($G(ORDFN)) "0^"
+80 ;;R^"860.8:",100,6
+81 ;;D^ ; Q:'$L($G(ORDAYS)) "0^"
+82 ;;R^"860.8:",100,7
+83 ;;D^ ; D NOW^%DTC
+84 ;;R^"860.8:",100,8
+85 ;;D^ ; S BDT=$$FMADD^XLFDT(%,"-"_ORDAYS,"","","")
+86 ;;R^"860.8:",100,9
+87 ;;D^ ; K %
+88 ;;R^"860.8:",100,10
+89 ;;D^ ; Q:'$L($G(BDT)) "0^"
+90 ;;R^"860.8:",100,11
+91 ;;D^ ; S LABFILE=$$TERMLKUP("SERUM CREATININE",.ORY)
+92 ;;R^"860.8:",100,12
+93 ;;D^ ; Q:$G(LABFILE)'=60 "0^"
+94 ;;R^"860.8:",100,13
+95 ;;D^ ; Q:+$D(ORY)<1 "0^"
+96 ;;R^"860.8:",100,14
+97 ;;D^ ; S SPECFILE=$$TERMLKUP("SERUM SPECIMEN",.ORX)
+98 ;;R^"860.8:",100,15
+99 ;;D^ ; Q:$G(SPECFILE)'=61 "0^"
+100 ;;R^"860.8:",100,16
+101 ;;D^ ; Q:+$D(ORX)<1 "0^"
+102 ;;R^"860.8:",100,17
+103 ;;D^ ; S ORI=0 F S ORI=$O(ORY(ORI)) Q:'ORI I +$G(CREARSLT)<1 D
+104 ;;R^"860.8:",100,18
+105 ;;D^ ; .S ORJ=0 F S ORJ=$O(ORX(ORJ)) Q:'ORJ I +$G(CREARSLT)<1 D
+106 ;;R^"860.8:",100,19
+107 ;;D^ ; ..S ORZ=$$LOCL^ORQQLR1(ORDFN,ORI,ORJ)
+108 ;;R^"860.8:",100,20
+109 ;;D^ ; ..Q:'$L($G(ORZ))
+110 ;;R^"860.8:",100,21
+111 ;;D^ ; ..S CDT=$P(ORZ,U,7)
+112 ;;R^"860.8:",100,22
+113 ;;D^ ; ..I CDT'<BDT S CREARSLT=1
+114 ;;R^"860.8:",100,23
+115 ;;D^ ; Q:+$G(CREARSLT)<1 "0^"
+116 ;;R^"860.8:",100,24
+117 ;;D^ ; Q $P(ORZ,U)_U_$P(ORZ,U,3)_" "_$P(ORZ,U,4)_" "_$P(ORZ,U,5)_" ("_$P(ORZ,U,6)_") "_$$FMTE^XLFDT(CDT,"2P")_U_$P(ORZ,U,3)
+118 ;;EOR^
+119 ;;KEY^860.8:^RETURN POINTED TO VALUE
+120 ;;R^"860.8:",.01,"E"
+121 ;;D^RETURN POINTED TO VALUE
+122 ;;R^"860.8:",.02,"E"
+123 ;;D^POINTER
+124 ;;R^"860.8:",1,1
+125 ;;D^ ;POINTER(OCXFILE,D0) ; This Local Extrinsic Function gets the value of the name field
+126 ;;R^"860.8:",1,2
+127 ;;D^ ; ; of record D0 in file OCXFILE
+128 ;;R^"860.8:",100,1
+129 ;;D^ ;POINTER(OCXFILE,D0) ; This Local Extrinsic Function gets the value of the name field
+130 ;;R^"860.8:",100,2
+131 ;;D^ ; ; of record D0 in file OCXFILE
+132 ;;R^"860.8:",100,3
+133 ;;D^T+; I $G(OCXTRACE) W !,"%%%%",?20," FILE: ",$G(OCXFILE)," D0: ",$G(D0)
+134 ;;R^"860.8:",100,4
+135 ;;D^ ; Q:'$G(D0) "" Q:'$L($G(OCXFILE)) ""
+136 ;;R^"860.8:",100,5
+137 ;;D^ ; N GLREF
+138 ;;R^"860.8:",100,6
+139 ;;D^ ; I '(OCXFILE=(+OCXFILE)) S GLREF=U_OCXFILE
+140 ;;R^"860.8:",100,7
+141 ;;D^ ; E S GLREF=$$FILE^OCXBDTD(+OCXFILE,"GLOBAL NAME") Q:'$L(GLREF) ""
+142 ;;R^"860.8:",100,8
+143 ;;D^T+; I $G(OCXTRACE) W !,"%%%%",?20," GLREF: ",GLREF," RESOLVES TO: ",$P($G(@(GLREF_(+D0)_",0)")),U,1)
+144 ;;R^"860.8:",100,9
+145 ;;D^ ; Q $P($G(@(GLREF_(+D0)_",0)")),U,1)
+146 ;;R^"860.8:",100,10
+147 ;;D^ ; ;
+148 ;;EOR^
+149 ;;KEY^860.8:^STRING CONTAINS ONE OF A LIST OF VALUES
+150 ;;R^"860.8:",.01,"E"
+151 ;;D^STRING CONTAINS ONE OF A LIST OF VALUES
+152 ;;R^"860.8:",.02,"E"
+153 ;;D^CLIST
+154 ;;R^"860.8:",100,1
+155 ;;D^ ;CLIST(DATA,LIST) ; DOES THE DATA FIELD CONTAIN AN ELEMENT IN THE LIST
+156 ;;R^"860.8:",100,2
+157 ;;D^ ; ;
+158 ;;R^"860.8:",100,3
+159 ;;D^T+; W:$G(OCXTRACE) !!,"$$CLIST(",DATA,",""",LIST,""")"
+160 ;;R^"860.8:",100,4
+161 ;;D^ ; N PC F PC=1:1:$L(LIST,","),0 I PC,$L($P(LIST,",",PC)),(DATA[$P(LIST,",",PC)) Q
+162 ;;R^"860.8:",100,5
+163 ;;D^ ; Q ''PC
+164 ;;EOR^
+165 ;;EOF^OCXS(860.8)^1
+166 ;;SOF^860.6 ORDER CHECK DATA CONTEXT
+167 ;;KEY^860.6:^CPRS ORDER PROTOCOL
+168 ;;R^"860.6:",.01,"E"
+169 ;;D^CPRS ORDER PROTOCOL
+170 ;;R^"860.6:",.02,"E"
+171 ;;D^OERR
+172 ;;R^"860.6:",1,"E"
+173 ;;D^DATA DRIVEN
+174 ;;EOR^
+175 ;;KEY^860.6:^DATABASE LOOKUP
+176 ;;R^"860.6:",.01,"E"
+177 ;;D^DATABASE LOOKUP
+178 ;;R^"860.6:",.02,"E"
+179 ;;D^DL
+180 ;;R^"860.6:",1,"E"
+181 ;;D^PACKAGE LOOKUP
+182 ;;EOR^
+183 ;;KEY^860.6:^GENERIC HL7 MESSAGE ARRAY
+184 ;;R^"860.6:",.01,"E"
+185 ;;D^GENERIC HL7 MESSAGE ARRAY
+186 ;;R^"860.6:",.02,"E"
+187 ;;D^HL7
+188 ;;R^"860.6:",1,"E"
+189 ;;D^DATA DRIVEN
+190 ;;EOR^
+191 ;;EOF^OCXS(860.6)^1
+192 ;;SOF^860.5 ORDER CHECK DATA SOURCE
+193 ;;KEY^860.5:^DATABASE LOOKUP
+194 ;;R^"860.5:",.01,"E"
+195 ;;D^DATABASE LOOKUP
+196 ;;R^"860.5:",.02,"E"
+197 ;;D^DATABASE LOOKUP
+198 ;;EOR^
+199 ;;KEY^860.5:^HL7 OBSERVATION/RESULT SEGMENT
+200 ;;R^"860.5:",.01,"E"
+201 ;;D^HL7 OBSERVATION/RESULT SEGMENT
+202 ;;R^"860.5:",.02,"E"
+203 ;;D^GENERIC HL7 MESSAGE ARRAY
+204 ;;EOR^
+205 ;;KEY^860.5:^HL7 PATIENT ID SEGMENT
+206 ;;R^"860.5:",.01,"E"
+207 ;;D^HL7 PATIENT ID SEGMENT
+208 ;;R^"860.5:",.02,"E"
+209 ;;D^GENERIC HL7 MESSAGE ARRAY
+210 ;;EOR^
+211 ;;KEY^860.5:^OERR ORDER EVENT FLAG PROTOCOL
+212 ;;R^"860.5:",.01,"E"
+213 ;;D^OERR ORDER EVENT FLAG PROTOCOL
+214 ;;R^"860.5:",.02,"E"
+215 ;;D^CPRS ORDER PROTOCOL
+216 ;;EOR^
+217 ;;EOF^OCXS(860.5)^1
+218 ;;SOF^860.4 ORDER CHECK DATA FIELD
+219 ;;KEY^860.4:^LAB SPECIMEN ID
+220 ;;R^"860.4:",.01,"E"
+221 ;;D^LAB SPECIMEN ID
+222 ;;R^"860.4:",1,"E"
+223 ;;D^LAB SPEC ID
+224 ;;R^"860.4:",101,"E"
+225 ;;D^NUMERIC
+226 ;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",.01,"E"
+227 ;;D^GENERIC HL7 MESSAGE ARRAY
+228 ;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",.02,"E"
+229 ;;D^HL7 OBSERVATION/RESULT SEGMENT
+230 ;;R^"860.4:","860.41:GENERIC HL7 MESSAGE ARRAY^860.6",1,"E"
+231 ;;D^PATIENT.LAB_SPECIMEN_ID
+232 ;;EOR^
+233 ;;KEY^860.4:^LAB SPECIMEN NAME
+234 ;;R^"860.4:",.01,"E"
+235 ;1;
+236 ;