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

BGP2DHEP.m

Go to the documentation of this file.
BGP2DHEP ; IHS/CMI/LAB - IHS HEDIS print ;
 ;;12.1;IHS CLINICAL REPORTING;;MAY 17, 2012;Build 66
 ;
 ;
PRINT ;
 K ^TMP($J)
 S BGPIOSL=$S($G(BGPGUI):55,1:IOSL)
 I BGPROT="D" G DEL
 S BGPPTYPE="P"
 D ^BGP2HEH
 S BGPGPG=0
 S BGPQUIT=""
 D PRINT1
 K ^TMP($J)
 I BGPROT="P" K ^XTMP("BGP2D",BGPJ,BGPH),^TMP($J) Q
 ;
DEL ;create delimited output file
 S BGPPTYPE="D"
 I '$D(BGPGUI) D ^%ZISC ;close printer device
 K ^TMP($J)
 D ^BGP2HEL ;create ^tmp of delimited report
 K ^XTMP("BGP2D",BGPJ,BGPH)
 K ^TMP($J)
 Q
WP ;
 K ^UTILITY($J,"W")
 S BGPZ=0,BGPLCNT=0
 S DIWL=1,DIWR=80,DIWF="",BGPZ=0 F  S BGPZ=$O(^BGPHEIB(BGPIC,BGPNODE,BGPY,1,BGPZ)) Q:BGPZ'=+BGPZ  D
 .S BGPLCNT=BGPLCNT+1
 .S X=^BGPHEIB(BGPIC,BGPNODE,BGPY,1,BGPZ,0) S:BGPLCNT=1 X=" - "_X D ^DIWP
 .Q
WPS ;
 S Z=0 F  S Z=$O(^UTILITY($J,"W",DIWL,Z)) Q:Z'=+Z  D
 .I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 .W !,^UTILITY($J,"W",DIWL,Z,0)
 K DIWL,DIWR,DIWF,Z
 K ^UTILITY($J,"W"),X
 Q
 ;
PRINT1 ;EP
 S BGPIC=0 F  S BGPIC=$O(BGPIND(BGPIC)) Q:BGPIC=""!(BGPQUIT)  D
 .D HEADER^BGP2DPH ;header for all measures
 .I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 .W !,$P(^BGPHEIB(BGPIC,0),U,3),!
 .I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 .W !,"Denominator(s):"
 .S BGPNODE=61
 .S BGPX=0 F  S BGPX=$O(^BGPHEIB(BGPIC,61,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT)  D
 ..S BGPY=0 F  S BGPY=$O(^BGPHEIB(BGPIC,61,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT)  D
 ...I $P(^BGPHEIB(BGPIC,61,BGPY,0),U,2)'[BGPRTYPE Q  ;not a denom def for this report
 ...D WP
 .I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 .W !!,"Numerator(s):"
 .S BGPNODE=62
 .S BGPX=0 F  S BGPX=$O(^BGPHEIB(BGPIC,62,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT)  D
 ..S BGPY=0 F  S BGPY=$O(^BGPHEIB(BGPIC,62,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT)  D
 ...I $P(^BGPHEIB(BGPIC,62,BGPY,0),U,2)'[BGPRTYPE Q  ;not a denom def for this report
 ...D WP
 .I $O(^BGPHEIB(BGPIC,11,0)) W !!,"Logic:" S BGPX=0 F  S BGPX=$O(^BGPHEIB(BGPIC,11,BGPX)) Q:BGPX'=+BGPX  D
 ..I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 ..W !,^BGPHEIB(BGPIC,11,BGPX,0)
 .I $O(^BGPHEIB(BGPIC,51,0)) W !!,"Performance Measure Description:" S BGPX=0 F  S BGPX=$O(^BGPHEIB(BGPIC,51,BGPX)) Q:BGPX'=+BGPX  D
 ..I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 ..W !,^BGPHEIB(BGPIC,51,BGPX,0)
 .W !!,"HEDIS Rates:"
 .I '$O(^BGPHEIB(BGPIC,52,0)) W !,"Not Reported." I 1
 .E  S BGPX=0 F  S BGPX=$O(^BGPHEIB(BGPIC,52,BGPX)) Q:BGPX'=+BGPX  D
 ..I $Y>(BGPIOSL-3) D HEADER^BGP2DPH Q:BGPQUIT
 ..W !,^BGPHEIB(BGPIC,52,BGPX,0)
 .X ^BGPHEIB(BGPIC,3)
 ;
 ;D ^BGP2DSP
 Q:BGPQUIT
 D ^BGP2HES
 D EXIT
 Q
EXIT ;
 I $E(IOST)="C",IO=IO(0),'$D(ZTQUEUED) W ! S DIR(0)="EO",DIR("A")="End of report.  Press ENTER" D ^DIR K DIR S:$D(DUOUT) DIRUT=1
 Q
C(X,X2,X3) ;
 D COMMA^%DTC
 Q X