- BGPDP32 ; IHS/CMI/LAB - print ind 32 ;
- ;;7.0;IHS CLINICAL REPORTING;;JAN 24, 2007
- ;
- ;
- I32 ;EP ;
- ;Q:'$D(BGPIND(30))
- D HEADER^BGPDPH
- W !,"Indicator 32: HIV Testing"
- W !!,"Denominator is all patients with a positive value in the year prior",!," to the end of the time period for any of the following lab tests:"
- S BGPX=0 F S BGPX=$O(^BGPILAB(BGPX)) Q:BGPX'=+BGPX D
- .I $Y>(IOSL-2) D HEADER^BGPDPH Q:BGPQUIT
- .W !?5,$P(^LAB(60,BGPX,0),U),?38," "
- .S Y=0 F S Y=$O(^BGPILAB(BGPX,11,Y)) Q:Y'=+Y W " ",$P(^BGPILAB(BGPX,11,Y,0),U)," ;"
- W !!,"Increase the percentage of high-risk sexually active persons who have been",!,"tested for HIV.",!
- I $Y>(IOSL-7) D HEADER^BGPDPH Q:BGPQUIT
- D H1^BGPDPH
- S BGPCYD=$$V(BGPRPT,20,1),BGPCYN=$$V(BGPRPT,20,2),BGPCYP=$S(BGPCYD:((BGPCYN/BGPCYD)*100),1:"")
- S BGP98D=$$V(BGPRPT,90,1),BGP98N=$$V(BGPRPT,90,2),BGP98P=$S(BGP98D:((BGP98N/BGP98D)*100),1:"")
- S BGPPRD=$$V(BGPRPT,50,1),BGPPRN=$$V(BGPRPT,50,2),BGPPRP=$S(BGPPRD:((BGPPRN/BGPPRD)*100),1:"")
- W !,"# Patients w/Positive",!?2,"result",?22,$$C(BGP98D,0,8),?37,$$C(BGPPRD,0,8),?52,$$C(BGPCYD,0,8)
- W !!,"# w/HIV Test recorded",!?2,"w/in 1 yr of",!?2,"end of time period"
- D H2^BGPDPH
- Q
- Q
- CALC(N,O) ;ENTRY POINT
- NEW Z
- I O=0!(N=0)!(O="")!(N="") Q "**"
- NEW X,X2,X3
- S X=N,X2=1,X3=0 D COMMA^%DTC S N=X
- S X=O,X2=1,X3=0 D COMMA^%DTC S O=X
- I +O=0 Q "**"
- S Z=(((N-O)/O)*100),Z=$FN(Z,"+,",1)
- Q Z
- V(R,N,P) ;
- NEW Y
- I $G(BGPAREAA),'$G(BGPSUMR) G VA
- Q $P($G(^BGPD(R,N)),U,P)
- VA ;
- NEW X,C,V,MT,FT,M,F,B S X=0,C="" F S X=$O(BGPSUL(X)) Q:X'=+X D
- .S V=$P($G(^BGPD(X,N)),U,P)
- .I C="" S C=V Q
- .S MT=$P(C,"!"),FT=$P(C,"!",2),M=$P(V,"!"),F=$P(V,"!",2)
- .F B=1:1:6 S $P(MT,"~",B)=$P(MT,"~",B)+$P(M,"~",B)
- .F B=1:1:6 S $P(FT,"~",B)=$P(FT,"~",B)+$P(F,"~",B)
- .S C=MT_"!"_FT
- .Q
- Q C
- C(X,X2,X3) ;
- D COMMA^%DTC
- Q X
- BGPDP32 ; IHS/CMI/LAB - print ind 32 ;
- +1 ;;7.0;IHS CLINICAL REPORTING;;JAN 24, 2007
- +2 ;
- +3 ;
- I32 ;EP ;
- +1 ;Q:'$D(BGPIND(30))
- +2 DO HEADER^BGPDPH
- +3 WRITE !,"Indicator 32: HIV Testing"
- +4 WRITE !!,"Denominator is all patients with a positive value in the year prior",!," to the end of the time period for any of the following lab tests:"
- +5 SET BGPX=0
- FOR
- SET BGPX=$ORDER(^BGPILAB(BGPX))
- IF BGPX'=+BGPX
- QUIT
- Begin DoDot:1
- +6 IF $Y>(IOSL-2)
- DO HEADER^BGPDPH
- IF BGPQUIT
- QUIT
- +7 WRITE !?5,$PIECE(^LAB(60,BGPX,0),U),?38," "
- +8 SET Y=0
- FOR
- SET Y=$ORDER(^BGPILAB(BGPX,11,Y))
- IF Y'=+Y
- QUIT
- WRITE " ",$PIECE(^BGPILAB(BGPX,11,Y,0),U)," ;"
- End DoDot:1
- +9 WRITE !!,"Increase the percentage of high-risk sexually active persons who have been",!,"tested for HIV.",!
- +10 IF $Y>(IOSL-7)
- DO HEADER^BGPDPH
- IF BGPQUIT
- QUIT
- +11 DO H1^BGPDPH
- +12 SET BGPCYD=$$V(BGPRPT,20,1)
- SET BGPCYN=$$V(BGPRPT,20,2)
- SET BGPCYP=$SELECT(BGPCYD:((BGPCYN/BGPCYD)*100),1:"")
- +13 SET BGP98D=$$V(BGPRPT,90,1)
- SET BGP98N=$$V(BGPRPT,90,2)
- SET BGP98P=$SELECT(BGP98D:((BGP98N/BGP98D)*100),1:"")
- +14 SET BGPPRD=$$V(BGPRPT,50,1)
- SET BGPPRN=$$V(BGPRPT,50,2)
- SET BGPPRP=$SELECT(BGPPRD:((BGPPRN/BGPPRD)*100),1:"")
- +15 WRITE !,"# Patients w/Positive",!?2,"result",?22,$$C(BGP98D,0,8),?37,$$C(BGPPRD,0,8),?52,$$C(BGPCYD,0,8)
- +16 WRITE !!,"# w/HIV Test recorded",!?2,"w/in 1 yr of",!?2,"end of time period"
- +17 DO H2^BGPDPH
- +18 QUIT
- +19 QUIT
- CALC(N,O) ;ENTRY POINT
- +1 NEW Z
- +2 IF O=0!(N=0)!(O="")!(N="")
- QUIT "**"
- +3 NEW X,X2,X3
- +4 SET X=N
- SET X2=1
- SET X3=0
- DO COMMA^%DTC
- SET N=X
- +5 SET X=O
- SET X2=1
- SET X3=0
- DO COMMA^%DTC
- SET O=X
- +6 IF +O=0
- QUIT "**"
- +7 SET Z=(((N-O)/O)*100)
- SET Z=$FNUMBER(Z,"+,",1)
- +8 QUIT Z
- V(R,N,P) ;
- +1 NEW Y
- +2 IF $GET(BGPAREAA)
- IF '$GET(BGPSUMR)
- GOTO VA
- +3 QUIT $PIECE($GET(^BGPD(R,N)),U,P)
- VA ;
- +1 NEW X,C,V,MT,FT,M,F,B
- SET X=0
- SET C=""
- FOR
- SET X=$ORDER(BGPSUL(X))
- IF X'=+X
- QUIT
- Begin DoDot:1
- +2 SET V=$PIECE($GET(^BGPD(X,N)),U,P)
- +3 IF C=""
- SET C=V
- QUIT
- +4 SET MT=$PIECE(C,"!")
- SET FT=$PIECE(C,"!",2)
- SET M=$PIECE(V,"!")
- SET F=$PIECE(V,"!",2)
- +5 FOR B=1:1:6
- SET $PIECE(MT,"~",B)=$PIECE(MT,"~",B)+$PIECE(M,"~",B)
- +6 FOR B=1:1:6
- SET $PIECE(FT,"~",B)=$PIECE(FT,"~",B)+$PIECE(F,"~",B)
- +7 SET C=MT_"!"_FT
- +8 QUIT
- End DoDot:1
- +9 QUIT C
- C(X,X2,X3) ;
- +1 DO COMMA^%DTC
- +2 QUIT X