- BEXRPAT ; GENERATED FROM 'BEX TRANSACTIONS BY PATIENT' PRINT TEMPLATE (#3799) ; 05/28/12 ; (FILE 90350.1, MARGIN=80)
- G BEGIN
- N W !
- T W:$X ! I '$D(DIOT(2)),DN,$D(IOSL),$S('$D(DIWF):1,$P(DIWF,"B",2):$P(DIWF,"B",2),1:1)+$Y'<IOSL,$D(^UTILITY($J,1))#2,^(1)?1U1P1E.E X ^(1)
- S DISTP=DISTP+1,DILCT=DILCT+1 D:'(DISTP#100) CSTP^DIO2
- Q
- DT I $G(DUZ("LANG"))>1,Y W $$OUT^DIALOGU(Y,"DD") Q
- I Y W $P("JAN^FEB^MAR^APR^MAY^JUN^JUL^AUG^SEP^OCT^NOV^DEC",U,$E(Y,4,5))_" " W:Y#100 $J(Y#100\1,2)_"," W Y\10000+1700 W:Y#1 " "_$E(Y_0,9,10)_":"_$E(Y_"000",11,12) Q
- W Y Q
- M D @DIXX
- Q
- BEGIN ;
- S:'$D(DN) DN=1 S DISTP=$G(DISTP),DILCT=$G(DILCT)
- I $D(DXS)<9 M DXS=^DIPT(3799,"DXS")
- S I(0)="^VEXHRX0(19080.1,",J(0)=90350.1
- X DXS(1,9.2) S X1=DIP(2) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- X DXS(2,9.3) S X1=DIP(5) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- X DXS(3,9.4) S X1=DIP(6) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- X DXS(4,9.4) S X1=DIP(6) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- X DXS(5,9.4) S X1=DIP(7) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- X DXS(6,9.3) S X1=DIP(5) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- S X=$S($D(DC)#2:DC,1:"") S X=X,DIP(1)=$G(X) S X="BEXPG",X1=DIP(1) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- D N:$X>0 Q:'DN W ?0 S X="BEXPAT",X=$S(X=""!(X'?.ANP):"",$D(DIPA($E(X,1,30))):DIPA($E(X,1,30)),1:"") K DIP K:DN Y W $E(X,1,17)
- W ?19 S X="BEXSSN",X=$S(X=""!(X'?.ANP):"",$D(DIPA($E(X,1,30))):DIPA($E(X,1,30)),1:"") K DIP K:DN Y W $E(X,1,6)
- W ?27 X DXS(7,9.2) S X=+$E(X,6,7) S Y=X,X=DIP(2),X=X S X=X_Y K DIP K:DN Y W $E(X,1,5)
- S X=$G(^VEXHRX0(19080.1,D0,0)) W ?34,$E($P(X,U,3),1,8)
- W ?44 S DIP(1)=$S($D(^VEXHRX0(19080.1,D0,0)):^(0),1:"") S X=$P(DIP(1),U,4),X=X K DIP K:DN Y W $E(X,1,1)
- S X=$G(^VEXHRX0(19080.1,D0,0)) W ?47,$E($P(X,U,12),1,1)
- W ?50 S Y=$P(X,U,11) S Y=$S(Y="":Y,$D(^PSDRUG(Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,17)
- W ?69,$E($P(X,U,5),1,10)
- X DXS(8,9.2) S X1=DIP(1) S:X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)") DIPA($E(X,1,30))=X1 S X="" K DIP K:DN Y W X
- K Y
- Q
- HEAD ;
- W !,?44,"T"
- W !,?44,"Y",?47,"M"
- W !,?44,"P",?47,"/"
- W !,?0,"PATIENT",?19,"HRCN",?27,"DATE",?34,"Rx #",?44,"E",?47,"W",?50,"Medication",?69,"RESULT"
- W !,"--------------------------------------------------------------------------------",!!
- BEXRPAT ; GENERATED FROM 'BEX TRANSACTIONS BY PATIENT' PRINT TEMPLATE (#3799) ; 05/28/12 ; (FILE 90350.1, MARGIN=80)
- +1 GOTO BEGIN
- N WRITE !
- T IF $X
- WRITE !
- IF '$DATA(DIOT(2))
- IF DN
- IF $DATA(IOSL)
- IF $SELECT('$DATA(DIWF):1,$PIECE(DIWF,"B",2):$PIECE(DIWF,"B",2),1:1)+$Y'<IOSL
- IF $DATA(^UTILITY($JOB,1))#2
- IF ^(1)?1U1P1E.E
- XECUTE ^(1)
- +1 SET DISTP=DISTP+1
- SET DILCT=DILCT+1
- IF '(DISTP#100)
- DO CSTP^DIO2
- +2 QUIT
- DT IF $GET(DUZ("LANG"))>1
- IF Y
- WRITE $$OUT^DIALOGU(Y,"DD")
- QUIT
- +1 IF Y
- WRITE $PIECE("JAN^FEB^MAR^APR^MAY^JUN^JUL^AUG^SEP^OCT^NOV^DEC",U,$EXTRACT(Y,4,5))_" "
- IF Y#100
- WRITE $JUSTIFY(Y#100\1,2)_","
- WRITE Y\10000+1700
- IF Y#1
- WRITE " "_$EXTRACT(Y_0,9,10)_":"_$EXTRACT(Y_"000",11,12)
- QUIT
- +2 WRITE Y
- QUIT
- M DO @DIXX
- +1 QUIT
- BEGIN ;
- +1 IF '$DATA(DN)
- SET DN=1
- SET DISTP=$GET(DISTP)
- SET DILCT=$GET(DILCT)
- +2 IF $DATA(DXS)<9
- MERGE DXS=^DIPT(3799,"DXS")
- +3 SET I(0)="^VEXHRX0(19080.1,"
- SET J(0)=90350.1
- +4 XECUTE DXS(1,9.2)
- SET X1=DIP(2)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +5 XECUTE DXS(2,9.3)
- SET X1=DIP(5)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +6 XECUTE DXS(3,9.4)
- SET X1=DIP(6)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +7 XECUTE DXS(4,9.4)
- SET X1=DIP(6)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +8 XECUTE DXS(5,9.4)
- SET X1=DIP(7)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +9 XECUTE DXS(6,9.3)
- SET X1=DIP(5)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +10 SET X=$SELECT($DATA(DC)#2:DC,1:"")
- SET X=X
- SET DIP(1)=$GET(X)
- SET X="BEXPG"
- SET X1=DIP(1)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +11 IF $X>0
- DO N
- IF 'DN
- QUIT
- WRITE ?0
- SET X="BEXPAT"
- SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(DIPA($EXTRACT(X,1,30))):DIPA($EXTRACT(X,1,30)),1:"")
- KILL DIP
- IF DN
- KILL Y
- WRITE $EXTRACT(X,1,17)
- +12 WRITE ?19
- SET X="BEXSSN"
- SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(DIPA($EXTRACT(X,1,30))):DIPA($EXTRACT(X,1,30)),1:"")
- KILL DIP
- IF DN
- KILL Y
- WRITE $EXTRACT(X,1,6)
- +13 WRITE ?27
- XECUTE DXS(7,9.2)
- SET X=+$EXTRACT(X,6,7)
- SET Y=X
- SET X=DIP(2)
- SET X=X
- SET X=X_Y
- KILL DIP
- IF DN
- KILL Y
- WRITE $EXTRACT(X,1,5)
- +14 SET X=$GET(^VEXHRX0(19080.1,D0,0))
- WRITE ?34,$EXTRACT($PIECE(X,U,3),1,8)
- +15 WRITE ?44
- SET DIP(1)=$SELECT($DATA(^VEXHRX0(19080.1,D0,0)):^(0),1:"")
- SET X=$PIECE(DIP(1),U,4)
- SET X=X
- KILL DIP
- IF DN
- KILL Y
- WRITE $EXTRACT(X,1,1)
- +16 SET X=$GET(^VEXHRX0(19080.1,D0,0))
- WRITE ?47,$EXTRACT($PIECE(X,U,12),1,1)
- +17 WRITE ?50
- SET Y=$PIECE(X,U,11)
- SET Y=$SELECT(Y="":Y,$DATA(^PSDRUG(Y,0))#2:$PIECE(^(0),U),1:Y)
- WRITE $EXTRACT(Y,1,17)
- +18 WRITE ?69,$EXTRACT($PIECE(X,U,5),1,10)
- +19 XECUTE DXS(8,9.2)
- SET X1=DIP(1)
- IF X]""&(X?.ANP)&(X1'[U)&(X1'["$C(94)")
- SET DIPA($EXTRACT(X,1,30))=X1
- SET X=""
- KILL DIP
- IF DN
- KILL Y
- WRITE X
- +20 KILL Y
- +21 QUIT
- HEAD ;
- +1 WRITE !,?44,"T"
- +2 WRITE !,?44,"Y",?47,"M"
- +3 WRITE !,?44,"P",?47,"/"
- +4 WRITE !,?0,"PATIENT",?19,"HRCN",?27,"DATE",?34,"Rx #",?44,"E",?47,"W",?50,"Medication",?69,"RESULT"
- +5 WRITE !,"--------------------------------------------------------------------------------",!!