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

AMHRP7.m

Go to the documentation of this file.
  1. AMHRP7 ; IHS/CMI/LAB - VISIT COUNTS BY PROVIDER 03 Jun 2009 11:56 AM ;
  1. ;;4.0;IHS BEHAVIORAL HEALTH;;MAY 14, 2010
  1. ;Designated Provider List
  1. ;
  1. W:$D(IOF) @IOF W !!?20,"DESIGNATED PROVIDER LIST",!!
  1. D DBHUSRP^AMHUTIL
  1. I '$D(^AMHSITE(DUZ(2),16,"B",DUZ)) W !!,"You will only see a list of patients for which you are the designated",!,"provider, regardless of how you answer the questions below.",!!
  1. PROG ;select program to run report for
  1. S AMHPROG=""
  1. S DIR(0)="S^M:MENTAL HEALTH;S:SOCIAL SERVICES;C:CHEMICAL DEPENDENCY or ALCOHOL/SUBSTANCE ABUSE;O:OTHER;T:OTHER NON-RPMS",DIR("A")="Which DESIGNATED PROVIDER",DIR("B")="M" D ^DIR K DIR S:$D(DUOUT) DIRUT=1
  1. I $D(DIRUT) D END Q
  1. S AMHPROG=Y,AMHPROGN=Y(0)
  1. PRV ;
  1. S DIR(0)="S^1:ONE PROVIDER;2:ALL PROVIDERS",DIR("A")="Run Report for",DIR("B")="1" D ^DIR K DIR S:$D(DUOUT) DIRUT=1
  1. I $D(DIRUT) G PROG
  1. S AMHS=Y
  1. S AMHPRV="" I '$D(^AMHSITE(DUZ(2),16,"B",DUZ)) D G DEMO
  1. .S AMHPRV=DUZ
  1. .W !!,"Reporting on your provider list only.",!!
  1. I AMHS=1 D
  1. .I AMHPROG="T" D FT Q
  1. .S DIC=200,DIC(0)="AEQMZ" D ^DIC Q:Y<0 S AMHPRV=+Y
  1. I AMHS=1,AMHPRV="" G PROG
  1. DEMO ;
  1. D DEMOCHK^AMHUTIL1(.AMHDEMO)
  1. I AMHDEMO=-1 G PRV
  1. ZIS ;
  1. S DIR(0)="S^P:PRINT Output;B:BROWSE Output on Screen",DIR("A")="Do you wish to ",DIR("B")="P" K DA D ^DIR K DIR
  1. I $D(DIRUT) G END
  1. I $G(Y)="B" D BROWSE,END Q
  1. S XBRC="M^AMHRP7",XBRP="PRINT^AMHRP7",XBNS="AMH",XBRX="END^AMHRP7"
  1. D ^XBDBQUE
  1. END K ZTSK,Y,AMHBD,AMHED,AMHCL,AMHS,IO("Q"),AMH80D,AMHBTH,AMHHRCN,AMHJOB,AMHLENG,AMHPCNT,AMHPG,AMHPN,AMHPROG,AMHPROGN,AMHPRV,AMHX,DFN,DIC,DIR,DIRUT,DTOUT,DUOUT,XBNS,XBRC,XBRP,XBTX,D
  1. Q
  1. ;
  1. FT ;
  1. S AMHPRV=""
  1. S DIR(0)="F^1:30",DIR("A")="Enter the OTHER NON-RPMS Designated Provider's Name" KILL DA D ^DIR KILL DIR
  1. I $D(DIRUT) Q
  1. S AMHPRV=Y
  1. Q
  1. BROWSE ;
  1. S XBRP="VIEWR^XBLM(""PRINT^AMHRP7"")"
  1. S XBNS="AMH",XBRC="M^AMHRP7",XBRX="END^AMHRP7",XBIOP=0 D ^XBDBQUE
  1. Q
  1. M ;
  1. S AMHJOB=$J,AMHBTH=$H
  1. D XTMP^AMHUTIL("AMHRP7","BH - DESIGNATED PROV LIST")
  1. S DFN=0 F S DFN=$O(^AMHPATR(DFN)) Q:DFN'=+DFN D
  1. .Q:'$$ALLOWP^AMHUTIL(DUZ,DFN)
  1. .Q:$$DEMO^AMHUTIL1(DFN,$G(AMHDEMO))
  1. .S AMHX=$S(AMHPROG="M":$P(^AMHPATR(DFN,0),U,2),AMHPROG="S":$P(^AMHPATR(DFN,0),U,3),AMHPROG="C":$P(^AMHPATR(DFN,0),U,4),AMHPROG="O":$P(^AMHPATR(DFN,0),U,12),AMHPROG="T":$P(^AMHPATR(DFN,0),U,13),1:"") I AMHX]"" D PROC
  1. .I AMHPROG="T" S AMHX=$P(^AMHPATR(DFN,0),U,14) I AMHX]"" D PROC
  1. Q
  1. PROC ;
  1. I AMHPRV]"",AMHPRV'=AMHX Q
  1. S ^XTMP("AMHRP7",AMHJOB,AMHBTH,AMHX,$P(^DPT(DFN,0),U),DFN)=""
  1. Q
  1. PRINT ;
  1. START ;
  1. K AMHX
  1. S AMH80D="-------------------------------------------------------------------------------"
  1. S AMHPG=0 D HEAD
  1. I '$D(^XTMP("AMHRP7",AMHJOB,AMHBTH)) W !!,"NO PATIENTS TO REPORT" G DONE
  1. S AMHPN="" K AMHQ
  1. F S AMHPN=$O(^XTMP("AMHRP7",AMHJOB,AMHBTH,AMHPN)) Q:AMHPN=""!($D(AMHQ)) D DFN
  1. G:$D(AMHQ) DONE
  1. DONE D DONE^AMHLEIN,^AMHEKL
  1. K ^XTMP("AMHRP7",AMHJOB,AMHBTH)
  1. Q
  1. DFN ;
  1. I $Y>(IOSL-4) D HEAD Q:$D(AMHQ)
  1. S AMHPCNT=0
  1. I AMHPROG'="T" W !!,"PROVIDER: ",$P(^VA(200,AMHPN,0),U),!
  1. I AMHPROG="T" W !!,"PROVIDER: ",AMHPN
  1. S AMHNAME="" F S AMHNAME=$O(^XTMP("AMHRP7",AMHJOB,AMHBTH,AMHPN,AMHNAME)) Q:AMHNAME=""!($D(AMHQ)) D
  1. .S DFN="" F S DFN=$O(^XTMP("AMHRP7",AMHJOB,AMHBTH,AMHPN,AMHNAME,DFN)) Q:DFN=""!($D(AMHQ)) D PROCP
  1. Q:$D(AMHQ)
  1. I $Y>(IOSL-4) D HEAD Q:$D(AMHQ)
  1. W !?57,"SUB-TOTAL: ",AMHPCNT
  1. Q
  1. PROCP ;
  1. S AMHPCNT=AMHPCNT+1
  1. I $Y>(IOSL-4) D HEAD Q:$D(AMHQ)
  1. W !,$P(^DPT(DFN,0),U)
  1. S AMHHRCN=$S($D(^AUPNPAT(DFN,41,DUZ(2),0)):$P(^(0),U,2),1:"")
  1. W ?26,AMHHRCN
  1. W ?37,$P(^DPT(DFN,0),U,2)
  1. S Y=$P(^DPT(DFN,0),U,3) W ?41,$E(Y,4,5),"/",$E(Y,6,7),"/",$E(Y,2,3)
  1. W ?52,$E($P($G(^AUPNPAT(DFN,11)),U,18),1,11)
  1. ;S D=$O(^AMHREC("AE",DFN,"")) I D]"" S D=9999999-$P(D,".") W ?65,$E(D,4,5),"/",$E(D,6,7),"/",$E(D,2,3)
  1. S D=$$LVD^AMHDPEE(DFN,"D") W ?65,D
  1. Q
  1. I $E(IOST)="C",IO=IO(0) W ! S DIR(0)="EO" D ^DIR K DIR I Y=0!(Y="^")!($D(DTOUT)) S AMHQ="" Q
  1. HEAD1 ;
  1. W:$D(IOF) @IOF S AMHPG=AMHPG+1
  1. W !?13,"********** CONFIDENTIAL PATIENT INFORMATION **********"
  1. W !,$P(^VA(200,DUZ,0),U,2),?72,"Page ",AMHPG,!
  1. W ?(80-$L($P(^DIC(4,DUZ(2),0),U))/2),$P(^DIC(4,DUZ(2),0),U),!
  1. S AMHLENG=$L(AMHPROGN)+25 W ?((80-AMHLENG)/2),"DESIGNATED ",AMHPROGN," PROVIDER LIST"
  1. S AMHLENG=$S(AMHPRV:$L($P(^VA(200,AMHPRV,0),U)),1:3)+10
  1. W !?((80-AMHLENG)/2),"PROVIDER: ",$S('AMHPRV:"ALL",1:$P(^VA(200,AMHPRV,0),U)),!
  1. PIH W !,"PATIENT NAME",?25,"CHART #",?37,"SEX",?43,"DOB",?52,"COMMUNITY",?64,"LAST VISIT",!,AMH80D
  1. Q