- BGP9DELP ; IHS/CMI/LAB - IHS HEDIS print ;
- ;;9.0;IHS CLINICAL REPORTING;;JUL 1, 2009
- ;
- ;
- PRINT ;
- K ^TMP($J)
- S BGPIOSL=$S($G(BGPGUI):55,1:IOSL)
- I BGPROT="D" G DEL
- D ^BGP9ELH
- S BGPGPG=0
- S BGPQUIT=""
- D PRINT1
- K ^TMP($J)
- I BGPROT="P" K ^XTMP("BGP9D",BGPJ,BGPH),^TMP($J) Q
- ;
- DEL ;create delimited output file
- D ^%ZISC ;close printer device
- K ^TMP($J)
- D ^BGP9ELL ;create ^tmp of delimited report
- K ^XTMP("BGP9D",BGPJ,BGPH)
- K ^TMP($J)
- Q
- ;
- PRINT1 ;EP
- S BGPIC=0 F S BGPIC=$O(BGPIND(BGPIC)) Q:BGPIC=""!(BGPQUIT) D
- .D HEADER^BGP9DPH ;header for all measures
- .I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- .W !,$P(^BGPELIN(BGPIC,0),U,3),!
- .I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- .W !,"Denominator(s):"
- .S BGPX=0 F S BGPX=$O(^BGPELIN(BGPIC,61,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT) D
- ..S BGPY=0 F S BGPY=$O(^BGPELIN(BGPIC,61,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT) D
- ...S BGPZ=0 F S BGPZ=$O(^BGPELIN(BGPIC,61,BGPY,1,BGPZ)) Q:BGPZ'=+BGPZ!(BGPQUIT) D
- ....I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- ....W !,^BGPELIN(BGPIC,61,BGPY,1,BGPZ,0)
- ....Q
- ...;W !
- ...Q
- ..Q
- .I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- .W !!,"Numerator(s):"
- .S BGPX=0 F S BGPX=$O(^BGPELIN(BGPIC,62,"B",BGPX)) Q:BGPX'=+BGPX!(BGPQUIT) D
- ..S BGPY=0 F S BGPY=$O(^BGPELIN(BGPIC,62,"B",BGPX,BGPY)) Q:BGPY'=+BGPY!(BGPQUIT) D
- ...S BGPZ=0 F S BGPZ=$O(^BGPELIN(BGPIC,62,BGPY,1,BGPZ)) Q:BGPZ'=+BGPZ!(BGPQUIT) D
- ....I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- ....W !,^BGPELIN(BGPIC,62,BGPY,1,BGPZ,0)
- ....Q
- ...Q
- ..Q
- .I $O(^BGPELIN(BGPIC,11,0)) W !,"Logic",! S BGPX=0 F S BGPX=$O(^BGPELIN(BGPIC,11,BGPX)) Q:BGPX'=+BGPX D
- ..I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- ..W !,^BGPELIN(BGPIC,11,BGPX,0)
- .I $O(^BGPELIN(BGPIC,51,0)) W !,"Performance Measure Description",! S BGPX=0 F S BGPX=$O(^BGPELIN(BGPIC,51,BGPX)) Q:BGPX'=+BGPX D
- ..I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- ..W !,^BGPELIN(BGPIC,51,BGPX,0)
- .I $O(^BGPELIN(BGPIC,52,0)) W !,"Past Performance and/or Target",! S BGPX=0 F S BGPX=$O(^BGPELIN(BGPIC,52,BGPX)) Q:BGPX'=+BGPX D
- ..I $Y>(BGPIOSL-3) D HEADER^BGP9DPH Q:BGPQUIT
- ..W !,^BGPELIN(BGPIC,52,BGPX,0)
- .X ^BGPELIN(BGPIC,3)
- ;
- D ^BGP9ELS
- 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
- BGP9DELP ; IHS/CMI/LAB - IHS HEDIS print ;
- +1 ;;9.0;IHS CLINICAL REPORTING;;JUL 1, 2009
- +2 ;
- +3 ;
- PRINT ;
- +1 KILL ^TMP($JOB)
- +2 SET BGPIOSL=$SELECT($GET(BGPGUI):55,1:IOSL)
- +3 IF BGPROT="D"
- GOTO DEL
- +4 DO ^BGP9ELH
- +5 SET BGPGPG=0
- +6 SET BGPQUIT=""
- +7 DO PRINT1
- +8 KILL ^TMP($JOB)
- +9 IF BGPROT="P"
- KILL ^XTMP("BGP9D",BGPJ,BGPH),^TMP($JOB)
- QUIT
- +10 ;
- DEL ;create delimited output file
- +1 ;close printer device
- DO ^%ZISC
- +2 KILL ^TMP($JOB)
- +3 ;create ^tmp of delimited report
- DO ^BGP9ELL
- +4 KILL ^XTMP("BGP9D",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 measures
- DO HEADER^BGP9DPH
- +3 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +4 WRITE !,$PIECE(^BGPELIN(BGPIC,0),U,3),!
- +5 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +6 WRITE !,"Denominator(s):"
- +7 SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPELIN(BGPIC,61,"B",BGPX))
- IF BGPX'=+BGPX!(BGPQUIT)
- QUIT
- Begin DoDot:2
- +8 SET BGPY=0
- FOR
- SET BGPY=$ORDER(^BGPELIN(BGPIC,61,"B",BGPX,BGPY))
- IF BGPY'=+BGPY!(BGPQUIT)
- QUIT
- Begin DoDot:3
- +9 SET BGPZ=0
- FOR
- SET BGPZ=$ORDER(^BGPELIN(BGPIC,61,BGPY,1,BGPZ))
- IF BGPZ'=+BGPZ!(BGPQUIT)
- QUIT
- Begin DoDot:4
- +10 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +11 WRITE !,^BGPELIN(BGPIC,61,BGPY,1,BGPZ,0)
- +12 QUIT
- End DoDot:4
- +13 ;W !
- +14 QUIT
- End DoDot:3
- +15 QUIT
- End DoDot:2
- +16 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +17 WRITE !!,"Numerator(s):"
- +18 SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPELIN(BGPIC,62,"B",BGPX))
- IF BGPX'=+BGPX!(BGPQUIT)
- QUIT
- Begin DoDot:2
- +19 SET BGPY=0
- FOR
- SET BGPY=$ORDER(^BGPELIN(BGPIC,62,"B",BGPX,BGPY))
- IF BGPY'=+BGPY!(BGPQUIT)
- QUIT
- Begin DoDot:3
- +20 SET BGPZ=0
- FOR
- SET BGPZ=$ORDER(^BGPELIN(BGPIC,62,BGPY,1,BGPZ))
- IF BGPZ'=+BGPZ!(BGPQUIT)
- QUIT
- Begin DoDot:4
- +21 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +22 WRITE !,^BGPELIN(BGPIC,62,BGPY,1,BGPZ,0)
- +23 QUIT
- End DoDot:4
- +24 QUIT
- End DoDot:3
- +25 QUIT
- End DoDot:2
- +26 IF $ORDER(^BGPELIN(BGPIC,11,0))
- WRITE !,"Logic",!
- SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPELIN(BGPIC,11,BGPX))
- IF BGPX'=+BGPX
- QUIT
- Begin DoDot:2
- +27 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +28 WRITE !,^BGPELIN(BGPIC,11,BGPX,0)
- End DoDot:2
- +29 IF $ORDER(^BGPELIN(BGPIC,51,0))
- WRITE !,"Performance Measure Description",!
- SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPELIN(BGPIC,51,BGPX))
- IF BGPX'=+BGPX
- QUIT
- Begin DoDot:2
- +30 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +31 WRITE !,^BGPELIN(BGPIC,51,BGPX,0)
- End DoDot:2
- +32 IF $ORDER(^BGPELIN(BGPIC,52,0))
- WRITE !,"Past Performance and/or Target",!
- SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPELIN(BGPIC,52,BGPX))
- IF BGPX'=+BGPX
- QUIT
- Begin DoDot:2
- +33 IF $Y>(BGPIOSL-3)
- DO HEADER^BGP9DPH
- IF BGPQUIT
- QUIT
- +34 WRITE !,^BGPELIN(BGPIC,52,BGPX,0)
- End DoDot:2
- +35 XECUTE ^BGPELIN(BGPIC,3)
- End DoDot:1
- +36 ;
- +37 DO ^BGP9ELS
- +38 DO EXIT
- +39 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