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

ACDPCS1M.m

Go to the documentation of this file.
  1. ACDPCS1M ;IHS/ADC/EDE/KML - DISPLAY PATIENT CS BY PROVIDER FOR 1 MONTH;
  1. ;;4.1;CHEMICAL DEPENDENCY MIS;;MAY 11, 1998
  1. ;
  1. ; This routine displays a patient's CDMIS client services by provider for one month.
  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. S ACDTCTG="CS"
  1. D GETVSITS^ACDDEU
  1. K ACDTCTG
  1. Q:ACDQ
  1. I '$D(^TMP("ACD",$J,"VISITS")) W !!,"No CDMIS VISIT history for patient ",ACDDFN,! Q
  1. D DSPHIST ; display visit history
  1. D GETMONTH
  1. Q:ACDQ
  1. S ACDSTART=$$FMADD^XLFDT(ACDMONTH_"01",-1)
  1. S X=$O(^TMP("ACD",$J,"VISITS",ACDSTART))
  1. I $E(X,1,5)'=ACDMONTH W !!,"No CDMIS VISITs during selected month for patient ",ACDDFN,! Q
  1. I $D(IO("Q")) D Q
  1. . S ZTRTN="DISPLAY^ACDCSH1M",ZTDESC="CDMIS VISITS ONE MONTH",ZTDTH=$H,ZTSAVE("ACD*")="",ZTSAVE("^TMP(""ACD"",$J,""VISITS"",")=""
  1. . D ^%ZTLOAD
  1. . Q
  1. D DISPLAY
  1. I '$D(ACDSLAVE),$E(IOST,1,2)'="P-" D PAUSE^ACDDEU
  1. S ACDQ=0
  1. D DEV^ACDDEU Q:ACDQ
  1. I $D(ACDSLAVE)!(IO'=IO(0)) D DISPLAY
  1. K ACDSLAVE S IO=IO(0)
  1. Q
  1. ;
  1. DSPHIST ; DISPLAY VISIT HISTORY TO HELP USER SELECT
  1. NEW IOST
  1. S IOST="C-VT100"
  1. D DSPHIST^ACDDEU ; display visit history
  1. Q
  1. ;
  1. DISPLAY ; EP - FOR TASKMAN
  1. I $D(ACDSLAVE) S IOP=ACDSLAVE D ^%ZIS
  1. U IO
  1. D DISPLAY2
  1. I $E(IOST,1,2)="P-" W @IOF
  1. I $D(ACDSLAVE) D ^%ZISC
  1. I $D(ZTQUEUED) D EOJ S ZTREQ="@"
  1. U 0
  1. Q
  1. ;
  1. DISPLAY2 ; DISPLAY VISIT FOR SELECTED MONTH
  1. I $E(IOST,1,2)="C-" W @IOF
  1. D CONF^ACDDEU W !
  1. W "CDMIS CLIENT SERVICE history for client ",ACDDFN,!!
  1. W "----------",!
  1. S ACDX=ACDSTART,ACDQ=0
  1. F S ACDX=$O(^TMP("ACD",$J,"VISITS",ACDX)) Q:$E(ACDX,1,5)'=ACDMONTH D Q:ACDQ
  1. . S ACDY=0
  1. . F S ACDY=$O(^TMP("ACD",$J,"VISITS",ACDX,ACDY)) Q:'ACDY D Q:ACDQ
  1. .. Q:$P(^ACDVIS(ACDY,0),U,4)'="CS"
  1. .. S ACDVIEN=ACDY
  1. .. D DSPV^ACDDEU
  1. .. D DSPCSH
  1. .. Q
  1. . Q
  1. W "----------",!
  1. Q
  1. ;
  1. DSPCSH ; DISPLAY CDMIS CLIENT SERVICE HISTORY FOR ONE CS VISIT
  1. K ^TMP("ACD",$J,"CS")
  1. S YY=0
  1. F S YY=$O(^ACDCS("C",ACDVIEN,YY)) Q:'YY S X=^ACDCS(YY,0) D
  1. . S Z=0
  1. . F S Z=$O(^ACDCS(YY,1,Z)) Q:'Z D
  1. .. S ACDPRV=$P(^ACDCS(YY,1,Z,0),U)
  1. .. S ^TMP("ACD",$J,"CS",ACDPRV,$P(X,U),YY)=$P(X,U,2)
  1. .. Q
  1. . Q
  1. S ACDPRV=0
  1. F S ACDPRV=$O(^TMP("ACD",$J,"CS",ACDPRV)) Q:'ACDPRV D Q:ACDQ
  1. .; D PFTV^XBPFTV(6,ACDPRV,.X)
  1. . S X=$P(^VA(200,ACDPRV,0),U)
  1. . W ?5,X,!
  1. . S YY=0
  1. . F S YY=$O(^TMP("ACD",$J,"CS",ACDPRV,YY)) Q:'YY S Z=0 F S Z=$O(^TMP("ACD",$J,"CS",ACDPRV,YY,Z)) Q:'Z D Q:ACDQ
  1. .. S X=^TMP("ACD",$J,"CS",ACDPRV,YY,Z)
  1. .. D PFTV^XBPFTV(9002170.6,X,.W)
  1. .. D F Q:ACDQ
  1. .. W ?15,YY,?19,W,?55,$J(+$P(^ACDCS(Z,0),U,4),5,2)_" h",!
  1. .. Q
  1. . Q
  1. K ^TMP("ACD",$J,"CS")
  1. Q
  1. ;
  1. F ;Form feed
  1. I $Y+4>IOSL D
  1. . I '$D(ZTQUEUED),'$D(ACDSLAVE),$E(IOST,1,2)'="P-" D PAUSE^ACDDEU S:$D(DIRUT) ACDQ=1
  1. . W @IOF
  1. . Q
  1. Q
  1. ;
  1. GETVSITS ; EP - GET CDMIS VISITS FOR THIS CLIENT
  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. GETMONTH ; GET MONTH
  1. S ACDQ=1
  1. S DIR(0)="DO^::E",DIR("A")="Enter month/year" K DA D ^DIR K DIR
  1. Q:$D(DIRUT)
  1. Q:Y=""
  1. S ACDMONTH=$E(Y,1,5)
  1. S ACDQ=0
  1. Q
  1. ;
  1. EOJ ;
  1. D ^%ZISC
  1. K ^TMP("ACD",$J)
  1. D ^ACDKILL
  1. Q