1 | PSDTRVR ;BIR/BJW-CS Transfer Between Vaults Report ; 12 Feb 98
|
---|
2 | ;;3.0; CONTROLLED SUBSTANCES ;**8,23**;13 Feb 97
|
---|
3 | ;**Y2K compliance**,"P" added to input date string
|
---|
4 | ;Reference to ^PS(59.4 supported by DBIA #1043
|
---|
5 | I '$D(PSDSITE) D ^PSDSET Q:'$D(PSDSITE)
|
---|
6 | I '$D(^XUSEC("PSJ RPHARM",DUZ))&('$D(^XUSEC("PSD TECH",DUZ))) W $C(7),!!,?9,"** Please contact your Pharmacy Coordinator for access to",!,?12,"print CS reports.",!!,"PSJ RPHARM or PSD TECH security key required.",! Q
|
---|
7 | W !!,"CS Transfer Controlled Substances Between Vaults Report",!
|
---|
8 | ASK K DA,DIR,DTOUT,DUOUT S DIR(0)="YO",DIR("A")="Do you wish to print a Transferred/Received By signature line",DIR("B")="NO"
|
---|
9 | S DIR("?")="Answer YES to print the signature line, NO or <RET> to omit the signature line."
|
---|
10 | D ^DIR K DIR I $D(DTOUT)!($D(DUOUT)) G END
|
---|
11 | S ASK=+Y
|
---|
12 | SITE ;sel one, some or all inp sites
|
---|
13 | S CNT=0 F JJ=0:0 S JJ=$O(^PS(59.4,JJ)) Q:'JJ I $P($G(^PS(59.4,JJ,0)),"^",31) S SITE(JJ)="",CNT=CNT+1
|
---|
14 | I 'CNT W !!,"There are no Inpatient Sites defined for Controlled Substances use.",!,"Please contact your Pharmacy Coordinator for assistance.",! G END
|
---|
15 | G:CNT=1 DATE K SITE
|
---|
16 | W !!,?2,"You may display Dispensing Sites transfers from a single Inpatient Site, ",!,?2,"several Inpatient Sites, or enter ^ALL to select all Inpatient Sites.",!!
|
---|
17 | F S DIC=59.4,DIC("A")="Select Inpatient Site: ",DIC(0)="QEA",DIC("S")="I $P(^(0),""^"",31)" D ^DIC K DIC Q:Y<0 S SITE(+Y)=""
|
---|
18 | G END:$O(SITE(0))'>0 I '$D(SITE)&(X'="^ALL") G END
|
---|
19 | I X="^ALL" F PSD=0:0 S PSD=$O(^PS(59.4,PSD)) Q:'PSD I $P($G(^PS(59.4,PSD,0)),"^",31) S SITE(PSD)=""
|
---|
20 | DATE ;ask date range
|
---|
21 | W ! K %DT S %DT="AEP",%DT("A")="Start with Date: " D ^%DT I Y<0 S PSDOUT=1 G END
|
---|
22 | S PSDSD=Y D D^DIQ S PSDATE=Y,%DT("A")="End with Date: " D ^%DT I Y<0 S PSDOUT=1 G END
|
---|
23 | I Y<PSDSD W !!,"The ending date of the range must be later than the starting date." G DATE
|
---|
24 | S PSDED=Y D D^DIQ S PSDATE=PSDATE_"^"_Y,PSDSD=PSDSD-.0001,PSDED=PSDED+.9999
|
---|
25 | DEV ;dev & queue info
|
---|
26 | W !!,"This report is designed for a 80 column format.",!,"You may queue this report to print at a later time.",!!
|
---|
27 | K %ZIS,IOP,IO("Q"),POP S %ZIS="QM",%ZIS("B")="" D ^%ZIS I POP W !,"NO DEVICE SELECTED OR REPORT PRINTED!" G END
|
---|
28 | I $D(IO("Q")) K IO("Q"),ZTIO,ZTSAVE,ZTDTH,ZTSK S ZTRTN="START^PSDTRVR1",ZTDESC="CS Transfer Between Vaults Report" D SAVE,^%ZTLOAD,HOME^%ZIS K ZTSK G END
|
---|
29 | U IO G ^PSDTRVR1
|
---|
30 | END ;
|
---|
31 | K %,%DT,%H,%I,%ZIS,ASK,CNT,DA,DIC,DIR,DIROUT,DIRUT,DTOUT,DUOUT,JJ,OK
|
---|
32 | K POP,PSD,PSDATE,PSDED,PSDOUT,PSDSD,SITE,SITEN,X,Y,ZTDESC,ZTDTH,ZTRTN,ZTSAVE,ZTSK
|
---|
33 | K ^TMP("PSDTRVR",$J) D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@"
|
---|
34 | Q
|
---|
35 | SAVE S (ZTSAVE("SITE("),ZTSAVE("PSDSD"),ZTSAVE("PSDED"),ZTSAVE("ASK"),ZTSAVE("PSDATE"))=""
|
---|
36 | Q
|
---|