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

AMHLELV.m

Go to the documentation of this file.
  1. AMHLELV ; IHS/CMI/LAB - MENTAL HLTH ROUTINE ;
  1. ;;4.0;IHS BEHAVIORAL HEALTH;;MAY 14, 2010
  1. ;
  1. ;
  1. START ;EP display patients last visit
  1. K AMHQUIT
  1. D GETPAT
  1. I 'AMHPAT D XIT Q
  1. D PROV
  1. D GETREC
  1. I 'AMHR,AMHLVPR W !!,"No visits to that provider." H 2 D XIT Q
  1. I 'AMHR D XIT Q
  1. D FORMAT
  1. Q:AMHTYPE=""
  1. ZIS ;
  1. S XBRC="COMP^AMHLELV",XBRP=$S(AMHTYPE="E":"^AMHLEFP2",1:"EN1^AMHLELV"),XBNS="AMH",XBRX="XIT^AMHLELV"
  1. D ^XBDBQUE
  1. D XIT
  1. Q
  1. XIT ;
  1. D KILL^AUPNPAT
  1. K AMHVDFN,AMHVDG,AMHVDSH,AMHVFLE,AMHVI,AMHVIGR,AMHVL,AMHVNM,AMHX,AMHBRK,AMHTYPE,AMHDLAST
  1. K ZTSK,Y,AMHBD,AMHED,IO("Q"),AMH80D,AMHBTH,AMHHRCN,AMHJOB,AMHLENG,AMHPCNT,AMHPG,AMHPROV,AMHX,DFN,DIC,DIR,DIRUT,DTOUT,DUOUT,XBNS,XBRC,XBRP,XBTX,D,AMHC
  1. K AMHPRNM,AMHPRNT,AMHPROB,AMHPRV,AMHR,AMHRCNT,AMHRLOC,AMHSD,AMHTOT,AMHBDD,AMHBT,AMHEDD,AMHEDO,AMHBDO,AMHBT,AMHFOUND,AMHHIT,AMHID,AMHLINE,AMHP,AMHHRN,AMHODAT,AMHQUIT,AMHR0,AMHTICL,AMHTNRQ,AMHTQ,AMHTTXT
  1. K AMHPAT
  1. Q
  1. EN2(AMHPAT) ;
  1. NEW AMHR
  1. I '$D(^AMHREC("AE",AMHPAT)) W !!,"No visits of file for this patient - "_$P(^DPT(AMHPAT,0),U),! H 2 Q
  1. D PROV
  1. D GETREC
  1. I 'AMHR W !,"No visits for that patient." H 2 Q
  1. D EN^AMHDVD
  1. Q
  1. EN1 ;EP - called from xbdbque
  1. I $E(IOST)="C",IO=IO(0) D EN^AMHDVD Q
  1. K ^TMP("AMHVDSG",$J)
  1. D EP^AMHVDSG(AMHR)
  1. S AMHPG=0
  1. D PHD
  1. S AMHX=0 F S AMHX=$O(^TMP("AMHVDSG",$J,AMHX)) Q:AMHX'=+AMHX D
  1. .I $Y>(IOSL-3) D PHD
  1. .W !,^TMP("AMHVDSG",$J,AMHX,0)
  1. .Q
  1. K AMHX
  1. Q
  1. PHD ;
  1. I 'AMHPG G PHD1
  1. I $E(IOST)="C",IO=IO(0) W ! S DIR(0)="EO" D ^DIR K DIR I Y=0!(Y="^")!($D(DTOUT)) S AMHQUIT="" Q
  1. PHD1 ;
  1. S AMHPG=AMHPG+1 I AMHPG>1 W:$D(IOF) @IOF
  1. W !?13,"********** CONFIDENTIAL PATIENT INFORMATION **********"
  1. W !,$P(^VA(200,DUZ,0),U,2)," ",$$FMTE^XLFDT(DT),?20,"BEHAVIORAL HEALTH RECORD DISPLAY",?72,"Page ",AMHPG,!
  1. Q
  1. GETPAT ; GET PATIENT
  1. S AMHPAT=""
  1. S DIC("A")="Enter PATIENT (if known, otherwise press ENTER): ",DIC="^AUPNPAT(",DIC(0)="AEMQ" D ^DIC K DIC
  1. Q:Y<0
  1. S AMHPAT=+Y
  1. I '$$ALLOWP^AMHUTIL(DUZ,AMHPAT) D NALLOWP^AMHUTIL S AMHPAT="" Q
  1. I $G(AUPNDOD)]"" W !!?10,"***** PATIENT'S DATE OF DEATH IS ",$$FMTE^XLFDT(AUPNDOD),!! H 2
  1. Q
  1. ;
  1. GETREC ;
  1. S AMHR=""
  1. I '$D(^AMHREC("AE",AMHPAT)) W !!,"No visits on file for this patient.",! Q
  1. ;I AMHLVPR="" D
  1. ;.;S AMHDLAST=$O(^AMHREC("AE",AUPNPAT,"")),AMHR=$O(^AMHREC("AE",AUPNPAT,AMHDLAST,"")) Q
  1. NEW D,%,P S (D,%)="" F S D=$O(^AMHREC("AE",AMHPAT,D)) Q:D'=+D!(AMHR) D
  1. .S V=0 F S V=$O(^AMHREC("AE",AMHPAT,D,V)) Q:V'=+V D
  1. ..Q:'$$ALLOWVI^AMHUTIL(DUZ,V)
  1. ..I AMHLVPR="" S AMHR=V Q
  1. ..I $$PPINT^AMHUTIL(V)=AMHLVPR S AMHR=V
  1. .Q
  1. Q
  1. PROV ;
  1. S AMHLVPR=""
  1. S DIR(0)="Y",DIR("A")="Do you want a particular provider's last visit",DIR("B")="N" KILL DA D ^DIR KILL DIR
  1. I $D(DIRUT) Q
  1. I 'Y Q
  1. S DIC=200,DIC(0)="AEMQ",DIC("B")=$P(^VA(200,DUZ,0),U) D ^DIC
  1. I Y=-1 G PROV
  1. S AMHLVPR=+Y
  1. Q
  1. FORMAT ;
  1. S AMHTYPE=""
  1. S DIR(0)="S^E:Encounter Form Format;S:Standard Display",DIR("A")="Select Print Format",DIR("B")="E" D ^DIR K DIR S:$D(DUOUT) DIRUT=1
  1. Q:$D(DIRUT)
  1. S AMHTYPE=Y
  1. Q:AMHTYPE="S"
  1. K AMHEFT
  1. ;W !! S DIR(0)="S^F:Full Encounter Form;S:Suppressed Encounter Form;B:Both",DIR("A")="What type of form do you want to print"
  1. ;S DIR("B")=$S($P(^AMHSITE(DUZ(2),0),U,23)]"":$P(^AMHSITE(DUZ(2),0),U,23),1:"B") K DA D ^DIR K DIR
  1. D FORMDIR^AMHLEFP(AMHR)
  1. I $D(DIRUT) G FORMAT
  1. S AMHEFT=Y
  1. Q
  1. COMP ;
  1. Q