1 | PSASIG ;BIR/JMB-Transfer Signature Sheet ;7/23/97
|
---|
2 | ;;3.0; DRUG ACCOUNTABILITY/INVENTORY INTERFACE;; 10/24/97
|
---|
3 | ;This routine prints transfer signature sheets.
|
---|
4 | ;
|
---|
5 | TEMP ;Entry point for printing immediately after transfer is entered. It is
|
---|
6 | ;called by PSATRAN1. All transactions are placed in ^TMP("PSASIG",$J)
|
---|
7 | ;while inputing the transaction. The transfer sheets are printed using
|
---|
8 | ;this array.
|
---|
9 | W ! S %ZIS="Q" D ^%ZIS G:POP EXIT
|
---|
10 | I $D(IO("Q")) D G EXIT
|
---|
11 | .S ZTDESC="Drug Acct.-Print Transfer Signature Sheets",ZTRTN="TQUE^PSASIG"
|
---|
12 | .S ZTSAVE("^TMP(""PSASIG"",$J,")="" D ^%ZTLOAD
|
---|
13 | TQUE S PSAOUT=0,PSAFIRST=1,PSASLN="",$P(PSASLN,"-",80)="",PSADLN="",$P(PSADLN,"=",80)=""
|
---|
14 | D NOW^%DTC S Y=+$E(%,1,12) X ^DD("DD") S PSARPDT=Y
|
---|
15 | S PSAFROM=0 F S PSAFROM=+$O(^TMP("PSASIG",$J,PSAFROM)) Q:'PSAFROM!(PSAOUT) S PSATO=0 F S PSATO=+$O(^TMP("PSASIG",$J,PSAFROM,PSATO)) Q:'PSATO!(PSAOUT) D
|
---|
16 | .S PSAPG=0,PSALOC=PSAFROM D SITES^PSAUTL1 S PSAFROMN=$P(^PSD(58.8,PSALOC,0),"^")_PSACOMB
|
---|
17 | .S PSALOC=PSATO D SITES^PSAUTL1 S PSATON=$P(^PSD(58.8,PSALOC,0),"^")_PSACOMB
|
---|
18 | .D HDR Q:PSAOUT
|
---|
19 | .S PSADA=0 F S PSADA=$O(^TMP("PSASIG",$J,PSAFROM,PSATO,PSADA)) Q:'PSADA!(PSAOUT) D PRINT S PSAFIRST=0
|
---|
20 | EXIT I $E(IOST)'="C" W @IOF
|
---|
21 | I $E(IOST,1,2)="C-",'PSAOUT D
|
---|
22 | .S PSASS=21-$Y F PSAKK=1:1:PSASS W !
|
---|
23 | .S DIR(0)="E",DIR("A")="END OF REPORT! Press <RET> to return to the menu" D ^DIR K DIR W @IOF
|
---|
24 | D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@" K IO("Q")
|
---|
25 | K ^TMP("PSASIG",$J),%,%ZIS,DIR,DTOUT,PSABAL,PSABEG,PSACHK,PSACNT,PSACOMB,PSADA,PSADLN,PSADRG,PSADT,PSAEND,PSAFIRST,PSAFROM,PSAFROMN,PSAKK
|
---|
26 | K PSALOC,PSALOCA,PSALOCN,PSANODE,PSAOUT,PSAPG,PSAQTY,PSAREPRT,PSARPDT,PSASAVE,PSASEL,PSASLN,PSASS,PSATO,PSATON,PSATRAN,PSATRDT,PSAWHO,Y,ZTDESC,ZTRTN,ZTSAVE
|
---|
27 | Q
|
---|
28 | ;
|
---|
29 | REPRINT ;Entry point for Transfer Signature Sheets. It prompts for the
|
---|
30 | ;dispensing pharmacy location, receiving pharmacy location, beginning
|
---|
31 | ;date, then ending date.
|
---|
32 | S PSAREPRT=1,(PSACNT,PSAOUT)=0,PSATRAN="F"
|
---|
33 | D ^PSAUTL3 G:PSAOUT EXIT S PSACNT=0,PSACHK=$O(PSALOC(""))
|
---|
34 | I PSACHK="",'PSALOC W !,"There are no active pharmacy locations." G EXIT
|
---|
35 | S PSAFROM=+PSALOC,PSAFROMN=PSALOCN D TO^PSATRAN
|
---|
36 | D BDATE^PSAPV
|
---|
37 | W ! S %ZIS="Q" D ^%ZIS G:POP EXIT
|
---|
38 | I $D(IO("Q")) D G EXIT
|
---|
39 | .S ZTDESC="Drug Acct.-Reprint Transfer Signature Sheets",ZTRTN="RQUE^PSASIG"
|
---|
40 | .F PSASAVE="PSABEG","PSAEND","PSAFROM","PSAFROMN","PSATO","PSATON" S:$D(PSASAVE) ZTSAVE(PSASAVE)=""
|
---|
41 | .S ZTSAVE("^TMP(""PSASIG"",$J,")="" D ^%ZTLOAD
|
---|
42 | RQUE S (PSAPG,PSAOUT)=0,PSAREPRT=1,PSASLN="",$P(PSASLN,"-",80)="",PSADLN="",$P(PSADLN,"=",80)="",PSADT=PSABEG
|
---|
43 | D NOW^%DTC S Y=+$E(%,1,12) X ^DD("DD") S PSARPDT=Y,PSAFIRST=1
|
---|
44 | D HDR S PSAFIRST=0
|
---|
45 | F S PSADT=+$O(^PSD(58.81,"AF",PSADT)) Q:'PSADT!($P(PSADT,".")>PSAEND)!(PSAOUT) S PSADA=0 F S PSADA=+$O(^PSD(58.81,"AF",PSADT,PSAFROM,24,PSADA)) Q:'PSADA!(PSAOUT) D
|
---|
46 | .S PSANODE=$G(^PSD(58.81,PSADA,0)) I $P(PSANODE,"^",6)<0,$P($G(^PSD(58.81,+$P(PSANODE,"^",17),0)),"^",3)=PSATO D PRINT
|
---|
47 | G EXIT
|
---|
48 | ;
|
---|
49 | PRINT S PSANODE=$G(^PSD(58.81,PSADA,0)),PSATRDT=$E($$FMTE^XLFDT($P(PSANODE,"^",4),1),1,18),PSADRG=$P(PSANODE,"^",5)
|
---|
50 | S PSAQTY=$P(PSANODE,"^",6),PSAWHO=$P($G(^VA(200,+$P(PSANODE,"^",7),0)),"^"),PSABAL=+$P(PSANODE,"^",10)
|
---|
51 | S:PSAQTY<0 PSAQTY=-PSAQTY D:$Y+7>IOSL HDR Q:PSAOUT
|
---|
52 | W !,PSATRDT,?20,$J(PSAQTY,6),?30,$S($P($G(^PSDRUG(PSADRG,0)),"^")'="":$P($G(^PSDRUG(PSADRG,0)),"^"),1:"UNKNOWN"),?73,$S(+PSABAL:$J((PSABAL-PSAQTY),6),1:"UNKNOWN")
|
---|
53 | W !!,?2,"Dispensed by: "_$S(PSAWHO'="":PSAWHO,1:"_____________________"),?40,"Rec'd by: ____________________________"
|
---|
54 | W !,?20,"(Full Name)",?55,"(Full Name)",!,PSADLN
|
---|
55 | Q
|
---|
56 | ;
|
---|
57 | HDR ;Header
|
---|
58 | I $E(IOST,1,2)="C-",'PSAFIRST D I 'Y S PSAOUT=1 Q
|
---|
59 | .S PSASS=21-$Y F PSAKK=1:1:PSASS W !
|
---|
60 | .S DIR(0)="E" D ^DIR K DIR
|
---|
61 | I $E(IOST,1,2)="C-",'PSAPG W @IOF
|
---|
62 | W:$E(IOST,1,2)'="C-"&('PSAPG)&('PSAFIRST) @IOF
|
---|
63 | W:PSAPG @IOF S PSAPG=PSAPG+1
|
---|
64 | W:$G(PSAREPRT) !,?32,"*** REPRINT ***"
|
---|
65 | W !,PSARPDT,?20,"DRUG ACCOUNTABILITY/INVENTORY INTERFACE",?72,"Page: ",PSAPG
|
---|
66 | W !?18,"DRUG TRANSFER BETWEEN PHARMACIES SIGNATURE SHEET"
|
---|
67 | W:$L(PSAFROMN)>76 !!,$P(PSAFROMN,"(IP)",1)_"(IP)",!?17,$P(PSAFROMN,"(IP)",2) W:$L(PSAFROMN)<77 !?((80-$L(PSAFROMN))/2),PSAFROMN
|
---|
68 | W !!!,"TRANSFERRED TO: " W:$L(PSATON)>63 $P(PSATON,"(IP)",1)_"(IP)",!?17,$P(PSATON,"(IP)",2) W:$L(PSATON)<74 PSATON W !,PSASLN
|
---|
69 | W !,"TRANSFER DATE",?23,"QTY",?30,"DRUG",?68,"NEW BALANCE",!,PSASLN
|
---|
70 | Q
|
---|