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

ADGADSP1.m

Go to the documentation of this file.
  1. ADGADSP1 ; IHS/ADC/PDW/ENM - A & D SHEET PRINT (DETAILED) ; [ 03/25/1999 11:48 AM ]
  1. ;;5.0;ADMISSION/DISCHARGE/TRANSFER;;MAR 25, 1999
  1. ;
  1. ;detailed version continued
  1. G END:'$D(^TMP("DGZADS",$J,"ZZ")) S DGCNT=^("ZZ")
  1. S DGK=0
  1. ;
  1. ;***> print data for admits,discharges,newborns,deaths,&seriously ill
  1. LOOP F DGI="AA","AD","AN","DN","DT","SI" D
  1. .S DGK=DGK+1,DGNM=0 ;initialize variables
  1. .D NEWPG:$Y>(IOSL-5) ;form feed if at end of page
  1. .W !,$P($T(LABEL+DGK),";;",2)," ",$P(DGCNT,U,DGK) ;print totals
  1. .F Q:DGNM="" D ;loop thru by patient name
  1. ..S DGNM=$O(^TMP("DGZADS",$J,DGI,DGNM)) Q:DGNM="" ;
  1. ..S DGCHT=0 F Q:DGCHT="" D ;within name loop by chart & print data
  1. ...S DGCHT=$O(^TMP("DGZADS",$J,DGI,DGNM,DGCHT)) Q:DGCHT="" ;
  1. ...S DGADM=0 F Q:DGADM="" D ;w/in chart loop by admit # & print data
  1. ....S DGADM=$O(^TMP("DGZADS",$J,DGI,DGNM,DGCHT,DGADM)) Q:DGADM=""
  1. ....S DGSTR=^TMP("DGZADS",$J,DGI,DGNM,DGCHT,DGADM) D WRITE
  1. ;
  1. ;
  1. TRANSF ;***> print transfers
  1. D NEWPG:$Y>(IOSL-5) W !,"WARD TRANSFERS: ",$P(DGCNT,U,7)
  1. G H1:'$D(^TMP("DGZADS",$J,"WT")) ;skip if no ward transfers
  1. S DGNM=0 ;get ward transfers by patient name
  1. G2 S DGNM=$O(^TMP("DGZADS",$J,"WT",DGNM)) G H1:DGNM="" S DFN=0
  1. G3 S DFN=$O(^TMP("DGZADS",$J,"WT",DGNM,DFN)) G G2:DFN="" S DGTRN=0
  1. G4 S DGTRN=$O(^TMP("DGZADS",$J,"WT",DGNM,DFN,DGTRN)) G G3:DGTRN=""
  1. S DGSTR=^TMP("DGZADS",$J,"WT",DGNM,DFN,DGTRN) D NEWPG:$Y>(IOSL-7)
  1. S DGX=$P(DGSTR,U) I DGX'="" S DGX=$P($G(^DIC(42,DGX,0)),U) ;prev ward
  1. S DGX1=$P(DGSTR,U,2) I DGX1'="" S DGX1=$P($G(^DIC(42,DGX1,0)),U) ;new
  1. W !?10,DGNM," from ",DGX," to ",DGX1 G G4
  1. ;
  1. H1 D NEWPG:$Y>(IOSL-5) W !,"TREATING SPECIALTY TRANSFERS: ",$P(DGCNT,U,8)
  1. G END:'$D(^TMP("DGZADS",$J,"TS")) ;skip if no service transfers
  1. S DGNM=0 ;get service transfers by patient name
  1. H2 S DGNM=$O(^TMP("DGZADS",$J,"TS",DGNM)) G END:DGNM="" S DFN=0
  1. H3 S DFN=$O(^TMP("DGZADS",$J,"TS",DGNM,DFN)) G H2:DFN="" S DGTST=0
  1. H4 S DGTST=$O(^TMP("DGZADS",$J,"TS",DGNM,DFN,DGTST)) G H3:DGTST=""
  1. S DGSTR=^TMP("DGZADS",$J,"TS",DGNM,DFN,DGTST) D NEWPG:$Y>(IOSL-7)
  1. S DGX=$P(DGSTR,U) I DGX'="" S DGX=$P($G(^DIC(45.7,DGX,0)),U) ;old srv
  1. S DGX1=$P(DGSTR,U,2) I DGX1'="" S DGX1=$P($G(^DIC(45.7,DGX1,0)),U) ;new
  1. W !?10,DGNM," from ",DGX," to ",DGX1 G H4
  1. ;
  1. ;
  1. END G:$D(^ADGDS("AA")) ^ADGADSP2 ;day surgery print
  1. ;
  1. END1 ;EP;***> ending point for A&D print rtns
  1. I IOST["C-" K DIR S DIR("A")="Press RETURN to continue",DIR(0)="E" D ^DIR
  1. W @IOF S X=IOM X ^%ZOSF("RM") ;restore right margin
  1. D KILL^ADGUTIL
  1. K ^TMP("DGZADS",$J)
  1. D ^%ZISC Q
  1. ;
  1. ;
  1. WRITE ;***> subrtn to print each line
  1. W !?10,$E(DGNM,1,24) ;patient name
  1. ;S DGCHTX="00000"_DGCHT,DGCHTX=$E(DGCHTX,$L(DGCHTX)-5,$L(DGCHTX))
  1. ;W ?37,$E(DGCHTX,1,2)_"-"_$E(DGCHTX,3,4)_"-"_$E(DGCHTX,5,6)
  1. W ?37,DGCHT
  1. S DGPR=$P(DGSTR,U) ;admitting provider
  1. I DGPR'="" S DGPR=$E($P($G(^VA(200,DGPR,0)),U),1,21)
  1. W ?47,DGPR,?71,$P(DGSTR,U,2) ;print provider & age
  1. S DGX=$P(DGSTR,U,3) I DGX'="" W ?80,$P($G(^DIC(42,DGX,0)),U) ;ward/srv
  1. S DGX=$P(DGSTR,U,4) I DGX'="" W ?84,$E($P($G(^DIC(45.7,DGX,0)),U),1,3)
  1. W ?90,$E($P(DGSTR,U,5),1,12) ;community
  1. S DGDST=$P(DGSTR,U,6) G W5:DGDST="" ;skip if no transfer facility
  1. S DGX=@(U_$P(DGDST,";",2)_+DGDST_",0)") ;variable pointer
  1. W !?17,"Transfer Facility: ",$P(DGX,U)
  1. W5 D:$Y>(IOSL-5) NEWPG
  1. W9 Q
  1. ;
  1. NEWPG ;EP;***> subrtn for end of page control
  1. I IOST["C-" K DIR S DIR("A")="Press RETURN to continue",DIR(0)="E" D ^DIR
  1. W @IOF
  1. NP9 W !?26,"*****Confidential Patient Data Covered by Privacy Act*****",!
  1. Q
  1. ;
  1. LABEL ;;
  1. ;;ADMISSIONS:
  1. ;;DISCHARGES:
  1. ;;NEWBORN ADMISSIONS:
  1. ;;NEWBORN DISCHARGES:
  1. ;;DEATHS:
  1. ;;SERIOUSLY ILL: