BGP4DHEP ; IHS/CMI/LAB - IHS HEDIS print ;
;;7.0;IHS CLINICAL REPORTING;;JAN 24, 2007
;
;
PRINT ;
K ^TMP($J)
I BGPROT="D" G DEL
D ^BGP4HEH
S BGPGPG=0
S BGPQUIT=""
D PRINT1
K ^TMP($J)
Q:BGPROT="P"
;
DEL ;create delimited output file
D ^%ZISC ;close printer device
K ^TMP($J)
D ^BGP4HEL ;create ^tmp of delimited report
K ^XTMP("BGP4D",BGPJ,BGPH)
K ^TMP($J)
Q
;
PRINT1 ;EP
S BGPIC=0 F S BGPIC=$O(BGPIND(BGPIC)) Q:BGPIC=""!(BGPQUIT) D
.D HEADER^BGP4DPH ;header for all indicators
.I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
.W !,$P(^BGPHEIF(BGPIC,0),U,3),!
.I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
.W !,"Denominator(s):"
.S BGPX=0 F S BGPX=$O(^BGPHEIF(BGPIC,61,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT) D
..S BGPY=0 F S BGPY=$O(^BGPHEIF(BGPIC,61,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT) D
...I $P(^BGPHEIF(BGPIC,61,BGPY,0),U,2)'[BGPRTYPE Q ;not a denom def for this report
...S BGPZ=0 F S BGPZ=$O(^BGPHEIF(BGPIC,61,BGPY,1,BGPZ)) Q:BGPZ'=+BGPZ!(BGPQUIT) D
....I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
....W !,^BGPHEIF(BGPIC,61,BGPY,1,BGPZ,0)
....Q
...;W !
...Q
..Q
.I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
.W !!,"Numerator(s):"
.S BGPX=0 F S BGPX=$O(^BGPHEIF(BGPIC,62,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT) D
..S BGPY=0 F S BGPY=$O(^BGPHEIF(BGPIC,62,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT) D
...I $P(^BGPHEIF(BGPIC,62,BGPY,0),U,2)'[BGPRTYPE Q ;not a denom def for this report
...S BGPZ=0 F S BGPZ=$O(^BGPHEIF(BGPIC,62,BGPY,1,BGPZ)) Q:BGPZ'=+BGPZ!(BGPQUIT) D
....I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
....W !,^BGPHEIF(BGPIC,62,BGPY,1,BGPZ,0)
....Q
...;W !
...Q
..Q
.W ! S BGPX=0 F S BGPX=$O(^BGPHEIF(BGPIC,11,BGPX)) Q:BGPX'=+BGPX D
..I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
..W !,^BGPHEIF(BGPIC,11,BGPX,0)
.W ! S BGPX=0 F S BGPX=$O(^BGPHEIF(BGPIC,51,BGPX)) Q:BGPX'=+BGPX D
..I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
..W !,^BGPHEIF(BGPIC,51,BGPX,0)
.W ! S BGPX=0 F S BGPX=$O(^BGPHEIF(BGPIC,52,BGPX)) Q:BGPX'=+BGPX D
..I $Y>(IOSL-3) D HEADER^BGP4DPH Q:BGPQUIT
..W !,^BGPHEIF(BGPIC,52,BGPX,0)
.X ^BGPHEIF(BGPIC,3)
;
;D ^BGP4DSP
D ^BGP4HES
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
BGP4DHEP ; IHS/CMI/LAB - IHS HEDIS print ;
+1 ;;7.0;IHS CLINICAL REPORTING;;JAN 24, 2007
+2 ;
+3 ;
PRINT ;
+1 KILL ^TMP($JOB)
+2 IF BGPROT="D"
GOTO DEL
+3 DO ^BGP4HEH
+4 SET BGPGPG=0
+5 SET BGPQUIT=""
+6 DO PRINT1
+7 KILL ^TMP($JOB)
+8 IF BGPROT="P"
QUIT
+9 ;
DEL ;create delimited output file
+1 ;close printer device
DO ^%ZISC
+2 KILL ^TMP($JOB)
+3 ;create ^tmp of delimited report
DO ^BGP4HEL
+4 KILL ^XTMP("BGP4D",BGPJ,BGPH)
+5 KILL ^TMP($JOB)
+6 QUIT
+7 ;
PRINT1 ;EP
+1 SET BGPIC=0
FOR
SET BGPIC=$ORDER(BGPIND(BGPIC))
IF BGPIC=""!(BGPQUIT)
QUIT
Begin DoDot:1
+2 ;header for all indicators
DO HEADER^BGP4DPH
+3 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+4 WRITE !,$PIECE(^BGPHEIF(BGPIC,0),U,3),!
+5 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+6 WRITE !,"Denominator(s):"
+7 SET BGPX=0
FOR
SET BGPX=$ORDER(^BGPHEIF(BGPIC,61,"B",BGPX))
IF BGPX'=+BGPX!(BGPQUIT)
QUIT
Begin DoDot:2
+8 SET BGPY=0
FOR
SET BGPY=$ORDER(^BGPHEIF(BGPIC,61,"B",BGPX,BGPY))
IF BGPY'=+BGPY!(BGPQUIT)
QUIT
Begin DoDot:3
+9 ;not a denom def for this report
IF $PIECE(^BGPHEIF(BGPIC,61,BGPY,0),U,2)'[BGPRTYPE
QUIT
+10 SET BGPZ=0
FOR
SET BGPZ=$ORDER(^BGPHEIF(BGPIC,61,BGPY,1,BGPZ))
IF BGPZ'=+BGPZ!(BGPQUIT)
QUIT
Begin DoDot:4
+11 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+12 WRITE !,^BGPHEIF(BGPIC,61,BGPY,1,BGPZ,0)
+13 QUIT
End DoDot:4
+14 ;W !
+15 QUIT
End DoDot:3
+16 QUIT
End DoDot:2
+17 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+18 WRITE !!,"Numerator(s):"
+19 SET BGPX=0
FOR
SET BGPX=$ORDER(^BGPHEIF(BGPIC,62,"B",BGPX))
IF BGPX'=+BGPX!(BGPQUIT)
QUIT
Begin DoDot:2
+20 SET BGPY=0
FOR
SET BGPY=$ORDER(^BGPHEIF(BGPIC,62,"B",BGPX,BGPY))
IF BGPY'=+BGPY!(BGPQUIT)
QUIT
Begin DoDot:3
+21 ;not a denom def for this report
IF $PIECE(^BGPHEIF(BGPIC,62,BGPY,0),U,2)'[BGPRTYPE
QUIT
+22 SET BGPZ=0
FOR
SET BGPZ=$ORDER(^BGPHEIF(BGPIC,62,BGPY,1,BGPZ))
IF BGPZ'=+BGPZ!(BGPQUIT)
QUIT
Begin DoDot:4
+23 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+24 WRITE !,^BGPHEIF(BGPIC,62,BGPY,1,BGPZ,0)
+25 QUIT
End DoDot:4
+26 ;W !
+27 QUIT
End DoDot:3
+28 QUIT
End DoDot:2
+29 WRITE !
SET BGPX=0
FOR
SET BGPX=$ORDER(^BGPHEIF(BGPIC,11,BGPX))
IF BGPX'=+BGPX
QUIT
Begin DoDot:2
+30 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+31 WRITE !,^BGPHEIF(BGPIC,11,BGPX,0)
End DoDot:2
+32 WRITE !
SET BGPX=0
FOR
SET BGPX=$ORDER(^BGPHEIF(BGPIC,51,BGPX))
IF BGPX'=+BGPX
QUIT
Begin DoDot:2
+33 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+34 WRITE !,^BGPHEIF(BGPIC,51,BGPX,0)
End DoDot:2
+35 WRITE !
SET BGPX=0
FOR
SET BGPX=$ORDER(^BGPHEIF(BGPIC,52,BGPX))
IF BGPX'=+BGPX
QUIT
Begin DoDot:2
+36 IF $Y>(IOSL-3)
DO HEADER^BGP4DPH
IF BGPQUIT
QUIT
+37 WRITE !,^BGPHEIF(BGPIC,52,BGPX,0)
End DoDot:2
+38 XECUTE ^BGPHEIF(BGPIC,3)
End DoDot:1
+39 ;
+40 ;D ^BGP4DSP
+41 DO ^BGP4HES
+42 DO EXIT
+43 QUIT
EXIT ;
+1 IF $EXTRACT(IOST)="C"
IF IO=IO(0)
IF '$DATA(ZTQUEUED)
WRITE !
SET DIR(0)="EO"
SET DIR("A")="End of report. Press ENTER"
DO ^DIR
KILL DIR
IF $DATA(DUOUT)
SET DIRUT=1
+2 QUIT
C(X,X2,X3) ;
+1 DO COMMA^%DTC
+2 QUIT X