1 | ORBCMA5 ; SLC/JDL - BCMA Order utility ;2/18/02 13:37
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**133**;Dec 17, 1997
|
---|
3 | ;;BCMA ORDER UTITLITY;**133**;12/12/2001
|
---|
4 | ;
|
---|
5 | GETUDID(Y,INFO) ; Get Unit/Dose Order Form ID
|
---|
6 | S Y=$O(^ORD(101.41,"B","PSJ OR PAT OE",0))
|
---|
7 | S:$L(Y)<1 Y=0
|
---|
8 | Q
|
---|
9 | GETIVID(Y,INFO) ; Get IV Order Form ID
|
---|
10 | S Y=$O(^ORD(101.41,"B","PSJI OR PAT FLUID OE",0))
|
---|
11 | S:$L(Y)<1 Y=0
|
---|
12 | Q
|
---|
13 | GETUD(Y,ODITM) ; get unit dose orderable item
|
---|
14 | ; ODITM: Orderable item ien
|
---|
15 | N DGIDX,OIIEN,UDIEN
|
---|
16 | S DGIDX=0
|
---|
17 | S UDIEN=$O(^ORD(101.44,"B","ORWDSET UD RX",0))
|
---|
18 | F S DGIDX=$O(^ORD(101.44,UDIEN,20,DGIDX)) Q:'DGIDX D
|
---|
19 | . S OIIEN=$P(^ORD(101.44,UDIEN,20,DGIDX,0),U,1)
|
---|
20 | . I OIIEN=ODITM S Y=^ORD(101.44,UDIEN,20,DGIDX,0)
|
---|
21 | K DGIDX,OIIEN,UDIEN
|
---|
22 | Q
|
---|
23 | ODITMBC(Y,XREF,ODLST) ; --Return orderable items info based on ItemIen
|
---|
24 | N CNT,NUM,XRF
|
---|
25 | S CNT=0,NUM=0,XRF=""
|
---|
26 | S:$L(XREF) XRF=XREF
|
---|
27 | F S CNT=$O(ODLST(CNT)) Q:'CNT D FNDINFO(.Y,ODLST(CNT))
|
---|
28 | Q
|
---|
29 | FNDINFO(Y,ODIEN) ;
|
---|
30 | N ODI,CRTM,FRM,XX,FINDIT
|
---|
31 | S XX="",FINDIT=0
|
---|
32 | S FRM="",CRTM=$$NOW^XLFDT
|
---|
33 | F S FRM=$O(^ORD(101.43,XRF,FRM)) Q:FRM="" D
|
---|
34 | . S ODI=0 F S ODI=$O(^ORD(101.43,XRF,FRM,ODI)) Q:'ODI D
|
---|
35 | .. S XX=^ORD(101.43,XRF,FRM,ODI)
|
---|
36 | .. I +$P(XX,U,3),$P(XX,U,3)<CRTM Q
|
---|
37 | .. I ODI=+ODIEN D
|
---|
38 | ... S NUM=NUM+1,FINDIT=1
|
---|
39 | ... I 'XX S Y(NUM)=ODIEN_U_$P(XX,U,2)_U_$P(XX,U,2)
|
---|
40 | ... E S Y(NUM)=ODIEN_U_$P(XX,U,2)_$C(9)_"<"_$P(XX,U,4)_">"_U_$P(XX,U,4)
|
---|
41 | I FINDIT=0 D
|
---|
42 | . S:$D(^ORD(101.43,+ODIEN,0)) XX=^ORD(101.43,+ODIEN,0)
|
---|
43 | . S NUM=NUM+1
|
---|
44 | . S:$L(XX) Y(NUM)=ODIEN_U_$P(XX,U)_U_$P(XX,U)_U_"NF"
|
---|
45 | Q
|
---|