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

ACDPSOT.m

Go to the documentation of this file.
  1. ACDPSOT ;IHS/ADC/EDE/KML - DISPLAY IN/RE/TD/FU OVER TIME;
  1. ;;4.1;CHEMICAL DEPENDENCY MIS;;MAY 11, 1998
  1. ;
  1. ; This routine displays a patient's CDMIS INITIAL, REOPEN,
  1. ; TRANS/DISCH/CLOSE, and FOLLOWUP visits with subordinate file entry
  1. ; to use to track status over time.
  1. ;
  1. START ;
  1. F D PATLOOP Q:ACDQ
  1. D EOJ
  1. Q
  1. ;
  1. PATLOOP ; DISPLAY PATIENTS UNTIL DONE
  1. D GETPAT
  1. Q:ACDQ
  1. D RESTRICT ; see if restrictions apply
  1. Q:ACDQ
  1. D DISPLAY ; write face sheet
  1. Q
  1. ;
  1. GETPAT ; GET PATIENT
  1. S ACDQ=1
  1. S AUPNLK("ALL")=1
  1. S DIC="^AUPNPAT(",DIC(0)="AEMQ",DIC("S")="I $D(^ACDVIS(""D"",+Y))" D DIC^ACDFMC
  1. K AUPNLK("ALL")
  1. Q:Y<0
  1. S ACDDFNP=+Y,ACDDFN=$P(^DPT(ACDDFNP,0),U)
  1. S ACDQ=0
  1. Q
  1. ;
  1. RESTRICT ; SEE IF RESTRICTIONS APPLY
  1. S (ACDCOMC,ACDCOMT)=""
  1. S DIR(0)="YO",DIR("A")="Do you wish to restrict the output to one Component code/type",DIR("B")="N" K DA D ^DIR K DIR
  1. D:Y GETCOMP^ACDDE2
  1. Q
  1. ;
  1. DISPLAY ;
  1. W !
  1. D DEV^ACDDEU
  1. Q:POP
  1. I $D(IO("Q")) D Q
  1. . S ZTRTN="DISPLAYQ^ACDPSOT",ZTDESC="CDMIS FACE SHEET",ZTDTH=$H,ZTSAVE("ACD*")=""
  1. . D ^%ZTLOAD
  1. . Q
  1. D DISPLAYQ
  1. U 0
  1. Q
  1. ;
  1. DISPLAYQ ; EP - FOR TASKMAN
  1. I $D(ACDSLAVE) S IOP=ACDSLAVE D ^%ZIS
  1. U IO
  1. I '$D(ACDSLAVE) W @IOF
  1. D GETVSITS^ACDDEU ; gather all visits for patient
  1. I $O(^TMP("ACD",$J,"VISITS",0))="" W !,"----------",!,"No CDMIS visits!",!,"----------",! Q
  1. S (ACDX,ACDY)=0
  1. F Q:ACDQ S ACDX=$O(^TMP("ACD",$J,"VISITS",ACDX)) Q:ACDX="" S ACDY=0 F S ACDY=$O(^TMP("ACD",$J,"VISITS",ACDX,ACDY)) Q:'ACDY D Q:ACDQ
  1. . S ACDQ=0
  1. . I ACDCOMC]"",ACDCOMT]"" D
  1. .. S X=$P(^ACDVIS(ACDY,0),U,2)
  1. .. I X'=ACDCOMC S ACDQ=1 Q
  1. .. S X=$P(^ACDVIS(ACDY,0),U,7)
  1. .. I X'=ACDCOMT S ACDQ=1 Q
  1. .. Q
  1. . I ACDQ S ACDQ=0 Q
  1. . S ACDTC=$P(^ACDVIS(ACDY,0),U,4)
  1. . Q:ACDTC'="IN"&(ACDTC'="RE")&(ACDTC'="TD")&(ACDTC'="FU")
  1. . S ACDVIEN=ACDY
  1. . NEW ACDX,ACDY,ACDCOMC,ACDCOMT
  1. . D DISPLAY2
  1. . Q
  1. I $D(ACDSLAVE) D ^%ZISC
  1. I $D(ZTQUEUED) D EOJ S ZTREQ="@"
  1. Q
  1. ;
  1. DISPLAY2 ; WRITE ONE FACE SHEET
  1. U IO
  1. D:$E(IOST,1,2)="P-" CONF^ACDDEU
  1. S ACDDA=ACDVIEN,ACDWSTAF(1)=1 D ^ACDWVIS K ACDWSTAF
  1. S ACDTC=$P(^ACDVIS(ACDVIEN,0),U,4)
  1. I ACDTC="TD" S ACDDA=$O(^ACDTDC("C",ACDVIEN,0)) I 1
  1. E S ACDDA=$O(^ACDIIF("C",ACDVIEN,0))
  1. Q:'ACDDA
  1. D @("^ACDW"_$S(ACDTC="TD":"TDC",1:"IIF"))
  1. S ACDPFACE=1
  1. D P1^ACDWCD1
  1. K ACDPFACE
  1. I '$D(ZTQUEUED),'$D(ACDSLAVE),$E(IOST,1,2)'="P-" D PAUSE^ACDDEU S:$D(DIRUT) ACDQ=1
  1. W:$D(IOF) @IOF
  1. Q
  1. ;
  1. EOJ ;
  1. D ^%ZISC
  1. D ^ACDKILL
  1. Q