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

ADGSIL1.m

Go to the documentation of this file.
  1. ADGSIL1 ; IHS/ADC/PDW/ENM - SI/DNR LISTING ; [ 03/25/1999 11:48 AM ]
  1. ;;5.0;ADMISSION/DISCHARGE/TRANSFER;;MAR 25, 1999
  1. ;
  1. W @IOF,!!! K ^TMP("DGZSIL",$J)
  1. W ?10,"PATIENTS CURRENTLY ON SERIOUSLY ILL/DO NOT RESUSCITATE LIST",!!
  1. A ; -- main
  1. D ZIS I POP D Q Q
  1. I $D(IO("Q")) D QUE,Q Q
  1. D LW,WRT,Q Q
  1. ;
  1. START ; -- queued output driver
  1. K ^TMP("DGZSIL",$J)
  1. D LW,WRT,Q Q
  1. ;
  1. LW ; -- loop inpatients
  1. N WD,DFN,WARD,NAME,TS,PR,CON,CDT,UTL,N,X
  1. S WARD="" F S WARD=$O(^DPT("CN",WARD)) Q:WARD="" D
  1. . S DFN=0 F S DFN=$O(^DPT("CN",WARD,DFN)) Q:'DFN D VAR
  1. Q
  1. ;
  1. VAR ;
  1. Q:'$D(^DPT(DFN,"DAC")) Q:$P(^("DAC"),U)="" S N=^("DAC")
  1. S NAME=$P($G(^DPT(DFN,0)),U),TS=$G(^(.103)),PR=$G(^(.104))
  1. S WD=$O(^DIC(42,"B",WARD,0)),CON=$P(N,U),CDT=$P(N,U,2)
  1. S UTL=$$AGE_U_TS_U_PR_U_$$HRCN^ADGF_U_WARD_U_CDT
  1. I CON="S"!(CON="B") S ^TMP("DGZSIL",$J,1,NAME,DFN)=UTL
  1. I CON="D"!(CON="B") S ^TMP("DGZSIL",$J,2,NAME,DFN)=UTL
  1. Q
  1. ;
  1. WRT ; -- loop utl
  1. N WD,DFN,WARD,NAME,TS,PR,CON,CDT,UTL,N,X
  1. U IO D HD S SI=0 F S SI=$O(^TMP("DGZSIL",$J,SI)) Q:'SI D
  1. . W !!?28,$$HD1,!
  1. . S NAME="" F S NAME=$O(^TMP("DGZSIL",$J,SI,NAME)) Q:NAME="" D
  1. .. S DFN=0 F S DFN=$O(^TMP("DGZSIL",$J,SI,NAME,DFN)) Q:'DFN D 1 Q:$D(DIRUT)
  1. Q
  1. ;
  1. 1 S N=^TMP("DGZSIL",$J,SI,NAME,DFN)
  1. W !,$E(NAME,1,20),?23,$P(N,U,4)
  1. W ?32,$E($P($G(^VA(200,+$P(N,U,3),0)),U),1,12)
  1. W ?48,$P(N,U),?57,$P(N,U,5),?63,$E($G(^DIC(45.7,+$P(N,U,2),0)),1,3)
  1. W ?69,$E($P(N,U,6),4,5)_"/"_$E($P(N,U,6),6,7)_"/"_$E($P(N,U,6),2,3)
  1. I $Y>(IOSL-7) D NPG
  1. Q
  1. ;
  1. HD ; -- heading
  1. I IOST["C-" W @IOF
  1. W ?11,"*****Confidential Patient Data Covered by Privacy Act*****"
  1. W !!?22,"SERIOUSLY ILL/DO NOT RESUSCITATE LIST",!
  1. W ?34,"for ",$E(DT,4,5)_"/"_$E(DT,6,7)_"/"_$E(DT,2,3),!!
  1. W !,"Patient Name",?23,"Chart #",?32,"Provider",?48,"Age"
  1. W ?57,"WD",?63,"SRV",?69,"Entered" Q
  1. ;
  1. ZIS ; -- device selection
  1. S %ZIS="PQ" D ^%ZIS Q
  1. ;
  1. QUE ; -- queued output
  1. S ZTRTN="START^ADGSIL1",ZTDESC="SI/DNR LIST" D ^%ZTLOAD Q
  1. ;
  1. NPG ; -- end of page
  1. I IOST'?1"C-".E D HD Q
  1. K DIR S DIR(0)="E" D ^DIR D:'$D(DIRUT) HD Q
  1. ;
  1. Q ; -- cleanup
  1. I IOST?1"C-".E D PRTOPT^ADGVAR
  1. W @IOF D ^%ZISC,HOME^%ZIS K ZTSK,IO("Q") Q
  1. ;
  1. AGE() ; -- age
  1. N X,DIC,DR,DA
  1. K ^UTILITY("DIQ1",$J) S DIC=9000001,DR=1102.98,DA=DFN D EN^DIQ1
  1. S X=^UTILITY("DIQ1",$J,9000001,DFN,1102.98) K ^UTILITY("DIQ1",$J)
  1. Q X
  1. ;
  1. HD1() ; -- heading
  1. Q $S(SI=1:" ***SERIOUSLY ILL***",1:"***DO NOT RESUSCITATE***")