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

PSOCST9.m

Go to the documentation of this file.
  1. PSOCST9 ;BHAM ISC/SAB - DIVISION BY PROVIDER COST ; 08/19/92 11:20
  1. ;;7.0;OUTPATIENT PHARMACY;**31**;DEC 1997
  1. ;External Ref. to ^PS(59, is supp. by DBIA# 212
  1. BEG S RP=9 D HDC^PSOCSTX F D CDT^PSOCSTX Q:$G(CTR) D DVS^PSOCSTX Q:$G(CTR) S RP=0 D CTP^PSOCSTX Q:$G(CTR) I RP=0 D DEV Q
  1. D EX Q
  1. DEV D DVC^PSOCSTX Q:$G(CTR)
  1. K PSOION I $D(IO("Q")) S ZTDESC="DIVISION BY PROVIDER COSTS",ZTRTN="START^PSOCST9" D PAS^PSOCSTX
  1. I K IO("Q") D ^%ZTLOAD W:$D(ZTSK) !,"REPORT QUEUED TO PRINT !!",! D EX Q
  1. START U IO K ^TMP($J) F PSDT=(BEGDATE-1):0:ENDDATE S PSDT=$O(^PSCST(PSDT)) Q:'PSDT!(PSDT>ENDDATE) D @$S('IFN:"DIV",1:"PHY")
  1. S DIVX="" I $O(^TMP($J,DIVX))']"" D HD,HDN^PSOCSTX Q
  1. F S DIVX=$O(^TMP($J,DIVX)) Q:DIVX="" S PHYX="" F S PHYX=$O(^TMP($J,DIVX,PHYX)) Q:PHYX="" D STR
  1. D ZER^PSOCSTX S DIVX="" F S DIVX=$O(^TMP($J,DIVX)) Q:DIVX="" S PHYX="" D HD Q:$G(CTR) F S PHYX=$O(^TMP($J,DIVX,PHYX)) D:PHYX="" SUB Q:PHYX="" D PRT3
  1. I 'CTR,'IFN D HD:($Y+2)>IOSL D TOT^PSOCSTX
  1. EX D EX^PSOCSTX Q
  1. PRT3 D:($Y+4)>IOSL HD Q:$G(CTR) S Y=^TMP($J,DIVX,PHYX),TTX=PHYX D PRT^PSOCSTX
  1. Q
  1. DIV F DIV=0:0 S DIV=$O(^PSCST(PSDT,"V",DIV)) Q:'DIV D PHY
  1. Q
  1. PHY F PHY=0:0 S PHY=$O(^PSCST(PSDT,"V",DIV,"P",PHY)) Q:'PHY I $D(^(PHY,0)) S X=^(0) D STORE
  1. Q
  1. STORE S DIVX=$S($D(^PS(59,+DIV,0)):$P(^(0),"^"),1:"UNKNOWN")
  1. S PHYX=$S($D(^VA(200,+PHY,0)):$P(^(0),"^"),1:"UNKNOWN")
  1. S:'$D(^TMP($J,DIVX,PHYX)) ^TMP($J,DIVX,PHYX)="^0^0^0",^TMP($J,DIVX)="^0^0^0^0"
  1. S UTL=^TMP($J,DIVX,PHYX),^TMP($J,DIVX,PHYX)="^"_($P(UTL,"^",2)+$P(X,"^",2))_"^"_($P(UTL,"^",3)+$P(X,"^",3))_"^"_($P(UTL,"^",4)+$P(X,"^",4))
  1. Q
  1. STR S $P(^TMP($J,DIVX),"^",2)=($P(^TMP($J,DIVX),"^",2)+$P(^TMP($J,DIVX,PHYX),"^",2)),$P(^TMP($J,DIVX),"^",3)=($P(^TMP($J,DIVX),"^",3)+$P(^TMP($J,DIVX,PHYX),"^",3))
  1. S $P(^TMP($J,DIVX),"^",4)=($P(^TMP($J,DIVX),"^",4)+$P(^TMP($J,DIVX,PHYX),"^",4)),$P(^TMP($J,DIVX),"^",5)=($P(^TMP($J,DIVX),"^",5)+$P(^TMP($J,DIVX,PHYX),"^",2)+$P(^TMP($J,DIVX,PHYX),"^",3))
  1. Q
  1. HD D HD^PSOCSTX Q:$G(CTR)
  1. W !,?5,"Division: ",DIVX
  1. Q
  1. SUB ;sub-totals per division
  1. D HD:($Y+2)>IOSL D FTU^PSOCSTX W !,"Total for "_DIVX D FTT^PSOCSTX,FTU^PSOCSTX,SUB^PSOCSTX
  1. Q