| 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 | 
|---|