Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: APSPSOB

APSPSOB.m

Go to the documentation of this file.
APSPSOB ;BHAM/ISC/CCG - BLACK LINE RESOLVER  [ 09/09/97   8:45 AM ]
 ;;6.0;OUTPATIENT PHARMACY;;09/03/97
 ;;6.0;OUTPATIENT PHARMACY;**31,78,101,143**;09/03/97
 S APSPKEYZ=1 ;IHS/DSD/ENM 07/01/97
 I '$D(PSOPAR) D ^PSOLSET Q:'$G(PSOPAR)
 I '$D(PSOIOS) S PSOIOS=IOS ;IHS/DSD/ENM 06/10/97
 S (CC,PSOCLC,PDUZ)=DUZ,PSOBOUT=0
 I '$O(^PS(52.9,0)) W !!,"THE LABEL/PROFILE MONITOR LIST IS EMPTY.",!! Q
PT S DIC="^PS(52.9,",DIC("A")="ENTER FAILED OUTPUT DEVICE NUMBER OR NAME : ",DIC(0)="QEAZM" D ^DIC K DIC G END:Y=-1 S PSOBIO=+Y,PSOBPT=Y(0)
RX1 S DIC("A")="ENTER LAST USABLE LABEL/PROFILE : ",DIC="^PS(52.9,PSOBIO,1,",DIC(0)="EQAMZ" D ^DIC G:"^"[X END G:Y=-1 RX1 S PSOBR=$P(Y,"^") D RX08 G:$G(PSOBOUT) END S PSOBR1=PSOBR
RX2 S DIC("A")="ENTER NEXT USABLE LABEL/PROFILE ('RETURN' FOR REMAINDER OF THE QUEUE):",DIC("S")="I +PSOBR1'>Y" D ^DIC K DIC("S") G:X="^" END
 I X="" S PSOBR2=$P(^PS(52.9,PSOBIO,1,0),"^",3) S:$D(^PS(52.9,PSOBIO,1,PSOBR2,2)) PSOBR2=PSOBR2_"^"_($P(^PS(52.9,PSOBIO,1,PSOBR2,2,0),"^",3)+1) G SET
 G:Y=-1 RX2 S PSOBR=$P(Y,"^") D RX08 S PSOBR2=PSOBR I +PSOBR1=+PSOBR2,$P(PSOBR1,"^",2)>$P(PSOBR2,"^",2) W !!,"THE ENDING RX# DOES NOT FOLLOW THE BEGINNING RX#.  PLEASE TRY AGAIN.",!!! G RX1
SET ;K ZTSK,%ZIS S PSOIS=PSOIOS,%ZIS("A")="PRINT ON DEVICE:  ",%ZIS("B")=$P(^%ZIS(1,PSOBPT,0),"^"),%ZIS="QMN" D ^%ZIS
 ;N PSOBAR1,PSOBAR0,PSOBARS,PSOIOS K %ZIS G:POP END S ZTIO=ION
 S ZTIO=PSOLAP ;IHS/DSD/ENM 07/01/97
 F J=0,1 S @("PSOBAR"_J)="" I $D(^%ZIS(2,^%ZIS(1,IOS,"SUBTYPE"),"BAR"_J)) S @("PSOBAR"_J)=^("BAR"_J)
 S PSOBARS=PSOBAR1]""&(PSOBAR0]"")&$P(PSOPAR,"^",19) D LASK^PSOLSET
 ;I $E(IOST,1,3)="C-" W *7,!,"Output MUST be sent to a printer !!",! G SET
 ;S ZTRTN="PSOBMST",ZTDTH=$H,ZTDESC="BLACK LINE RESOLVER",(ZTSAVE("PSOBR1"),ZTSAVE("PSOBR2"),ZTSAVE("PSOBIO"),ZTSAVE("CC"),ZTSAVE("PDUZ"),ZTSAVE("PSOPAR"),ZTSAVE("PSOSITE"),ZTSAVE("PSODIV"))=""
 ;S (ZTSAVE("PSOIOS"),ZTSAVE("PSOBAR0"),ZTSAVE("PSOBAR1"),ZTSAVE("PSOBARS"),ZTSAVE("PSOSYS"),ZTSAVE("APSPMAN"))="" ;IHS/DSD/ENM 5/1/95 APSPMAN VAR ADDED
 ;D ^%ZTLOAD I $G(ZTSK) W !,"Task Queued #"_ZTSK_" !!",!
 D ^PSOBMST ;IHS/DSD/ENM 07/01/97
END D ^%ZISC K PSOIS,ZTSK,%ZIS,CC,DIC,IOP,I,POP,PSOB,PSOBIO,PSOBPT,PSOBR,PSOBR1,PSOBR2,PSOBRX,PSOBOUT,X,Y,APSPKEYZ Q
RX08 I $P(Y(0),"^",2)="L" S:(X'=$P(Y,"^",2))&($O(^PSRX("B",X,0))) Y=+Y_"^"_$O(^PSRX("B",X,0)) S PSOBR=PSOBR_"^"_$O(^PS(52.9,PSOBIO,1,"C",$P(Y,"^",2),PSOBR,0)),PSOBRX=$P(Y,"^",2)
 E  S PSOBR=PSOBR_"^",PSOBRX="" S:$D(^PS(52.9,PSOBIO,1,PSOBR,2,0)) PSOBR=PSOBR_$P(^(0),"^",3),PSOBRX=^($P(PSOBR2,"^",2),0)
 Q:($P(PSOBR,"^",2))!('$D(^PS(52.9,PSOBIO,1,+PSOBR,2,0)))
 S PSOB="^" F I=0:0 S I=$O(^PS(52.9,PSOBIO,1,+PSOBR,2,I)) Q:'I  S PSOB=PSOB_$P(^PSRX(^(I,0),0),"^")_"^"
 I $P(PSOB,"^",3)="" S PSOBR=+PSOBR_"^"_$P(^PS(52.9,PSOBIO,1,+PSOBR,2,0),"^",3) Q
 I $P(Y(0),"^",2)="P" S PSOBR=+PSOBR_"^" Q
RX05 W !,"ENTER RX# OF LAST USABLE SCRIPT FOR ",$P(^DPT(+Y(0),0),"^")," : " R X:DTIME S:'$T!(X["^") PSOBOUT=1 Q:$G(PSOBOUT)  D:X="?" LIST I PSOB'[(U_X_"^") W !!,"???" G RX05
 S PSOBR=+PSOBR_"^"_($O(^PS(52.9,PSOBIO,1,"C",$O(^PSRX("B",X,0)),+PSOBR,0))) Q
LIST W !! F I=2:1 Q:$P(PSOB,"^",I)=""  W !,?5,I-1,"              ",$P(PSOB,"^",I)
RL ;W !,"CHOOSE 1-",I-2," : " R X:DTIME G:(X<1)!(X>(I-2)) RL S X=$P(PSOB,"^",X+1) Q  ;IHS/DSD/ENM 09/4/97