BIREPQ ;IHS/CMI/MWR - REPORT, QUARTERLY IMM; MAY 10, 2010
;;8.5;IMMUNIZATION;;SEP 01,2011
;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
;; VIEW QUARTERLY IMMUNIZATION REPORT.
;
;
;----------
START ;EP
;---> Listman Screen for printing Immunization Due Letters.
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 LETTER PRINT DU
D EN^VALM("BI REPORT QUARTERLY IMM")
Q
;
;
;----------
INIT ;EP
;---> Initialize variables and list array. vvv83
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_"3-27 MONTH IMMUNIZATION REPORT" D CENTERT^BIUTL5(.X,42)
D WRITE(.BILINE,X_IOINORM)
K X
;
D WRITE(.BILINE)
;---> Date.
S:'$G(BIQDT) BIQDT=$G(DT)
D DATE^BIREP(.BILINE,"BIREPQ",1,$G(BIQDT),"Quarter Ending Date",,,,1)
;
;---> Current Community.
D DISP^BIREP(.BILINE,"BIREPQ",.BICC,"Community",2,1)
;
;---> Health Care Facility.
N A,B S A="Health Care Facility",B="Facilities"
D DISP^BIREP(.BILINE,"BIREPQ",.BIHCF,A,3,2,,,,B) K A,B
;
;---> Case Manager.
D DISP^BIREP(.BILINE,"BIREPQ",.BICM,"Case Manager",4,3)
;
;---> Beneficiary Type.
S:$O(BIBEN(0))="" BIBEN(1)=""
D DISP^BIREP(.BILINE,"BIREPQ",.BIBEN,"Beneficiary Type",5,4)
;
;---> User Population.
D:($G(BIUP)="")
.I $$GPRAIEN^BIUTL6 S BIUP="i" 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
;
;---> Include Hep A, Pneumo.
S:'$D(BIHPV) BIHPV=1
S X=" 7 - Include Varicella & Pneumo.: "
S X=X_$S($G(BIHPV):"YES",1:"NO")
D WRITE(.BILINE,X,1)
K X
;
;---> Finish up Listmanager List Count.
S VALMCNT=BILINE
S BIRTN="BIREPQ"
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,"BIREPQ",$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. vvv83
N BITEXT D TEXT1(.BITEXT)
D START^BIHELP("3-27 MONTH IMMUNIZATION REPORT - HELP",.BITEXT)
Q
;
;
;----------
TEXT1(BITEXT) ;EP
;;
;;3-27 Month Immunization Report
;;
;;The IHS and Tribal programs report the current age-appropriate
;;immunization rate of active children 3-27 months of age.
;;NOTE: Any child who was Inactivated at any point during the 90 days
;;prior to the Quarter Ending Date will not be included in the report.
;;
;;The criteria listed below are used by IHS to determine the
;;up-to-date status of children in each age group, and the specific
;;age group rates are combined into a total rate. Varicella and Pneumo
;;can be excluded from the report totals by entering "NO" in Option 6.
;;However, for Headquarters Reports enter "YES" for Option 6 in order to
;;include Varicella and Pneumo (PCV) in the totals.
;;The criteria for the Headquarters Report are listed below:
;;
;; 3-4 months old 1-DTaP 1-IPV 1-Hib 1-HepB 1-PCV
;; 5-6 months old 2-DTaP 2-IPV 2-Hib 2-HepB 2-PCV
;; 7-15 months old 3-DTaP 2-IPV 2-Hib 2-HepB 3-PCV
;; 16-18 months old 3-DTaP 2-IPV 3-Hib 2-HepB 3-PCV 1-MMR 1-VAR
;; 19-23 months old 4-DTaP 3-IPV 3-Hib 3-HepB 4-PCV 1-MMR 1-VAR
;; 24-27 months old 4-DTaP 3-IPV 3-Hib 3-HepB 4-PCV 1-MMR 1-VAR
;;
;;In Version 8.5 we have revised the 3-27 month report to have
;;manufacturer-specific logic:
;;
;; PedvaxHib (PRP-OMP) requires 3 doses
;; ActHib (PRP-T0 requires 4 doses
;; RotaTeq (Rota-5) requires 3 doses
;; RotaRix (Rota-1) requires 2 doses
;;
;;Version 8.5 also adjusts for catch-up schedules to require fewer doses
;;of Hib and PCV13 in children who start late:
;;
;; Hib: 16-27 months - requires 3 doses, or 2 doses >=12 months,
;; or 1 dose >=15 months
;;
;; PCV13: 16-27 months - requires 4 doses, or 3 doses >=7 months,
;; or 2 doses >=12 months, or 1 dose >=24 months
;;
;;
;;The 3-27 MONTH IMMUNIZATION REPORT 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 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 Quarterly 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: Answer "YES" if you wish to have Varicella
;;and Pneumo included in the statistics of the "Appropriate for Age" row
;;at the top of the report. If you answer "NO", Varicella and Pneumo will
;;NOT appear in the Minimum needs header row at the top of the report.
;;In both cases, the statistics for Varicella and Pneumo will be displayed
;;individually in additional rows at the bottom 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
;---> End of job cleanup.
D KILLALL^BIUTL8(1)
K ^TMP("BIREPQ",$J)
D CLEAR^VALM1
D FULL^VALM1
Q
BIREPQ ;IHS/CMI/MWR - REPORT, QUARTERLY IMM; MAY 10, 2010
+1 ;;8.5;IMMUNIZATION;;SEP 01,2011
+2 ;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
+3 ;; VIEW QUARTERLY IMMUNIZATION REPORT.
+4 ;
+5 ;
+6 ;----------
START ;EP
+1 ;---> Listman Screen for printing Immunization Due Letters.
+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 LETTER PRINT DU
+2 DO EN^VALM("BI REPORT QUARTERLY IMM")
+3 QUIT
+4 ;
+5 ;
+6 ;----------
INIT ;EP
+1 ;---> Initialize variables and list array. vvv83
+2 SET VALM("TITLE")=$$LMVER^BILOGO
+3 SET VALMSG="Select a left column number to change an item."
+4 NEW BILINE,X
SET BILINE=0
+5 DO WRITE(.BILINE)
+6 SET X=IOUON_"3-27 MONTH IMMUNIZATION REPORT"
DO CENTERT^BIUTL5(.X,42)
+7 DO WRITE(.BILINE,X_IOINORM)
+8 KILL X
+9 ;
+10 DO WRITE(.BILINE)
+11 ;---> Date.
+12 IF '$GET(BIQDT)
SET BIQDT=$GET(DT)
+13 DO DATE^BIREP(.BILINE,"BIREPQ",1,$GET(BIQDT),"Quarter Ending Date",,,,1)
+14 ;
+15 ;---> Current Community.
+16 DO DISP^BIREP(.BILINE,"BIREPQ",.BICC,"Community",2,1)
+17 ;
+18 ;---> Health Care Facility.
+19 NEW A,B
SET A="Health Care Facility"
SET B="Facilities"
+20 DO DISP^BIREP(.BILINE,"BIREPQ",.BIHCF,A,3,2,,,,B)
KILL A,B
+21 ;
+22 ;---> Case Manager.
+23 DO DISP^BIREP(.BILINE,"BIREPQ",.BICM,"Case Manager",4,3)
+24 ;
+25 ;---> Beneficiary Type.
+26 IF $ORDER(BIBEN(0))=""
SET BIBEN(1)=""
+27 DO DISP^BIREP(.BILINE,"BIREPQ",.BIBEN,"Beneficiary Type",5,4)
+28 ;
+29 ;---> User Population.
+30 IF ($GET(BIUP)="")
Begin DoDot:1
+31 IF $$GPRAIEN^BIUTL6
SET BIUP="i"
QUIT
+32 SET BIUP="u"
End DoDot:1
+33 ;
+34 SET X=" 6 - Patient Population Group...: "
+35 Begin DoDot:1
+36 IF BIUP="r"
SET X=X_"Registered Patients (All)"
QUIT
+37 IF BIUP="i"
SET X=X_"Immunization Register Patients (Active)"
QUIT
+38 IF BIUP="u"
SET X=X_"User Population (1 visit, 3 yrs)"
QUIT
+39 IF BIUP="a"
SET X=X_"Active Users (2+ visits, 3 yrs)"
QUIT
End DoDot:1
+40 DO WRITE(.BILINE,X,1)
+41 KILL X
+42 ;
+43 ;---> Include Hep A, Pneumo.
+44 IF '$DATA(BIHPV)
SET BIHPV=1
+45 SET X=" 7 - Include Varicella & Pneumo.: "
+46 SET X=X_$SELECT($GET(BIHPV):"YES",1:"NO")
+47 DO WRITE(.BILINE,X,1)
+48 KILL X
+49 ;
+50 ;---> Finish up Listmanager List Count.
+51 SET VALMCNT=BILINE
+52 SET BIRTN="BIREPQ"
+53 QUIT
+54 ;
+55 ;
+56 ;----------
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,"BIREPQ",$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. vvv83
+2 NEW BITEXT
DO TEXT1(.BITEXT)
+3 DO START^BIHELP("3-27 MONTH IMMUNIZATION REPORT - HELP",.BITEXT)
+4 QUIT
+5 ;
+6 ;
+7 ;----------
TEXT1(BITEXT) ;EP
+1 ;;
+2 ;;3-27 Month Immunization Report
+3 ;;
+4 ;;The IHS and Tribal programs report the current age-appropriate
+5 ;;immunization rate of active children 3-27 months of age.
+6 ;;NOTE: Any child who was Inactivated at any point during the 90 days
+7 ;;prior to the Quarter Ending Date will not be included in the report.
+8 ;;
+9 ;;The criteria listed below are used by IHS to determine the
+10 ;;up-to-date status of children in each age group, and the specific
+11 ;;age group rates are combined into a total rate. Varicella and Pneumo
+12 ;;can be excluded from the report totals by entering "NO" in Option 6.
+13 ;;However, for Headquarters Reports enter "YES" for Option 6 in order to
+14 ;;include Varicella and Pneumo (PCV) in the totals.
+15 ;;The criteria for the Headquarters Report are listed below:
+16 ;;
+17 ;; 3-4 months old 1-DTaP 1-IPV 1-Hib 1-HepB 1-PCV
+18 ;; 5-6 months old 2-DTaP 2-IPV 2-Hib 2-HepB 2-PCV
+19 ;; 7-15 months old 3-DTaP 2-IPV 2-Hib 2-HepB 3-PCV
+20 ;; 16-18 months old 3-DTaP 2-IPV 3-Hib 2-HepB 3-PCV 1-MMR 1-VAR
+21 ;; 19-23 months old 4-DTaP 3-IPV 3-Hib 3-HepB 4-PCV 1-MMR 1-VAR
+22 ;; 24-27 months old 4-DTaP 3-IPV 3-Hib 3-HepB 4-PCV 1-MMR 1-VAR
+23 ;;
+24 ;;In Version 8.5 we have revised the 3-27 month report to have
+25 ;;manufacturer-specific logic:
+26 ;;
+27 ;; PedvaxHib (PRP-OMP) requires 3 doses
+28 ;; ActHib (PRP-T0 requires 4 doses
+29 ;; RotaTeq (Rota-5) requires 3 doses
+30 ;; RotaRix (Rota-1) requires 2 doses
+31 ;;
+32 ;;Version 8.5 also adjusts for catch-up schedules to require fewer doses
+33 ;;of Hib and PCV13 in children who start late:
+34 ;;
+35 ;; Hib: 16-27 months - requires 3 doses, or 2 doses >=12 months,
+36 ;; or 1 dose >=15 months
+37 ;;
+38 ;; PCV13: 16-27 months - requires 4 doses, or 3 doses >=7 months,
+39 ;; or 2 doses >=12 months, or 1 dose >=24 months
+40 ;;
+41 ;;
+42 ;;The 3-27 MONTH IMMUNIZATION REPORT screen allows you to adjust
+43 ;;the report to your needs.
+44 ;;
+45 ;;There are 7 items or "parameters" on the screen that you may
+46 ;;change in order to select for a specific group of patients.
+47 ;;To change an item, enter its left column number (1-7) at the
+48 ;;prompt on the bottom of the screen. Use "?" at any prompt where
+49 ;;you would like more information on the parameter you are changing.
+50 ;;
+51 ;;Once you have the parameters set to retrieve the group of patients
+52 ;;you want, select V to View the Quarterly Report or P to print it.
+53 ;;
+54 ;;If it customarily takes a long time for your computer to prepare
+55 ;;this report, it may be preferable to Print and Queue the report
+56 ;;to a printer, rather than Viewing it on screen. (This would avoid
+57 ;;tying up your screen while the report is being prepared.)
+58 ;;
+59 ;;QUARTER ENDING DATE: The report will compile immunization rates
+60 ;;as of the date entered. Typically, this date would be the end
+61 ;;of a Quarter.
+62 ;;
+63 ;;COMMUNITIES: If you select for specific Communities, only patients
+64 ;;whose Current Community matches one of the Communities selected will
+65 ;;be included in the report. "Current Community" is refers to Item 6
+66 ;;on Page 1 of the RPMS Patient Registration.
+67 ;;
+68 ;;HEALTH CARE FACILITIES: If you select for specific Health Care
+69 ;;Facilities, only Patients who have active Chart#'s at one or more
+70 ;;of the selected Facilities will be included in the report.
+71 ;;
+72 ;;CASE MANAGERS: If you select for specific Case Managers, only
+73 ;;patients who have the selected Case Managers will be included
+74 ;;in the report.
+75 ;;
+76 ;;BENEFICIARY TYPES: If you select for specific Beneficiary Types,
+77 ;;only patients whose Beneficiary Type is one of those you select
+78 ;;will be included in the report. "Beneficiary Type" refers to
+79 ;;Item 3 on Page 2 of the RPMS Patient Registration.
+80 ;;
+81 ;;PATIENT POPULATION GROUP: You may select one of four patient groups
+82 ;;to be considered in the report: Registered Patients (All),
+83 ;;Immunization Register Patients (Active), User Population (1+ visits
+84 ;;in 3 yrs), or Active Clinical Users (2+ visits in 3 yrs).
+85 ;;Immunization Register Patients (Active) is the default.
+86 ;;
+87 ;;INCLUDE VARICELLA & PNEUMO: Answer "YES" if you wish to have Varicella
+88 ;;and Pneumo included in the statistics of the "Appropriate for Age" row
+89 ;;at the top of the report. If you answer "NO", Varicella and Pneumo will
+90 ;;NOT appear in the Minimum needs header row at the top of the report.
+91 ;;In both cases, the statistics for Varicella and Pneumo will be displayed
+92 ;;individually in additional rows at the bottom of the report.
+93 ;;
+94 DO LOADTX("TEXT1",,.BITEXT)
+95 QUIT
+96 ;
+97 ;
+98 ;----------
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 ;---> End of job cleanup.
+2 DO KILLALL^BIUTL8(1)
+3 KILL ^TMP("BIREPQ",$JOB)
+4 DO CLEAR^VALM1
+5 DO FULL^VALM1
+6 QUIT