BIREPT ;IHS/CMI/MWR - REPORT, TWO-YR-OLD RATES; MAY 10, 2010
;;8.5;IMMUNIZATION;;SEP 01,2011
;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
;; VIEW TWO-YR-OLD IMMUNIZATION RATES REPORT.
;
;
;----------
START ;EP
;---> Listman Screen for Listman Two-Yr-Old 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 TWO-YR-OLD RATES.
D EN^VALM("BI REPORT TWO-YR-OLD RATES")
Q
;
;
;----------
INIT ;EP
;---> Initialize variables and list array.
K ^TMP("BIREPT",$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_"TWO-YR-OLD 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,"BIREPT",1,$G(BIQDT),"Quarter Ending Date",,,,1)
;
;---> Two-Yr-Old Age Range.
S:'$G(BITAR) BITAR="19-35"
S X=" 2 - Age Range..................: "
S X=X_BITAR_" months"
D WRITE(.BILINE,X,1)
K X
;
;---> Current Community.
D DISP^BIREP(.BILINE,"BIREPT",.BICC,"Community",3,1)
;
;---> Health Care Facility.
N A,B S A="Health Care Facility",B="Facilities"
D DISP^BIREP(.BILINE,"BIREPT",.BIHCF,A,4,2,,,,B) K A,B
;
;---> Case Manager.
D DISP^BIREP(.BILINE,"BIREPT",.BICM,"Case Manager",5,3)
;
;---> Beneficiary Type.
S:$O(BIBEN(0))="" BIBEN(1)=""
D DISP^BIREP(.BILINE,"BIREPT",.BIBEN,"Beneficiary Type",6,4)
;
;---> User Population.
D:($G(BIUP)="")
.I $$GPRAIEN^BIUTL6 S BIUP="i" Q
.S BIUP="u"
;
S X=" 7 - 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="BIREPT"
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,"BIREPT",$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("TWO-YR-OLD IMM RATES - HELP",.BITEXT)
Q
;
;
;----------
TEXT1(BITEXT) ;EP
;;
;;Two-Yr-Old Report
;;
;;The Two-Yr-Old report follows the logic of the National
;;Immunization Survey to provide immunization coverage rates for
;;single vaccines and groups of vaccines in children 19 to 35 months
;;of age by certain key ages (i.e., DTaP by 3 months, by 5 months,
;;by 7 months, by 16 months, by 19 months, by 24 months and by the
;;date of the report). A nationally reported parameter is the
;;percent of children 19-35 months of age who had ever received
;;4-DTP, 3-Polio, 1-MMR, 3-Hib, 3-HepB (43133).
;;
;;This report displays Active children who are between 19 and 35
;;months of age on the selected date of the report. 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
;;are listed in rows beside each dose and are cumulative from left
;;to right (e.g., the total patients receiving 1-DTaP by 16 months
;;includes those who received it by 3, 5 and 7 months).
;;
;;The date header on far right column signifies "received by the
;;report date" and includes all doses a child received up to the
;;"Quarter Ending Date" chosen. This is the column that compares with
;;the National Immunization Survey and Year 2010 Health Objectives.
;;All percentages represent a fraction of the total patients as
;;noted at the top and bottom of the report.
;;
;;
;;The TWO-YR-OLD IMMUNIZATIONS RATES screen allows you to adjust
;;the report to your needs.
;;
;;There are 7 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-7) 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 Two-Year-Old 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.
;;
;;COMMUNITIES: 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 FACILITIES: 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 MANAGERS: If you select for specific Case Managers, only
;;patients who have the selected Case Managers will be included
;;in the report.
;;
;;BENEFICIARY TYPES: 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).
;;Immunization Register Patients (Active) is the default.
;;
;;INCLUDE VARICELLA & PNEUMO: This option allows you to include Varicella
;;and Pneumo in the statistics of the "Appropriate for Age" row at the
;;top of the report.
;;
;;
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("BIREPT",$J)
D CLEAR^VALM1
D FULL^VALM1
Q
BIREPT ;IHS/CMI/MWR - REPORT, TWO-YR-OLD RATES; MAY 10, 2010
+1 ;;8.5;IMMUNIZATION;;SEP 01,2011
+2 ;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
+3 ;; VIEW TWO-YR-OLD IMMUNIZATION RATES REPORT.
+4 ;
+5 ;
+6 ;----------
START ;EP
+1 ;---> Listman Screen for Listman Two-Yr-Old 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 TWO-YR-OLD RATES.
+2 DO EN^VALM("BI REPORT TWO-YR-OLD RATES")
+3 QUIT
+4 ;
+5 ;
+6 ;----------
INIT ;EP
+1 ;---> Initialize variables and list array.
+2 KILL ^TMP("BIREPT",$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_"TWO-YR-OLD 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,"BIREPT",1,$GET(BIQDT),"Quarter Ending Date",,,,1)
+16 ;
+17 ;---> Two-Yr-Old Age Range.
+18 IF '$GET(BITAR)
SET BITAR="19-35"
+19 SET X=" 2 - Age Range..................: "
+20 SET X=X_BITAR_" months"
+21 DO WRITE(.BILINE,X,1)
+22 KILL X
+23 ;
+24 ;---> Current Community.
+25 DO DISP^BIREP(.BILINE,"BIREPT",.BICC,"Community",3,1)
+26 ;
+27 ;---> Health Care Facility.
+28 NEW A,B
SET A="Health Care Facility"
SET B="Facilities"
+29 DO DISP^BIREP(.BILINE,"BIREPT",.BIHCF,A,4,2,,,,B)
KILL A,B
+30 ;
+31 ;---> Case Manager.
+32 DO DISP^BIREP(.BILINE,"BIREPT",.BICM,"Case Manager",5,3)
+33 ;
+34 ;---> Beneficiary Type.
+35 IF $ORDER(BIBEN(0))=""
SET BIBEN(1)=""
+36 DO DISP^BIREP(.BILINE,"BIREPT",.BIBEN,"Beneficiary Type",6,4)
+37 ;
+38 ;---> User Population.
+39 IF ($GET(BIUP)="")
Begin DoDot:1
+40 IF $$GPRAIEN^BIUTL6
SET BIUP="i"
QUIT
+41 SET BIUP="u"
End DoDot:1
+42 ;
+43 SET X=" 7 - Patient Population Group...: "
+44 Begin DoDot:1
+45 IF BIUP="r"
SET X=X_"Registered Patients (All)"
QUIT
+46 IF BIUP="i"
SET X=X_"Immunization Register Patients (Active)"
QUIT
+47 IF BIUP="u"
SET X=X_"User Population (1 visit, 3 yrs)"
QUIT
+48 IF BIUP="a"
SET X=X_"Active Users (2+ visits, 3 yrs)"
QUIT
End DoDot:1
+49 DO WRITE(.BILINE,X,1)
+50 KILL X
+51 ;
+52 ;---> Finish up Listmanager List Count.
+53 SET VALMCNT=BILINE
+54 SET BIRTN="BIREPT"
+55 QUIT
+56 ;
+57 ;
+58 ;----------
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,"BIREPT",$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("TWO-YR-OLD IMM RATES - HELP",.BITEXT)
+4 QUIT
+5 ;
+6 ;
+7 ;----------
TEXT1(BITEXT) ;EP
+1 ;;
+2 ;;Two-Yr-Old Report
+3 ;;
+4 ;;The Two-Yr-Old 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 19 to 35 months
+7 ;;of age by certain key ages (i.e., DTaP by 3 months, by 5 months,
+8 ;;by 7 months, by 16 months, by 19 months, by 24 months and by the
+9 ;;date of the report). A nationally reported parameter is the
+10 ;;percent of children 19-35 months of age who had ever received
+11 ;;4-DTP, 3-Polio, 1-MMR, 3-Hib, 3-HepB (43133).
+12 ;;
+13 ;;This report displays Active children who are between 19 and 35
+14 ;;months of age on the selected date of the report. The key ages
+15 ;;by which vaccines were received are listed across the top of the
+16 ;;report. Total patients who received each dose of the vaccines
+17 ;;are listed in rows beside each dose and are cumulative from left
+18 ;;to right (e.g., the total patients receiving 1-DTaP by 16 months
+19 ;;includes those who received it by 3, 5 and 7 months).
+20 ;;
+21 ;;The date header on far right column signifies "received by the
+22 ;;report date" and includes all doses a child received up to the
+23 ;;"Quarter Ending Date" chosen. This is the column that compares with
+24 ;;the National Immunization Survey and Year 2010 Health Objectives.
+25 ;;All percentages represent a fraction of the total patients as
+26 ;;noted at the top and bottom of the report.
+27 ;;
+28 ;;
+29 ;;The TWO-YR-OLD IMMUNIZATIONS RATES screen allows you to adjust
+30 ;;the report to your needs.
+31 ;;
+32 ;;There are 7 items or "parameters" on the screen that you may
+33 ;;change in order to select for a specific group of patients.
+34 ;;To change an item, enter its left column number (1-7) at the
+35 ;;prompt on the bottom of the screen. Use "?" at any prompt where
+36 ;;you would like help or more information on the parameter you are
+37 ;;changing.
+38 ;;
+39 ;;Once you have the parameters set to retrieve the group of patients
+40 ;;you want, select V to View the Two-Year-Old Report or P to print it.
+41 ;;
+42 ;;If it customarily takes a long time for your computer to prepare
+43 ;;this report, it may be preferable to Print and Queue the report
+44 ;;to a printer, rather than Viewing it on screen. (This would avoid
+45 ;;tying up your screen while the report is being prepared.)
+46 ;;
+47 ;;QUARTER ENDING DATE: The report will compile immunization rates
+48 ;;as of the date entered. Typically, this date would be the end
+49 ;;of a Quarter.
+50 ;;
+51 ;;COMMUNITIES: If you select for specific Communities, only patients
+52 ;;whose Current Community matches one of the Communities selected will
+53 ;;be included in the report. "Current Community" is refers to Item 6
+54 ;;on Page 1 of the RPMS Patient Registration.
+55 ;;
+56 ;;HEALTH CARE FACILITIES: If you select for specific Health Care
+57 ;;Facilities, only Patients who have active Chart#'s at one or more
+58 ;;of the selected Facilities will be included in the report.
+59 ;;
+60 ;;CASE MANAGERS: If you select for specific Case Managers, only
+61 ;;patients who have the selected Case Managers will be included
+62 ;;in the report.
+63 ;;
+64 ;;BENEFICIARY TYPES: If you select for specific Beneficiary Types,
+65 ;;only patients whose Beneficiary Type is one of those you select
+66 ;;will be included in the report. "Beneficiary Type" refers to
+67 ;;Item 3 on Page 2 of the RPMS Patient Registration.
+68 ;;
+69 ;;PATIENT POPULATION GROUP: You may select one of four patient groups
+70 ;;to be considered in the report: Registered Patients (All),
+71 ;;Immunization Register Patients (Active), User Population (1+ visits
+72 ;;in 3 yrs), or Active Clinical Users (2+ visits in 3 yrs).
+73 ;;Immunization Register Patients (Active) is the default.
+74 ;;
+75 ;;INCLUDE VARICELLA & PNEUMO: This option allows you to include Varicella
+76 ;;and Pneumo in the statistics of the "Appropriate for Age" row at the
+77 ;;top of the report.
+78 ;;
+79 ;;
+80 DO LOADTX("TEXT1",,.BITEXT)
+81 QUIT
+82 ;
+83 ;
+84 ;----------
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("BIREPT",$JOB)
+4 DO CLEAR^VALM1
+5 DO FULL^VALM1
+6 QUIT