- PSGWADP1 ;BHAM ISC/PTD,CML-Print Data for AMIS Stats - CONTINUED ; 30 Aug 93 / 10:13 AM
- ;;2.3; Automatic Replenishment/Ward Stock ;;4 JAN 94
- PRINT S PSGWPG=1,OUT=0 D HDR G:OUT END
- F PSGWTY=0:0 Q:OUT S PSGWTY=$O(^TMP("PSGWADP",$J,PSGWTY)),PSGWNM=0 G:PSGWTY=9999 ONDM G:'PSGWTY DONE D:$Y+5>IOSL HDR I 'OUT D WRTYPE F J=0:0 S PSGWNM=$O(^TMP("PSGWADP",$J,PSGWTY,PSGWNM)) Q:PSGWNM=""!(OUT) D
- .D:$Y+5>IOSL HDR I 'OUT W !!?5,PSGWNM D WRTDATA
- ;
- ONDM I 'OUT S PSGWNM=0 D:$Y+5>IOSL HDR I 'OUT D WRTYPE F J=0:0 S PSGWNM=$O(^TMP("PSGWADP",$J,9999,PSGWNM)) Q:PSGWNM=""!(OUT) I '$D(^TMP("PSGWADP",$J,"DN",PSGWNM)) D:$Y+5>IOSL HDR I 'OUT W !!?5,PSGWNM D WRTDATA
- ;
- DONE I $E(IOST)'="C" W @IOF
- I $E(IOST)="C"&('OUT) W !!,"Press RETURN to continue: " R AUTO:DTIME
- END K ^TMP("PSGWADP",$J),I,J,K,PSGWAOU,PSGWDR,PSGWITM,PSGWNM,PSGWTY,PSGWPG,LOC,LOC1,LOC2,OUPTR,OUNIT,PSGWIO,ZTSK,PSGWDT,%,%I,%H,DA,ZTIO,%DT,IO("Q"),X,Y,AUTO,OUT
- D ^%ZISC
- S:$D(ZTQUEUED) ZTREQ="@" Q
- ;
- HDR ;PRINT REPORT HEADING
- I $E(IOST)="C"&(PSGWPG>1) S DIR(0)="E" D ^DIR K DIR I Y'=1 S OUT=1 Q
- W:$Y @IOF S %DT="",X="T" D ^%DT X ^DD("DD") W !!,"PAGE: ",PSGWPG,?110,"DATE: ",Y,!?50,"DATA FOR AR/WS AMIS STATS",!!,"TYPE",?47,"ORDER",?59,"PRICE PER",?73,"DISPENSE UNITS",?90,"PRICE PER",?105,"AMIS",?120,"AMIS CONV.",!
- W ?5,"DRUG NAME",?47,"UNIT",?59,"ORDER UNIT",?73,"PER ORDER UNIT",?90,"DISPENSE UNIT",?105,"CATEGORY",?120,"NUMBER",!
- F J=1:1:132 W "="
- S PSGWPG=PSGWPG+1
- Q
- ;
- WRTYPE W !!,$S((PSGWTY'=9999)&($D(^PSI(58.16,PSGWTY,0))):$P(^PSI(58.16,PSGWTY,0),"^"),1:"** UNCLASSIFIED BY TYPE: ") Q
- ;
- WRTDATA S LOC=^TMP("PSGWADP",$J,PSGWTY,PSGWNM) F J=1:1:6 I $P(LOC,"^",J)="" S $P(LOC,"^",J)="NO DATA"
- W ?47,$P(LOC,"^"),?61,$P(LOC,"^",2),?75,$P(LOC,"^",3),?90,$P(LOC,"^",4),?105,$P(LOC,"^",5),?120,$P(LOC,"^",6)
- Q
- PSGWADP1 ;BHAM ISC/PTD,CML-Print Data for AMIS Stats - CONTINUED ; 30 Aug 93 / 10:13 AM
- +1 ;;2.3; Automatic Replenishment/Ward Stock ;;4 JAN 94
- PRINT SET PSGWPG=1
- SET OUT=0
- DO HDR
- IF OUT
- GOTO END
- +1 FOR PSGWTY=0:0
- IF OUT
- QUIT
- SET PSGWTY=$ORDER(^TMP("PSGWADP",$JOB,PSGWTY))
- SET PSGWNM=0
- IF PSGWTY=9999
- GOTO ONDM
- IF 'PSGWTY
- GOTO DONE
- IF $Y+5>IOSL
- DO HDR
- IF 'OUT
- DO WRTYPE
- FOR J=0:0
- SET PSGWNM=$ORDER(^TMP("PSGWADP",$JOB,PSGWTY,PSGWNM))
- IF PSGWNM=""!(OUT)
- QUIT
- Begin DoDot:1
- +2 IF $Y+5>IOSL
- DO HDR
- IF 'OUT
- WRITE !!?5,PSGWNM
- DO WRTDATA
- End DoDot:1
- +3 ;
- ONDM IF 'OUT
- SET PSGWNM=0
- IF $Y+5>IOSL
- DO HDR
- IF 'OUT
- DO WRTYPE
- FOR J=0:0
- SET PSGWNM=$ORDER(^TMP("PSGWADP",$JOB,9999,PSGWNM))
- IF PSGWNM=""!(OUT)
- QUIT
- IF '$DATA(^TMP("PSGWADP",$JOB,"DN",PSGWNM))
- IF $Y+5>IOSL
- DO HDR
- IF 'OUT
- WRITE !!?5,PSGWNM
- DO WRTDATA
- +1 ;
- DONE IF $EXTRACT(IOST)'="C"
- WRITE @IOF
- +1 IF $EXTRACT(IOST)="C"&('OUT)
- WRITE !!,"Press RETURN to continue: "
- READ AUTO:DTIME
- END KILL ^TMP("PSGWADP",$JOB),I,J,K,PSGWAOU,PSGWDR,PSGWITM,PSGWNM,PSGWTY,PSGWPG,LOC,LOC1,LOC2,OUPTR,OUNIT,PSGWIO,ZTSK,PSGWDT,%,%I,%H,DA,ZTIO,%DT,IO("Q"),X,Y,AUTO,OUT
- +1 DO ^%ZISC
- +2 IF $DATA(ZTQUEUED)
- SET ZTREQ="@"
- QUIT
- +3 ;
- HDR ;PRINT REPORT HEADING
- +1 IF $EXTRACT(IOST)="C"&(PSGWPG>1)
- SET DIR(0)="E"
- DO ^DIR
- KILL DIR
- IF Y'=1
- SET OUT=1
- QUIT
- +2 IF $Y
- WRITE @IOF
- SET %DT=""
- SET X="T"
- DO ^%DT
- XECUTE ^DD("DD")
- WRITE !!,"PAGE: ",PSGWPG,?110,"DATE: ",Y,!?50,"DATA FOR AR/WS AMIS STATS",!!,"TYPE",?47,"ORDER",?59,"PRICE PER",?73,"DISPENSE UNITS",?90,"PRICE PER",?105,"AMIS",?120,"AMIS CONV.",!
- +3 WRITE ?5,"DRUG NAME",?47,"UNIT",?59,"ORDER UNIT",?73,"PER ORDER UNIT",?90,"DISPENSE UNIT",?105,"CATEGORY",?120,"NUMBER",!
- +4 FOR J=1:1:132
- WRITE "="
- +5 SET PSGWPG=PSGWPG+1
- +6 QUIT
- +7 ;
- WRTYPE WRITE !!,$SELECT((PSGWTY'=9999)&($DATA(^PSI(58.16,PSGWTY,0))):$PIECE(^PSI(58.16,PSGWTY,0),"^"),1:"** UNCLASSIFIED BY TYPE: ")
- QUIT
- +1 ;
- WRTDATA SET LOC=^TMP("PSGWADP",$JOB,PSGWTY,PSGWNM)
- FOR J=1:1:6
- IF $PIECE(LOC,"^",J)=""
- SET $PIECE(LOC,"^",J)="NO DATA"
- +1 WRITE ?47,$PIECE(LOC,"^"),?61,$PIECE(LOC,"^",2),?75,$PIECE(LOC,"^",3),?90,$PIECE(LOC,"^",4),?105,$PIECE(LOC,"^",5),?120,$PIECE(LOC,"^",6)
- +2 QUIT