LRBLDPH ;AVAMC/REG - DONOR PHENOTYPING ;3/9/94 12:51
;;5.2;LAB SERVICE;**247,408**;Sep 27, 1994;Build 8
;Per VHA Directive 97-033 this routine should not be modified. Medical Device # BK970021
Q D END S X="BLOOD BANK" D ^LRUTL G:Y=-1 END S IOP="HOME" D ^%ZIS,L^LRU I LRCAPA S X="DONOR PHENOTYPING",X("NOCODES")=1 D X^LRUWK G:'$D(X) END
D S (DIC,DIE)="^LRE(",DIC(0)="AEQM",D="B^C^"_$S("NAFARMY"[DUZ("AG")&(DUZ("AG")]""):"G4^G",1:"D") W ! D MIX^DIC1 K DIC G:Y<1 END D REST K LR("CK") G D
REST S (DA,LRQ)=+Y D CK^LRU Q:$D(LR("CK")) S Y=$O(^LRE(DA,5,0)) I 'Y W $C(7),!,"Must have donation date to enter phenotyping." Q
W ! S DIC="^LRE(LRQ,5,",DIC(0)="AEQM",DIC("A")="Select donation date phenotyping specimen taken: ",DIC("B")=+^LRE(DA,5,Y,0) D ^DIC K DIC Q:Y<1 S LRI=+Y
D P S DA=LRQ,DIE="^LRE(",DR="[LRBLDAG]" D ^DIE D FRE^LRU D:LRCAPA WK
S DA(1)=LRQ F LRM=0:0 S LRM=$O(LRM(LRM)) Q:'LRM F M=0:0 S M=$O(LRM(LRM,M)) Q:'M I '$D(^LRE(LRQ,LRM,M)) S O=M,X="deleted",Z=LRM(LRM,M)_",.01" D EN^LRUD
K M,LRM,O Q
;
P I '$O(^LRE(LRQ,1.1,0)),'$O(^LRE(LRQ,1.2,0)) Q
W !!?40,"Antigen(s) present",?60,"| Antigen(s) absent",!,LR("%"),!,"Donor Phenotype Record:"
S E=1,(F(1),G)="" F B=0:0 S B=$O(^LRE(LRQ,1.1,B)) Q:'B S I=$P(^LAB(61.3,B,0),"^"),F(E)=F(E)_I_" ",G=G+1 I $L(F(E))>19 S F(E)=$P(F(E)," ",1,G-1),E=E+1,F(E)=I_" ",G=""
S K=E,E=1,(J(1),G)="" F B=0:0 S B=$O(^LRE(LRQ,1.2,B)) Q:'B S I=$P(^LAB(61.3,B,0),"^"),J(E)=J(E)_I_" ",G=G+1 I $L(J(E))>18 S J(E)=$P(J(E)," ",1,G-1),E=E+1,J(E)=I_" ",G=""
S:E>K K=E F E=1:1:K W:E>1 ! W:$D(F(E)) ?40,$J(F(E),19) W:$D(J(E)) ?60,"|",$J(J(E),18)
W ! Q
;
WK D DT^LRBLU K LRG ;enter workload
S:'$D(^LRE(LRQ,5,LRI,99,0)) ^(0)="^65.599PA^^" I '$D(^(LRT,0)) S ^(0)=LRT,X=^LRE(LRQ,5,LRI,99,0),^(0)=$P(X,"^",1,2)_"^"_LRT_"^"_($P(X,"^",4)+1)
S:'$D(^LRE(LRQ,5,LRI,99,LRT,1,0)) ^(0)="^65.5991DA^^" I '$D(^LRE(LRQ,5,LRI,99,LRT,1,LRK,0)) S ^(0)=LRK_"^"_DUZ,X=^LRE(LRQ,5,LRI,99,LRT,1,0),^(0)=$P(X,"^",1,2)_"^"_LRK_"^"_($P(X,"^",4)+1)
F A=1.1,1.2,1.3,1.4 F B=0:0 S B=$O(^LRE(LRQ,A,B)) Q:'B I '$D(LRM(A,B)) F C=0:0 S C=$O(^LAB(61.3,B,9,C)) Q:'C D STF
S:$D(LRG) ^LRE("AA",LRQ,LRI,LRT,LRK)=$P(^LRE(LRQ,5,LRI,0),"^",4) I '$D(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,0)) K ^LRE(LRQ,5,LRI,99,LRT,1,LRK) S X=^LRE(LRQ,5,LRI,99,LRT,1,0),X(1)=$O(^(0)),^(0)=$P(X,"^",1,2)_"^"_X(1)_"^"_($P(X,"^",4)-1)
Q
STF S LRG=1 I $D(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,C,0)) S X=$P(^(0),"^",2) S:'X X=1 S X=X+1,$P(^(0),"^",2,3)=X_"^"_0 Q
S:'$D(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,0)) ^(0)="^65.59911PA^^" S X=^(0),^(0)=$P(X,"^",1,2)_"^"_C_"^"_($P(X,"^",4)+1),^(C,0)=C_"^"_1 Q
;
END D V^LRU Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HLRBLDPH 2609 printed Nov 22, 2024@17:20:49 Page 2
LRBLDPH ;AVAMC/REG - DONOR PHENOTYPING ;3/9/94 12:51
+1 ;;5.2;LAB SERVICE;**247,408**;Sep 27, 1994;Build 8
+2 ;Per VHA Directive 97-033 this routine should not be modified. Medical Device # BK970021
+3 QUIT
DO END
SET X="BLOOD BANK"
DO ^LRUTL
if Y=-1
GOTO END
SET IOP="HOME"
DO ^%ZIS
DO L^LRU
IF LRCAPA
SET X="DONOR PHENOTYPING"
SET X("NOCODES")=1
DO X^LRUWK
if '$DATA(X)
GOTO END
D SET (DIC,DIE)="^LRE("
SET DIC(0)="AEQM"
SET D="B^C^"_$SELECT("NAFARMY"[DUZ("AG")&(DUZ("AG")]""):"G4^G",1:"D")
WRITE !
DO MIX^DIC1
KILL DIC
if Y<1
GOTO END
DO REST
KILL LR("CK")
GOTO D
REST SET (DA,LRQ)=+Y
DO CK^LRU
if $DATA(LR("CK"))
QUIT
SET Y=$ORDER(^LRE(DA,5,0))
IF 'Y
WRITE $CHAR(7),!,"Must have donation date to enter phenotyping."
QUIT
+1 WRITE !
SET DIC="^LRE(LRQ,5,"
SET DIC(0)="AEQM"
SET DIC("A")="Select donation date phenotyping specimen taken: "
SET DIC("B")=+^LRE(DA,5,Y,0)
DO ^DIC
KILL DIC
if Y<1
QUIT
SET LRI=+Y
+2 DO P
SET DA=LRQ
SET DIE="^LRE("
SET DR="[LRBLDAG]"
DO ^DIE
DO FRE^LRU
if LRCAPA
DO WK
+3 SET DA(1)=LRQ
FOR LRM=0:0
SET LRM=$ORDER(LRM(LRM))
if 'LRM
QUIT
FOR M=0:0
SET M=$ORDER(LRM(LRM,M))
if 'M
QUIT
IF '$DATA(^LRE(LRQ,LRM,M))
SET O=M
SET X="deleted"
SET Z=LRM(LRM,M)_",.01"
DO EN^LRUD
+4 KILL M,LRM,O
QUIT
+5 ;
P IF '$ORDER(^LRE(LRQ,1.1,0))
IF '$ORDER(^LRE(LRQ,1.2,0))
QUIT
+1 WRITE !!?40,"Antigen(s) present",?60,"| Antigen(s) absent",!,LR("%"),!,"Donor Phenotype Record:"
+2 SET E=1
SET (F(1),G)=""
FOR B=0:0
SET B=$ORDER(^LRE(LRQ,1.1,B))
if 'B
QUIT
SET I=$PIECE(^LAB(61.3,B,0),"^")
SET F(E)=F(E)_I_" "
SET G=G+1
IF $LENGTH(F(E))>19
SET F(E)=$PIECE(F(E)," ",1,G-1)
SET E=E+1
SET F(E)=I_" "
SET G=""
+3 SET K=E
SET E=1
SET (J(1),G)=""
FOR B=0:0
SET B=$ORDER(^LRE(LRQ,1.2,B))
if 'B
QUIT
SET I=$PIECE(^LAB(61.3,B,0),"^")
SET J(E)=J(E)_I_" "
SET G=G+1
IF $LENGTH(J(E))>18
SET J(E)=$PIECE(J(E)," ",1,G-1)
SET E=E+1
SET J(E)=I_" "
SET G=""
+4 if E>K
SET K=E
FOR E=1:1:K
if E>1
WRITE !
if $DATA(F(E))
WRITE ?40,$JUSTIFY(F(E),19)
if $DATA(J(E))
WRITE ?60,"|",$JUSTIFY(J(E),18)
+5 WRITE !
QUIT
+6 ;
WK ;enter workload
DO DT^LRBLU
KILL LRG
+1 if '$DATA(^LRE(LRQ,5,LRI,99,0))
SET ^(0)="^65.599PA^^"
IF '$DATA(^(LRT,0))
SET ^(0)=LRT
SET X=^LRE(LRQ,5,LRI,99,0)
SET ^(0)=$PIECE(X,"^",1,2)_"^"_LRT_"^"_($PIECE(X,"^",4)+1)
+2 if '$DATA(^LRE(LRQ,5,LRI,99,LRT,1,0))
SET ^(0)="^65.5991DA^^"
IF '$DATA(^LRE(LRQ,5,LRI,99,LRT,1,LRK,0))
SET ^(0)=LRK_"^"_DUZ
SET X=^LRE(LRQ,5,LRI,99,LRT,1,0)
SET ^(0)=$PIECE(X,"^",1,2)_"^"_LRK_"^"_($PIECE(X,"^",4)+1)
+3 FOR A=1.1,1.2,1.3,1.4
FOR B=0:0
SET B=$ORDER(^LRE(LRQ,A,B))
if 'B
QUIT
IF '$DATA(LRM(A,B))
FOR C=0:0
SET C=$ORDER(^LAB(61.3,B,9,C))
if 'C
QUIT
DO STF
+4 if $DATA(LRG)
SET ^LRE("AA",LRQ,LRI,LRT,LRK)=$PIECE(^LRE(LRQ,5,LRI,0),"^",4)
IF '$DATA(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,0))
KILL ^LRE(LRQ,5,LRI,99,LRT,1,LRK)
SET X=^LRE(LRQ,5,LRI,99,LRT,1,0)
SET X(1)=$ORDER(^(0))
SET ^(0)=$PIECE(X,"^",1,2)_"^"_X(1)_"^"_($PIECE(X,"^",4)-1)
+5 QUIT
STF SET LRG=1
IF $DATA(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,C,0))
SET X=$PIECE(^(0),"^",2)
if 'X
SET X=1
SET X=X+1
SET $PIECE(^(0),"^",2,3)=X_"^"_0
QUIT
+1 if '$DATA(^LRE(LRQ,5,LRI,99,LRT,1,LRK,1,0))
SET ^(0)="^65.59911PA^^"
SET X=^(0)
SET ^(0)=$PIECE(X,"^",1,2)_"^"_C_"^"_($PIECE(X,"^",4)+1)
SET ^(C,0)=C_"^"_1
QUIT
+2 ;
END DO V^LRU
QUIT