1 | GMTSLRBE ; SLC/JER,KER - Blood Availability Extract ; 08/27/2002
|
---|
2 | ;;2.7;Health Summary;**17,28,56**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ;
|
---|
5 | ; External References
|
---|
6 | ; DBIA 10090 ^DIC(4
|
---|
7 | ; DBIA 528 ^LAB(66
|
---|
8 | ; DBIA 525 ^LR(
|
---|
9 | ; DBIA 527 ^LRD(65
|
---|
10 | ; DBIA 10015 EN^DIQ1 (file #65)
|
---|
11 | ;
|
---|
12 | XTRCT ; Extract Blood Availability
|
---|
13 | N I1,UN,CNT S CNT=0 K ^TMP("LRB",$J)
|
---|
14 | I $L($P(^LR(LRDFN,0),U,5,6)) S ^TMP("LRB",$J,0)=$P(^(0),U,5)_U_$P(^(0),U,6)
|
---|
15 | S UN="" F S UN=$O(^LRD(65,"AP",LRDFN,UN)) Q:UN=""!(CNT'<MAX) D BASET
|
---|
16 | Q
|
---|
17 | BASET ; Sets ^TMP("LRB",$J, with data elements
|
---|
18 | N ADT,DA,DIC,DIQ,DON,DR,EFLG,EDT,UID,UDIV,DTYP,COMP,ABO,RH,VOL,XDT,XMR,XMATCH
|
---|
19 | N IDT,GMI,ULOC
|
---|
20 | S (ADT,EFLG,EDT,UID,DTYP,COMP,ABO,RH,VOL,XMR,ULOC)=""
|
---|
21 | S UID=$P(^LRD(65,UN,0),U),EDT=$P(^(0),U,6),ABO=$P(^(0),U,7),RH=$P(^(0),U,8),VOL=$P(^(0),U,11),COMP=$P(^LAB(66,$P(^LRD(65,UN,0),U,4),0),U)
|
---|
22 | S ADT=$P(^LRD(65,UN,2,LRDFN,0),U,2)
|
---|
23 | S UDIV=$P(^LRD(65,UN,0),U,16),UDIV=$S(UDIV'="":$P(^DIC(4,UDIV,0),U),1:UDIV) ;Gets division unit is located at
|
---|
24 | I $D(^LRD(65,UN,8)) S DIC=65,DIQ="DON",DIQ(0)="E",DR=8.3,DA=UN D EN^DIQ1 S:$D(DON) DTYP=DON(65,UN,8.3,"E")
|
---|
25 | S GMI=$O(^LRD(65,UN,3,0)) I +GMI>0 D
|
---|
26 | . S ULOC=$P($G(^LRD(65,UN,3,GMI,0)),U,4)
|
---|
27 | ; If unit will expire w/in 48 hrs, flag with "*"
|
---|
28 | ; w/in 24 hrs, flag with "**"
|
---|
29 | I EDT>DT S EFLG=$S(EDT-DT<2:"*",EDT-DT<1:"**",1:"")
|
---|
30 | S IDT=9999999-ADT
|
---|
31 | I $S(IDT<GMTS1:1,IDT>GMTS2:1,EDT<DT:1,1:0) Q
|
---|
32 | S X=EDT D REGDT4^GMTSU S EDT=X K X
|
---|
33 | F Q:'$D(^TMP("LRB",$J,IDT)) S IDT=IDT+.0001
|
---|
34 | S ^TMP("LRB",$J,IDT)=EFLG_U_EDT_U_UID_U_COMP_U_VOL_U_ABO_U_RH_U_DTYP_U_UDIV_U_ULOC
|
---|
35 | S CNT=CNT+1
|
---|
36 | Q
|
---|