VistA-WorldVistAEHR/r/OUTPATIENT_PHARMACY-PSO-APS.../PSOCST3.m

28 lines
1.6 KiB
Mathematica

PSOCST3 ;BHAM ISC/SAB - DRUG BY PROVIDER COST ; 10/01/92 16:30
;;7.0;OUTPATIENT PHARMACY;**31**;DEC 1997
;External Ref. to ^PSDRUG is supp. by DBIA# 221
BEG S RP=3 D HDC^PSOCSTX F D CDT^PSOCSTX Q:$G(CTR) D DRS^PSOCSTX Q:$G(CTR) S RP=0 D CTP^PSOCSTX Q:$G(CTR) I RP=0 D DEV Q
D EX Q
DEV D DVC^PSOCSTX Q:$G(CTR)
K PSOION I $D(IO("Q")) S ZTDESC="DRUG COSTS BY PROVIDER",ZTRTN="START^PSOCST3" D PAS^PSOCSTX
I K IO("Q") D ^%ZTLOAD W:$D(ZTSK) !,"REPORT QUEUED TO PRINT !!",! D EX Q
START U IO K ^TMP($J) F PSDT=(BEGDATE-1):0:ENDDATE S PSDT=$O(^PSCST(PSDT)) Q:'PSDT!(PSDT>ENDDATE) D @$S('IFN:"DRUG",1:"PHY")
D ZER^PSOCSTX S DRUGX="" D HD I $O(^TMP($J,DRUGX))']"" D HDN^PSOCSTX Q
F S DRUGX=$O(^TMP($J,DRUGX)) Q:DRUGX="" D:($Y+7)>IOSL HD Q:$G(CTR) W !,?5,"DRUG: "_DRUGX D
.S PHYX="" D:($Y+4)>IOSL HD Q:$G(CTR) F S PHYX=$O(^TMP($J,DRUGX,PHYX)) D:PHYX="" SUB Q:PHYX="" D PRT3
I 'IFN,'CTR D TOT^PSOCSTX
EX D EX^PSOCSTX Q
PRT3 D HD:($Y+4)>IOSL Q:$G(CTR)
S Y=^TMP($J,DRUGX,PHYX),TTX=PHYX D PRT^PSOCSTX Q
DRUG F DRUG=0:0 S DRUG=$O(^PSCST(PSDT,"D",DRUG)) Q:'DRUG D PHY
Q
PHY F PHY=0:0 S PHY=$O(^PSCST(PSDT,"D",DRUG,"P",PHY)) Q:'PHY I $D(^(PHY,0)) S X=^(0) D STORE
Q
STORE S PHYX=$S($D(^VA(200,+PHY,0)):$P(^(0),"^"),1:"UNKNOWN")
Q:'$D(^PSDRUG(DRUG,0)) S DRUGX=$P(^(0),"^") S:'$D(^TMP($J,DRUGX,PHYX)) ^TMP($J,DRUGX,PHYX)="^0^0^0"
S UTL=^TMP($J,DRUGX,PHYX),^TMP($J,DRUGX,PHYX)="^"_($P(UTL,"^",2)+$P(X,"^",2))_"^"_($P(UTL,"^",3)+$P(X,"^",3))_"^"_($P(UTL,"^",4)+$P(X,"^",4))
Q
HD D HD^PSOCSTX Q
SUB D HD:($Y+2)>IOSL D FTU^PSOCSTX W !,"Total for ",$E(DRUGX,1,23) D FTT^PSOCSTX,FTU^PSOCSTX,SUB^PSOCSTX
Q