- 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