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

AGBENPRC.m

Go to the documentation of this file.
  1. AGBENPRC ;IHS/ASDS/TPF - PRINT BENEFIT PRODUCTIVITY REPORT BY COORD; MAR 19, 2010
  1. ;;7.1;PATIENT REGISTRATION;**4,7,8**;AUG 25, 2005
  1. ;
  1. START ;
  1. W @IOF
  1. D INIT
  1. ASKDATE ;EP -
  1. K DIR
  1. S DIR(0)="YO"
  1. S DIR("A")="DO YOU WISH TO ENTER A DATE RANGE"
  1. S DIR("B")="YES"
  1. D ^DIR
  1. Q:$D(DTOUT)!$D(DUOUT)
  1. I 'Y S AGBEG=$O(^AUPNAPPS("D","")),AGEND=$O(^AUPNAPPS("D",""),-1) G ASKCO
  1. ASKBEG ;EP -
  1. W !!
  1. S %DT("A")="SELECT BEGINNING DATE RANGE: "
  1. S %DT="APE"
  1. D ^%DT
  1. G:X=""!(X[U) ASKDATE
  1. S AGBEG=Y
  1. ASKEND ;
  1. W !!
  1. S %DT("A")="SELECT ENDING DATE RANGE: "
  1. S %DT="APE"
  1. D ^%DT
  1. G:X=""!(X[U)!(Y<0) ASKBEG
  1. S AGEND=Y
  1. I AGBEG>AGEND W !!,*7,"INVALID ENTRY - The END is before the BEGINNING." G ASKBEG
  1. ;
  1. ASKCO ;EP -
  1. W !!
  1. K DIR,ASKCOORD
  1. S DIR(0)="YO"
  1. S DIR("A")="DO YOU WISH TO INCLUDE A PARTICULAR BENEFIT COORDINATOR"
  1. S DIR("B")="YES"
  1. D ^DIR
  1. G:$D(DTOUT)!$D(DUOUT) ASKDATE
  1. I 'Y G ASKTYPE
  1. ASKCO1 ;EP -
  1. K DIR,DIC,DIE,DR,DA
  1. S DIC=200
  1. S DIC("A")="SELECT BENEFIT COORDINATOR: "
  1. S:$D(ASKCOORD) DIC("A")="SELECT ANOTHER BENEFIT COORDINATOR: "
  1. S DIC(0)="AEMQ"
  1. D ^DIC
  1. I +Y>0 S ASKCOORD(+Y)="" G ASKCO1
  1. ;
  1. ;
  1. ASKTYPE ;EP - APPLICATION TYPE
  1. W !!
  1. K DIR,APPTYPE
  1. S DIR(0)="YO"
  1. S DIR("A")="DO YOU WISH TO INCLUDE A PARTICULAR APPLICATION TYPE"
  1. S DIR("B")="YES"
  1. D ^DIR
  1. G:$D(DTOUT)!$D(DUOUT) ASKCO
  1. I 'Y G ASKSTAT
  1. ;
  1. ASKTYPE1 ;EP -
  1. K DIR,DIE,DR,DA,DIC
  1. S DIC="^AUPNAPPT("
  1. S DIC("A")="SELECT AN APPLICATION TYPE: "
  1. S:$D(APPTYPE) DIC("A")="SELECT ANOTHER APPLICATION TYPE: "
  1. S DIC(0)="AEMQ"
  1. D ^DIC
  1. G:X="" ASKSTAT
  1. I Y>0 S APPTYPE(+Y)="" G ASKTYPE1
  1. ;
  1. ASKSTAT ;EP - OVERALL STATUS
  1. W !!
  1. K DIR,ASKSTAT
  1. S DIR(0)="YO"
  1. S DIR("A")="DO YOU WISH TO INCLUDE A PARTICULAR STATUS? "
  1. S DIR("B")="YES"
  1. D ^DIR
  1. G:$D(DTOUT)!$D(DUOUT) ASKTYPE
  1. I 'Y G CONT
  1. ;
  1. ASKSTAT1 ;EP -
  1. S CHOICE=$P(^DD(9000045.11,.04,0),U,3)
  1. K DIR
  1. S DIR("A")="ENTER AN APPLICATION STATUS? "
  1. S:$D(ASKSTAT) DIR("A")="ENTER ANOTHER APPLICATION STATUS? "
  1. S DIR(0)="SO^"_CHOICE
  1. D ^DIR
  1. G:$D(DTOUT)!$D(DUOUT) ASKTYPE
  1. I Y'="" S ASKSTAT(Y)="" G ASKSTAT1
  1. CONT ;EP -
  1. D DEV Q:POP
  1. I $D(ZTSK) W !,"Report queued with task # ",$G(ZTSK) K DIR S DIR(0)="E" D ^DIR Q
  1. U IO
  1. D QUEUED
  1. D HOME^%ZIS
  1. D ^%ZISC
  1. Q
  1. QUEUED ;
  1. D PROCESS
  1. D PRINT
  1. Q
  1. PROCESS ;
  1. N IEN,REC
  1. S AGBEGX=$$FMTE^XLFDT(AGBEG,5)
  1. S AGENDX=$$FMTE^XLFDT(AGEND,5)
  1. K ^XTMP("AGBENPRC",$J)
  1. S AGBEG=AGBEG-.01
  1. F S AGBEG=$O(^AUPNAPPS("D",AGBEG)) Q:AGBEG=""!(AGBEG>AGEND) D
  1. .S IEN=""
  1. .F S IEN=$O(^AUPNAPPS("D",AGBEG,IEN)) Q:IEN="" D
  1. ..S REC=""
  1. ..F S REC=$O(^AUPNAPPS("D",AGBEG,IEN,REC)) Q:REC="" D
  1. ...S AGPAT=$$GET1^DIQ(9000045,IEN_",",.01,"I")
  1. ...S AGCHART=$P($G(^AUPNPAT(AGPAT,41,DUZ(2),0)),U,2)
  1. ...S:AGCHART="" AGCHART="UNDEF"
  1. ...S AGTYPE=$P($G(^AUPNAPPS(IEN,11,REC,0)),U,2)
  1. ...S:AGTYPE="" AGTYPE="UNDEF"
  1. ...I $D(APPTYPE) Q:'$D(APPTYPE(AGTYPE))
  1. ...S:AGTYPE'="UNDEF" AGTYPE=$P($G(^AUPNAPPT(AGTYPE,0)),U)
  1. ...S PERSREC=$P($G(^AUPNAPPS(IEN,11,REC,0)),U,3)
  1. ...S:PERSREC="" PERSREC="UNDEF"
  1. ...I $D(ASKCOORD) Q:'$D(ASKCOORD(PERSREC))
  1. ...S:PERSREC'="UNDEF" PERSREC=$P($G(^VA(200,PERSREC,0)),U)
  1. ...S OVERSTAT=$P($G(^AUPNAPPS(IEN,11,REC,0)),U,4)
  1. ...S:OVERSTAT="" OVERSTAT="UNDEF"
  1. ...I $D(ASKSTAT) Q:'$D(ASKSTAT(OVERSTAT))
  1. ...S IENS=REC_","_IEN_","
  1. ...S OVERSTAT=$$GET1^DIQ(9000045.11,IENS,.04,"E")
  1. ...S:OVERSTAT="" OVERSTAT="UNDEF"
  1. ...;
  1. ...S ^XTMP("AGBENPRC",$J,PERSREC,AGBEG,AGTYPE,OVERSTAT,AGCHART)=""
  1. Q
  1. PRINT ;
  1. ;
  1. N AGBEG,AGBEGEX,PERSREC,OLDPERS,AGTYPE,OVERSTAT,AGCHART,ESC,AGCNT ;AG*7.1*8
  1. S PERSREC=$O(^XTMP("AGBENPRC",$J,""))
  1. I PERSREC="" W !!,"NO APPLICATIONS FOUND WITH THE CRITERIA ENTERED" H 3 Q
  1. S PERSREC="",OLDPERS="",AGCNT=0 ;AG*7.1*8
  1. ;F S PERSREC=$O(^XTMP("AGBENPRC",$J,PERSREC)) Q:PERSREC="" D
  1. ;AG*7.1*7/IHS/SD/AR 02/23/2010
  1. F S PERSREC=$O(^XTMP("AGBENPRC",$J,PERSREC)) Q:PERSREC=""!$G(ESC) D
  1. .I OLDPERS'=PERSREC D
  1. ..;I IOST[("C-") W !! K DIR S DIR(0)="E" D ^DIR
  1. ..;AG*7.1*7/IHS/SD/AR 02/23/2010
  1. ..I IOST[("C-") W !! K DIR S DIR(0)="E" D ^DIR S ESC=X=U
  1. ..Q:$G(ESC)
  1. ..S AGCNT=AGCNT+1 ;AG*7.1*8
  1. ..D HDR,SUBHDR
  1. .Q:$G(ESC)
  1. .S AGBEG=""
  1. .F S AGBEG=$O(^XTMP("AGBENPRC",$J,PERSREC,AGBEG)) Q:AGBEG="" D
  1. ..S AGTYPE=""
  1. ..F S AGTYPE=$O(^XTMP("AGBENPRC",$J,PERSREC,AGBEG,AGTYPE)) Q:AGTYPE="" D
  1. ...S OVERSTAT=""
  1. ...F S OVERSTAT=$O(^XTMP("AGBENPRC",$J,PERSREC,AGBEG,AGTYPE,OVERSTAT)) Q:OVERSTAT="" D
  1. ....S AGCHART=""
  1. ....;F S AGCHART=$O(^XTMP("AGBENPRC",$J,PERSREC,AGBEG,AGTYPE,OVERSTAT,AGCHART)) Q:AGCHART="" D
  1. ....;AG*7.1*7/IHS/SD/AR 02/23/2010
  1. ....F S AGCHART=$O(^XTMP("AGBENPRC",$J,PERSREC,AGBEG,AGTYPE,OVERSTAT,AGCHART)) Q:AGCHART=""!$G(ESC) D
  1. .....;I ($Y=(IOSL-4)) W !! K DIR S DIR(0)="E" D:IOST[("C-") ^DIR D HDR,SUBHDR
  1. .....;AG*7.1*7/IHS/SD/AR 02/23/2010
  1. .....I ($Y=(IOSL-4)) W !! K DIR S DIR(0)="E" D:IOST[("C-") ^DIR S ESC=X=U Q:$G(ESC) D HDR,SUBHDR
  1. .....S Y=AGBEG X ^DD("DD") S AGBEGEX=Y
  1. .....W !,AGBEGEX
  1. .....W ?15,AGCHART
  1. .....W ?30,AGTYPE
  1. .....W ?60,OVERSTAT
  1. .....S AGCNT(PERSREC,AGTYPE,OVERSTAT)=$G(AGCNT(PERSREC,AGTYPE,OVERSTAT))+1 ;AG*7.1*8
  1. .....S AGCNT(0,AGTYPE,OVERSTAT)=$G(AGCNT(0,AGTYPE,OVERSTAT))+1 ;AG*7.1*8
  1. .....;I IOST[("C-"),'$O(^XTMP("AGBENPRC",$J,PERSREC)) D HDR,SUBHDR
  1. .D TOT(PERSREC) ;AG*7.1*8
  1. I $G(AGCNT)>1 D ;AG*7.1*8
  1. .I IOST[("C-") W !! K DIR S DIR(0)="E" D ^DIR S ESC=X=U
  1. .Q:$G(ESC)
  1. .D TOT(0) ;AG*7.1*8
  1. I $G(ESC) K ^XTMP("AGBENPRC",$J) Q
  1. D ^%ZISC
  1. I '$D(ZTQUEUED) I $Y>IOSL-4,(IOST[("C-")) W !! K DIR S DIR(0)="E" D ^DIR
  1. K ^XTMP("AGBENPRC",$J)
  1. Q
  1. INIT ;
  1. S AGUSER=$$GET1^DIQ(200,DUZ_",",.01,"E")
  1. S AGLOC=$$GET1^DIQ(9999999.06,DUZ(2)_",",.01,"E")
  1. S AGRPTNAM="BENEFIT COORDINATOR PRODUCTIVITY REPORT BY COORDINATOR"
  1. X ^%ZOSF("UCI") S AGUCI=Y
  1. D NOW^%DTC
  1. S Y=% X ^DD("DD")
  1. S AGRPTDT=Y
  1. S AGPAGE=0
  1. S $P(AGDASH,"-",81)=""
  1. S $P(AGEQUAL,"=",81)=""
  1. Q
  1. HDR ;
  1. S AGPAGE=AGPAGE+1
  1. W @IOF
  1. W !,AGUSER,?70,"Page ",AGPAGE
  1. W !,$$C^XBFUNC(AGLOC)
  1. W !,$$C^XBFUNC(AGRPTNAM)
  1. W !,$$C^XBFUNC("UCI: "_AGUCI)
  1. W !,$$C^XBFUNC("Report Date: "_AGRPTDT)
  1. S STR="Date range From "_AGBEGX_" to "_AGENDX
  1. W !,$$C^XBFUNC(STR)
  1. Q
  1. SUBHDR ;
  1. W !!
  1. W AGEQUAL
  1. W "REPORT FOR DATES OBTAINED FROM "
  1. W AGBEGX
  1. W " TO ",AGENDX
  1. W !,"FOR "
  1. I '$D(APPTYPE) W !,"ALL APPLICATION TYPES"
  1. E D
  1. .W "APPLICATION TYPES OF "
  1. .S APPTYPE=""
  1. .F S APPTYPE=$O(APPTYPE(APPTYPE)) Q:APPTYPE="" D
  1. ..W $$GET1^DIQ(9000048,APPTYPE_",",.01,"E")
  1. ..I $O(APPTYPE(APPTYPE)) W ","
  1. W !,"provided by ",PERSREC
  1. W !,AGEQUAL
  1. W !,"DATE",?15,"CHART",?30,"APPLICATION TYPE",?60,"STATUS"
  1. W !,"OBTAINED"
  1. W !,AGDASH
  1. Q
  1. DEV ;
  1. K %ZIS,ZTSK
  1. S %ZIS="OPQ"
  1. D ^%ZIS
  1. Q:POP
  1. Q:'$D(IO("Q"))
  1. S ZTRTN="QUEUED^AGBENPRC",ZTDESC=AGRPTNAM
  1. S ZTSAVE("AG*")=""
  1. S ZTSAVE("ASKSTAT")=""
  1. S ZTSAVE("APPTYPE")=""
  1. S ZTSAVE("ASKCOORD")=""
  1. D ^%ZTLOAD
  1. Q
  1. TOT(REC) ; ;AG*7.1*8
  1. I REC=0 D
  1. . D HDR
  1. . W !!,?34,"Report Totals"
  1. W !!!,"APPLICATION",?30,"STATUS",?48,"TOTAL COUNT"
  1. W !,"TYPE"
  1. W !,AGEQUAL
  1. N AGTYPE,AGSTAT
  1. S (AGTYPE,AGSTAT)=""
  1. F S AGTYPE=$O(AGCNT(REC,AGTYPE)) Q:AGTYPE="" D
  1. . F S AGSTAT=$O(AGCNT(REC,AGTYPE,AGSTAT)) Q:AGSTAT="" D
  1. .. W !,AGTYPE,?30,AGSTAT,?50,$G(AGCNT(REC,AGTYPE,AGSTAT))
  1. Q