- BGP9DP7 ; IHS/CMI/LAB - print ind 10 ;
- ;;9.0;IHS CLINICAL REPORTING;;JUL 1, 2009
- ;
- ;
- ;this routine for Measure I10 ONLY
- I10 ;EP
- D H1 S BGPNODEN=1
- F BGPPC1="10.1" D PI Q:BGPQUIT
- Q
- PI ;EP
- S BGPDENP=0
- K BGPDHOLD
- K BGPCYP,BGPBLP,BGPPRP
- S BGPPC2=0 F S BGPPC2=$O(^BGPINDNC("AB",BGPPC1,BGPPC2)) Q:BGPPC2="" S BGPPC=$O(^BGPINDNC("AB",BGPPC1,BGPPC2,0)) D PI1
- Q
- PI1 ;
- K BGPEXCT,BGPSDP,BGPSDPN,BGPSDPO,BGPSDPD
- I BGPRTYPE'=4,BGPINDT="G",$P(^BGPINDNC(BGPPC,0),U,5)'=1 Q
- I BGPINDT="D",$P(^BGPINDNC(BGPPC,0),U,12)'=1 Q
- I BGPINDT="C",$P(^BGPINDNC(BGPPC,0),U,13)'=1 Q
- I BGPINDT="W",$P($G(^BGPINDNC(BGPPC,12)),U,2)'=1 Q
- I BGPINDT="E",$P($G(^BGPINDNC(BGPPC,12)),U,3)'=1 Q
- ;get numerator value of measure and calc %
- S BGPDF=$P(^BGPINDNC(BGPPC,0),U,9)
- I $P(^BGPINDNC(BGPPC,0),U,4)[".1" S BGPDHOLD=BGPDF
- I $P(^BGPINDNC(BGPPC,0),U,4)'[".1" S BGPDF=BGPDHOLD
- S BGPNP=$P(^DD(90536.03,BGPDF,0),U,4),N=$P(BGPNP,";"),P=$P(BGPNP,";",2)
- S BGPCYD=$$V^BGP9DP1C(1,BGPRPT,N,P,1) I $G(BGPAREAA) D SETEXA^BGP9DP1C(1,N,P)
- S BGPPRD=$$V^BGP9DP1C(2,BGPRPT,N,P,1) I $G(BGPAREAA) D SETEXA^BGP9DP1C(2,N,P)
- S BGPBLD=$$V^BGP9DP1C(3,BGPRPT,N,P,1) I $G(BGPAREAA) D SETEXA^BGP9DP1C(3,N,P)
- S BGPNF=$P(^BGPINDNC(BGPPC,0),U,9)
- S BGPNP=$P(^DD(90536.03,BGPNF,0),U,4),N=$P(BGPNP,";"),P=$P(BGPNP,";",2)
- D SETN^BGP9DP1C
- ;write header for 1.A.1
- W:'$G(BGPSUMON) !!,$P(^BGPINDNC(BGPPC,0),U,15)
- I $P(^BGPINDNC(BGPPC,0),U,16)]"" W:'$G(BGPSUMON) !?1,$P(^BGPINDNC(BGPPC,0),U,16)
- I $P(^BGPINDNC(BGPPC,0),U,19)]"" W:'$G(BGPSUMON) !?1,$P(^BGPINDNC(BGPPC,0),U,19)
- D H2
- Q
- H2 ;EP
- S BGPX="",BGPX=$$C(BGPCYN,0,8),$E(BGPX,9)=$S(BGPCYP]"":$J($G(BGPCYP),5,1),1:""),$E(BGPX,16)=$$C(BGPPRN,0,8),$E(BGPX,24)=$S(BGPPRP]"":$J($G(BGPPRP),5,1),1:""),$E(BGPX,32)=$$CALC(BGPCYN,BGPPRN)
- S $E(BGPX,39)=$$C(BGPBLN,0,8),$E(BGPX,47)=$S(BGPBLP]"":$J($G(BGPBLP),5,1),1:""),$E(BGPX,55)=$$CALC(BGPCYN,BGPBLN)
- W:'$G(BGPSUMON) ?20,BGPX
- Q
- H1 ;EP
- Q:$G(BGPSUMON)
- W !!?21,"REPORT",?31,"",?35,"PREV YR",?46,"",?49,"CHG from",?59,"BASE",?69,"",?72,"CHG from"
- W !?21,"PERIOD ",?35,"PERIOD ",?49,"PREV YR ",?59,"PERIOD ",?72,"BASE "
- Q
- CALC(N,O) ;ENTRY POINT
- NEW Z
- S Z=N-O,Z=$FN(Z,"+,",0)
- Q Z
- C(X,X2,X3) ;
- D COMMA^%DTC
- Q X
- BGP9DP7 ; IHS/CMI/LAB - print ind 10 ;
- +1 ;;9.0;IHS CLINICAL REPORTING;;JUL 1, 2009
- +2 ;
- +3 ;
- +4 ;this routine for Measure I10 ONLY
- I10 ;EP
- +1 DO H1
- SET BGPNODEN=1
- +2 FOR BGPPC1="10.1"
- DO PI
- IF BGPQUIT
- QUIT
- +3 QUIT
- PI ;EP
- +1 SET BGPDENP=0
- +2 KILL BGPDHOLD
- +3 KILL BGPCYP,BGPBLP,BGPPRP
- +4 SET BGPPC2=0
- FOR
- SET BGPPC2=$ORDER(^BGPINDNC("AB",BGPPC1,BGPPC2))
- IF BGPPC2=""
- QUIT
- SET BGPPC=$ORDER(^BGPINDNC("AB",BGPPC1,BGPPC2,0))
- DO PI1
- +5 QUIT
- PI1 ;
- +1 KILL BGPEXCT,BGPSDP,BGPSDPN,BGPSDPO,BGPSDPD
- +2 IF BGPRTYPE'=4
- IF BGPINDT="G"
- IF $PIECE(^BGPINDNC(BGPPC,0),U,5)'=1
- QUIT
- +3 IF BGPINDT="D"
- IF $PIECE(^BGPINDNC(BGPPC,0),U,12)'=1
- QUIT
- +4 IF BGPINDT="C"
- IF $PIECE(^BGPINDNC(BGPPC,0),U,13)'=1
- QUIT
- +5 IF BGPINDT="W"
- IF $PIECE($GET(^BGPINDNC(BGPPC,12)),U,2)'=1
- QUIT
- +6 IF BGPINDT="E"
- IF $PIECE($GET(^BGPINDNC(BGPPC,12)),U,3)'=1
- QUIT
- +7 ;get numerator value of measure and calc %
- +8 SET BGPDF=$PIECE(^BGPINDNC(BGPPC,0),U,9)
- +9 IF $PIECE(^BGPINDNC(BGPPC,0),U,4)[".1"
- SET BGPDHOLD=BGPDF
- +10 IF $PIECE(^BGPINDNC(BGPPC,0),U,4)'[".1"
- SET BGPDF=BGPDHOLD
- +11 SET BGPNP=$PIECE(^DD(90536.03,BGPDF,0),U,4)
- SET N=$PIECE(BGPNP,";")
- SET P=$PIECE(BGPNP,";",2)
- +12 SET BGPCYD=$$V^BGP9DP1C(1,BGPRPT,N,P,1)
- IF $GET(BGPAREAA)
- DO SETEXA^BGP9DP1C(1,N,P)
- +13 SET BGPPRD=$$V^BGP9DP1C(2,BGPRPT,N,P,1)
- IF $GET(BGPAREAA)
- DO SETEXA^BGP9DP1C(2,N,P)
- +14 SET BGPBLD=$$V^BGP9DP1C(3,BGPRPT,N,P,1)
- IF $GET(BGPAREAA)
- DO SETEXA^BGP9DP1C(3,N,P)
- +15 SET BGPNF=$PIECE(^BGPINDNC(BGPPC,0),U,9)
- +16 SET BGPNP=$PIECE(^DD(90536.03,BGPNF,0),U,4)
- SET N=$PIECE(BGPNP,";")
- SET P=$PIECE(BGPNP,";",2)
- +17 DO SETN^BGP9DP1C
- +18 ;write header for 1.A.1
- +19 IF '$GET(BGPSUMON)
- WRITE !!,$PIECE(^BGPINDNC(BGPPC,0),U,15)
- +20 IF $PIECE(^BGPINDNC(BGPPC,0),U,16)]""
- IF '$GET(BGPSUMON)
- WRITE !?1,$PIECE(^BGPINDNC(BGPPC,0),U,16)
- +21 IF $PIECE(^BGPINDNC(BGPPC,0),U,19)]""
- IF '$GET(BGPSUMON)
- WRITE !?1,$PIECE(^BGPINDNC(BGPPC,0),U,19)
- +22 DO H2
- +23 QUIT
- H2 ;EP
- +1 SET BGPX=""
- SET BGPX=$$C(BGPCYN,0,8)
- SET $EXTRACT(BGPX,9)=$SELECT(BGPCYP]"":$JUSTIFY($GET(BGPCYP),5,1),1:"")
- SET $EXTRACT(BGPX,16)=$$C(BGPPRN,0,8)
- SET $EXTRACT(BGPX,24)=$SELECT(BGPPRP]"":$JUSTIFY($GET(BGPPRP),5,1),1:"")
- SET $EXTRACT(BGPX,32)=$$CALC(BGPCYN,BGPPRN)
- +2 SET $EXTRACT(BGPX,39)=$$C(BGPBLN,0,8)
- SET $EXTRACT(BGPX,47)=$SELECT(BGPBLP]"":$JUSTIFY($GET(BGPBLP),5,1),1:"")
- SET $EXTRACT(BGPX,55)=$$CALC(BGPCYN,BGPBLN)
- +3 IF '$GET(BGPSUMON)
- WRITE ?20,BGPX
- +4 QUIT
- H1 ;EP
- +1 IF $GET(BGPSUMON)
- QUIT
- +2 WRITE !!?21,"REPORT",?31,"",?35,"PREV YR",?46,"",?49,"CHG from",?59,"BASE",?69,"",?72,"CHG from"
- +3 WRITE !?21,"PERIOD ",?35,"PERIOD ",?49,"PREV YR ",?59,"PERIOD ",?72,"BASE "
- +4 QUIT
- CALC(N,O) ;ENTRY POINT
- +1 NEW Z
- +2 SET Z=N-O
- SET Z=$FNUMBER(Z,"+,",0)
- +3 QUIT Z
- C(X,X2,X3) ;
- +1 DO COMMA^%DTC
- +2 QUIT X