BIREPD ;IHS/CMI/MWR - REPORT, ADOLESCENT RATES; MAY 10, 2010
;;8.5;IMMUNIZATION;;SEP 01,2011
;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
;; VIEW ADOLESCENT IMMUNIZATION RATES REPORT.
;
;
;----------
START ;EP
;---> Listman Screen for Adolescent Immunization Rates.
D SETVARS^BIUTL5 N BIRTN
;
;---> If Vaccine Table is not standard, display Error Text and quit.
I $D(^BISITE(-1)) D ERRCD^BIUTL2(503,,1) Q
;
D EN
D EXIT
Q
;
;
;----------
EN ;EP
;---> Main entry point for BI REPORT ADOLESCENT RATES.
D EN^VALM("BI REPORT ADOLESCENT RATES")
Q
;
;
;----------
INIT ;EP
;---> Initialize variables and list array.
K ^TMP("BIREPD",$J)
S VALM("TITLE")=$$LMVER^BILOGO
S VALMSG="Select a left column number to change an item."
N BILINE,X S BILINE=0
D WRITE(.BILINE)
S X=IOUON_"ADOLESCENT IMMUNIZATION RATES REPORT"
D CENTERT^BIUTL5(.X,42)
D WRITE(.BILINE,X_IOINORM)
K X
;
;---> Date.
D WRITE(.BILINE)
S:'$G(BIQDT) BIQDT=$G(DT)
D DATE^BIREP(.BILINE,"BIREPD",1,$G(BIQDT),"Quarter Ending Date",,,,1)
;
;---> Current Community.
D DISP^BIREP(.BILINE,"BIREPD",.BICC,"Community",2,1)
;
;---> Health Care Facility.
N A,B S A="Health Care Facility",B="Facilities"
D DISP^BIREP(.BILINE,"BIREPD",.BIHCF,A,3,2,,,,B) K A,B
;
;---> Case Manager.
D DISP^BIREP(.BILINE,"BIREPD",.BICM,"Case Manager",4,3)
;
;---> Beneficiary Type.
S:$O(BIBEN(0))="" BIBEN(1)=""
D DISP^BIREP(.BILINE,"BIREPD",.BIBEN,"Beneficiary Type",5,4)
;
;---> User Population.
D:($G(BIUP)="")
.I $$GPRAIEN^BIUTL6 S BIUP="a" Q
.S BIUP="u"
;
S X=" 6 - Patient Population Group...: "
D
.I BIUP="r" S X=X_"Registered Patients (All)" Q
.I BIUP="i" S X=X_"Immunization Register Patients (Active)" Q
.I BIUP="u" S X=X_"User Population (1 visit, 3 yrs)" Q
.I BIUP="a" S X=X_"Active Users (2+ visits, 3 yrs)" Q
D WRITE(.BILINE,X,1)
K X
;
;---> Finish up Listmanager List Count.
S VALMCNT=BILINE
S BIRTN="BIREPD"
Q
;
;
;----------
WRITE(BILINE,BIVAL,BIBLNK) ;EP
;---> Write lines to ^TMP (see documentation in ^BIW).
;---> Parameters:
; 1 - BILINE (ret) Last line# written.
; 2 - BIVAL (opt) Value/text of line (Null=blank line).
; 3 - BIBLNK (opt) Number of blank lines to add after line sent.
;
Q:'$D(BILINE)
D WL^BIW(.BILINE,"BIREPD",$G(BIVAL),$G(BIBLNK))
Q
;
;
;----------
RESET ;EP
;---> Update partition for return to Listmanager.
I $D(VALMQUIT) S VALMBCK="Q" Q
D TERM^VALM0 S VALMBCK="R"
D INIT Q
;
;
;----------
HELP ;EP
;---> Help code.
N BIX S BIX=X
D FULL^VALM1
W !!?5,"Enter ""V"" to view this report on screen, ""P"" to print it,"
W !?5,"or ""H"" to view the Help Text for this report and its parameters."
D DIRZ^BIUTL3(""," Press ENTER/RETURN to continue")
D:BIX'="??" RE^VALM4
Q
;
;
;----------
HELP1 ;EP
;----> Explanation of this report.
N BITEXT D TEXT1(.BITEXT)
D START^BIHELP("ADOLESCENT IMM RATES - HELP",.BITEXT)
Q
;
;
;----------
TEXT1(BITEXT) ;EP vvv83
;;
;;Adolescent Report
;;
;;The Adolescent report follows the logic of the National
;;Immunization Survey to provide immunization coverage rates for
;;single vaccines and groups of vaccines in children 11-12 years,
;;13 years and 13-17 years of age by certain key ages (i.e.
;;3 Hep B and 2 MMR and 1-Td/Tdap, 3-HepB, 2-MMR,1-Var) by the
;;the date of the report. Current status is defined as 1-Tdap_Td
;;and 1-Mening.
;;
;;This report displays Active clinical users who are between 11
;;years 0 months and 17 years 11 months of age on the selected date
;;of the report. (An Active clinical user is defined as a person
;;who has had at least two clinical visits in the past three years.)
;;
;;The key ages by which vaccines were received are listed across
;;the top of the report. Total patients who received each dose
;;of the vaccines for each age-group are listed in rows beside
;;each dose (e.g., the total patients (%) receiving 3-HepB by
;;11-12 years. The date header on far left header signifies
;;"doses received by the report date" and includes all doses a
;;child received up to the "Quarter Ending Date" chosen.
;;All percentages represent a fraction of the total patients as
;;noted at the top and bottom of the report.
;;
;;The ADOLESCENT IMMUNIZATIONS RATES screen allows you to adjust
;;the report to your needs.
;;
;;There are 6 items or "parameters" on the screen that you may
;;change in order to select for a specific group of patients.
;;To change an item, enter its left column number (1-6) at the
;;prompt on the bottom of the screen. Use "?" at any prompt where
;;you would like help or more information on the parameter you are
;;changing.
;;
;;Once you have the parameters set to retrieve the group of patients
;;you want, select V to View the Adolescent Report or P to print it.
;;
;;If it customarily takes a long time for your computer to prepare
;;this report, it may be preferable to Print and Queue the report
;;to a printer, rather than Viewing it on screen. (This would avoid
;;tying up your screen while the report is being prepared.)
;;
;;QUARTER ENDING DATE: The report will compile immunization rates
;;as of the date entered. Typically, this date would be the end
;;of a Quarter.
;;
;;COMMUNITY: If you select for specific Communities, only patients
;;whose Current Community matches one of the Communities selected will
;;be included in the report. "Current Community" is refers to Item 6
;;on Page 1 of the RPMS Patient Registration.
;;
;;HEALTH CARE FACILITY: If you select for specific Health Care
;;Facilities, only Patients who have active Chart#'s at one or more
;;of the selected Facilities will be included in the report.
;;
;;CASE MANAGER: If you select for specific Case Managers, only
;;patients who have the selected Case Managers will be included
;;in the report.
;;
;;BENEFICIARY TYPE: If you select for specific Beneficiary Types,
;;only patients whose Beneficiary Type is one of those you select
;;will be included in the report. "Beneficiary Type" refers to
;;Item 3 on Page 2 of the RPMS Patient Registration.
;;
;;PATIENT POPULATION GROUP: You may select one of four patient groups
;;to be considered in the report: Registered Patients (All),
;;Immunization Register Patients (Active), User Population (1+ visits
;;in 3 yrs), or Active Clinical Users (2+ visits in 3 yrs).
;;Active Clinical Users is the default.
;;
;;
D LOADTX("TEXT1",,.BITEXT)
Q
;
;
;----------
LOADTX(BILINL,BITAB,BITEXT) ;EP
Q:$G(BILINL)=""
N I,T,X S T="" S:'$D(BITAB) BITAB=5 F I=1:1:BITAB S T=T_" "
F I=1:1 S X=$T(@BILINL+I) Q:X'[";;" S BITEXT(I)=T_$P(X,";;",2)
Q
;
;
;----------
EXIT ;EP
;---> EOJ cleanup.
D KILLALL^BIUTL8(1)
K ^TMP("BIREPD",$J)
D CLEAR^VALM1
D FULL^VALM1
Q
BIREPD ;IHS/CMI/MWR - REPORT, ADOLESCENT RATES; MAY 10, 2010
+1 ;;8.5;IMMUNIZATION;;SEP 01,2011
+2 ;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
+3 ;; VIEW ADOLESCENT IMMUNIZATION RATES REPORT.
+4 ;
+5 ;
+6 ;----------
START ;EP
+1 ;---> Listman Screen for Adolescent Immunization Rates.
+2 DO SETVARS^BIUTL5
NEW BIRTN
+3 ;
+4 ;---> If Vaccine Table is not standard, display Error Text and quit.
+5 IF $DATA(^BISITE(-1))
DO ERRCD^BIUTL2(503,,1)
QUIT
+6 ;
+7 DO EN
+8 DO EXIT
+9 QUIT
+10 ;
+11 ;
+12 ;----------
EN ;EP
+1 ;---> Main entry point for BI REPORT ADOLESCENT RATES.
+2 DO EN^VALM("BI REPORT ADOLESCENT RATES")
+3 QUIT
+4 ;
+5 ;
+6 ;----------
INIT ;EP
+1 ;---> Initialize variables and list array.
+2 KILL ^TMP("BIREPD",$JOB)
+3 SET VALM("TITLE")=$$LMVER^BILOGO
+4 SET VALMSG="Select a left column number to change an item."
+5 NEW BILINE,X
SET BILINE=0
+6 DO WRITE(.BILINE)
+7 SET X=IOUON_"ADOLESCENT IMMUNIZATION RATES REPORT"
+8 DO CENTERT^BIUTL5(.X,42)
+9 DO WRITE(.BILINE,X_IOINORM)
+10 KILL X
+11 ;
+12 ;---> Date.
+13 DO WRITE(.BILINE)
+14 IF '$GET(BIQDT)
SET BIQDT=$GET(DT)
+15 DO DATE^BIREP(.BILINE,"BIREPD",1,$GET(BIQDT),"Quarter Ending Date",,,,1)
+16 ;
+17 ;---> Current Community.
+18 DO DISP^BIREP(.BILINE,"BIREPD",.BICC,"Community",2,1)
+19 ;
+20 ;---> Health Care Facility.
+21 NEW A,B
SET A="Health Care Facility"
SET B="Facilities"
+22 DO DISP^BIREP(.BILINE,"BIREPD",.BIHCF,A,3,2,,,,B)
KILL A,B
+23 ;
+24 ;---> Case Manager.
+25 DO DISP^BIREP(.BILINE,"BIREPD",.BICM,"Case Manager",4,3)
+26 ;
+27 ;---> Beneficiary Type.
+28 IF $ORDER(BIBEN(0))=""
SET BIBEN(1)=""
+29 DO DISP^BIREP(.BILINE,"BIREPD",.BIBEN,"Beneficiary Type",5,4)
+30 ;
+31 ;---> User Population.
+32 IF ($GET(BIUP)="")
Begin DoDot:1
+33 IF $$GPRAIEN^BIUTL6
SET BIUP="a"
QUIT
+34 SET BIUP="u"
End DoDot:1
+35 ;
+36 SET X=" 6 - Patient Population Group...: "
+37 Begin DoDot:1
+38 IF BIUP="r"
SET X=X_"Registered Patients (All)"
QUIT
+39 IF BIUP="i"
SET X=X_"Immunization Register Patients (Active)"
QUIT
+40 IF BIUP="u"
SET X=X_"User Population (1 visit, 3 yrs)"
QUIT
+41 IF BIUP="a"
SET X=X_"Active Users (2+ visits, 3 yrs)"
QUIT
End DoDot:1
+42 DO WRITE(.BILINE,X,1)
+43 KILL X
+44 ;
+45 ;---> Finish up Listmanager List Count.
+46 SET VALMCNT=BILINE
+47 SET BIRTN="BIREPD"
+48 QUIT
+49 ;
+50 ;
+51 ;----------
WRITE(BILINE,BIVAL,BIBLNK) ;EP
+1 ;---> Write lines to ^TMP (see documentation in ^BIW).
+2 ;---> Parameters:
+3 ; 1 - BILINE (ret) Last line# written.
+4 ; 2 - BIVAL (opt) Value/text of line (Null=blank line).
+5 ; 3 - BIBLNK (opt) Number of blank lines to add after line sent.
+6 ;
+7 IF '$DATA(BILINE)
QUIT
+8 DO WL^BIW(.BILINE,"BIREPD",$GET(BIVAL),$GET(BIBLNK))
+9 QUIT
+10 ;
+11 ;
+12 ;----------
RESET ;EP
+1 ;---> Update partition for return to Listmanager.
+2 IF $DATA(VALMQUIT)
SET VALMBCK="Q"
QUIT
+3 DO TERM^VALM0
SET VALMBCK="R"
+4 DO INIT
QUIT
+5 ;
+6 ;
+7 ;----------
HELP ;EP
+1 ;---> Help code.
+2 NEW BIX
SET BIX=X
+3 DO FULL^VALM1
+4 WRITE !!?5,"Enter ""V"" to view this report on screen, ""P"" to print it,"
+5 WRITE !?5,"or ""H"" to view the Help Text for this report and its parameters."
+6 DO DIRZ^BIUTL3(""," Press ENTER/RETURN to continue")
+7 IF BIX'="??"
DO RE^VALM4
+8 QUIT
+9 ;
+10 ;
+11 ;----------
HELP1 ;EP
+1 ;----> Explanation of this report.
+2 NEW BITEXT
DO TEXT1(.BITEXT)
+3 DO START^BIHELP("ADOLESCENT IMM RATES - HELP",.BITEXT)
+4 QUIT
+5 ;
+6 ;
+7 ;----------
TEXT1(BITEXT) ;EP vvv83
+1 ;;
+2 ;;Adolescent Report
+3 ;;
+4 ;;The Adolescent report follows the logic of the National
+5 ;;Immunization Survey to provide immunization coverage rates for
+6 ;;single vaccines and groups of vaccines in children 11-12 years,
+7 ;;13 years and 13-17 years of age by certain key ages (i.e.
+8 ;;3 Hep B and 2 MMR and 1-Td/Tdap, 3-HepB, 2-MMR,1-Var) by the
+9 ;;the date of the report. Current status is defined as 1-Tdap_Td
+10 ;;and 1-Mening.
+11 ;;
+12 ;;This report displays Active clinical users who are between 11
+13 ;;years 0 months and 17 years 11 months of age on the selected date
+14 ;;of the report. (An Active clinical user is defined as a person
+15 ;;who has had at least two clinical visits in the past three years.)
+16 ;;
+17 ;;The key ages by which vaccines were received are listed across
+18 ;;the top of the report. Total patients who received each dose
+19 ;;of the vaccines for each age-group are listed in rows beside
+20 ;;each dose (e.g., the total patients (%) receiving 3-HepB by
+21 ;;11-12 years. The date header on far left header signifies
+22 ;;"doses received by the report date" and includes all doses a
+23 ;;child received up to the "Quarter Ending Date" chosen.
+24 ;;All percentages represent a fraction of the total patients as
+25 ;;noted at the top and bottom of the report.
+26 ;;
+27 ;;The ADOLESCENT IMMUNIZATIONS RATES screen allows you to adjust
+28 ;;the report to your needs.
+29 ;;
+30 ;;There are 6 items or "parameters" on the screen that you may
+31 ;;change in order to select for a specific group of patients.
+32 ;;To change an item, enter its left column number (1-6) at the
+33 ;;prompt on the bottom of the screen. Use "?" at any prompt where
+34 ;;you would like help or more information on the parameter you are
+35 ;;changing.
+36 ;;
+37 ;;Once you have the parameters set to retrieve the group of patients
+38 ;;you want, select V to View the Adolescent Report or P to print it.
+39 ;;
+40 ;;If it customarily takes a long time for your computer to prepare
+41 ;;this report, it may be preferable to Print and Queue the report
+42 ;;to a printer, rather than Viewing it on screen. (This would avoid
+43 ;;tying up your screen while the report is being prepared.)
+44 ;;
+45 ;;QUARTER ENDING DATE: The report will compile immunization rates
+46 ;;as of the date entered. Typically, this date would be the end
+47 ;;of a Quarter.
+48 ;;
+49 ;;COMMUNITY: If you select for specific Communities, only patients
+50 ;;whose Current Community matches one of the Communities selected will
+51 ;;be included in the report. "Current Community" is refers to Item 6
+52 ;;on Page 1 of the RPMS Patient Registration.
+53 ;;
+54 ;;HEALTH CARE FACILITY: If you select for specific Health Care
+55 ;;Facilities, only Patients who have active Chart#'s at one or more
+56 ;;of the selected Facilities will be included in the report.
+57 ;;
+58 ;;CASE MANAGER: If you select for specific Case Managers, only
+59 ;;patients who have the selected Case Managers will be included
+60 ;;in the report.
+61 ;;
+62 ;;BENEFICIARY TYPE: If you select for specific Beneficiary Types,
+63 ;;only patients whose Beneficiary Type is one of those you select
+64 ;;will be included in the report. "Beneficiary Type" refers to
+65 ;;Item 3 on Page 2 of the RPMS Patient Registration.
+66 ;;
+67 ;;PATIENT POPULATION GROUP: You may select one of four patient groups
+68 ;;to be considered in the report: Registered Patients (All),
+69 ;;Immunization Register Patients (Active), User Population (1+ visits
+70 ;;in 3 yrs), or Active Clinical Users (2+ visits in 3 yrs).
+71 ;;Active Clinical Users is the default.
+72 ;;
+73 ;;
+74 DO LOADTX("TEXT1",,.BITEXT)
+75 QUIT
+76 ;
+77 ;
+78 ;----------
LOADTX(BILINL,BITAB,BITEXT) ;EP
+1 IF $GET(BILINL)=""
QUIT
+2 NEW I,T,X
SET T=""
IF '$DATA(BITAB)
SET BITAB=5
FOR I=1:1:BITAB
SET T=T_" "
+3 FOR I=1:1
SET X=$TEXT(@BILINL+I)
IF X'[";;"
QUIT
SET BITEXT(I)=T_$PIECE(X,";;",2)
+4 QUIT
+5 ;
+6 ;
+7 ;----------
EXIT ;EP
+1 ;---> EOJ cleanup.
+2 DO KILLALL^BIUTL8(1)
+3 KILL ^TMP("BIREPD",$JOB)
+4 DO CLEAR^VALM1
+5 DO FULL^VALM1
+6 QUIT