- BIDUVLS1 ;IHS/CMI/MWR - VIEW DUE LIST.; MAY 10, 2010
- ;;8.5;IMMUNIZATION;;SEP 01,2011
- ;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
- ;; LIST TEMPLATE CODE FOR VIEWING PATIENTS.
- ;; PATCH 1: Corrects Patient Group for not displaying Age Range. HDR+21
- ;
- ;
- ;----------
- START(BIFDT,BINFO,BIPG,BIAG,BIT,BIVAL,BIDASH,BITITL,BIRPDT,BIBEN) ;EP
- ;---> Display Immunizations Due List via Listman.
- ;---> Parameters:
- ; 1 - BIFDT (req) Forecast/Clinic Date.
- ; 2 - BINFO (req) Array of Additional Information elements for each patient.
- ; 3 - BIPG (req) Patient Group Data; see PGRPOUP1^BIOUTPT4 for details.
- ; 4 - BIAG (opt) Age Range. If 2nd ^-piece=1, display "years."
- ; 5 - BIT (req) Total Patients retrieved.
- ; 6 - BIVAL (opt) Value indicates which patients:
- ; 0=All, 1=Rejects only, 2=Appropriate only.
- ; 7 - BIDASH (opt) 1=Omit Dash line between records; 0=include it.
- ; 8 - BITITL (opt) Report Name, if present will replace "Clinic Date"
- ; in report header.
- ; 9 - BIRPDT (opt) Report Date: Today unless passed from reports
- ; (e.g., Quarterly Report).
- ; 10 - BIBEN (req) Beneficiary Type array: either BIBEN(1) or BIBEN("ALL").
- ;
- ;----------
- MAIN ;EP
- ;---> Listman Screen for printing Immunization Due Letters.
- D SETVARS^BIUTL5
- S:'$G(BIFDT) BIFDT=DT
- S:'$G(BIRPDT) BIRPDT=DT
- N VALMCNT
- D EN
- D EXIT
- Q
- ;
- ;
- ;----------
- EN ;EP
- ;---> Main entry point.
- D EN^VALM("BI DUE LIST VIEW")
- Q
- ;
- ;
- ;----------
- HDR ;EP
- ;---> Header code
- I '$D(BIPG) D ERRCD^BIUTL2(620,,1) S VALMQUIT="" Q
- K VALMHDR
- N BIDASH,BILINE,X,Y,Z S BILINE=0
- S:'$G(BIRPDT) BIRPDT=DT
- ;
- S X="WARNING: Confidential Patient Information, Privacy Act applies."
- D CENTERT^BIUTL5(.X)
- D WH^BIW(.BILINE,X,1)
- ;
- S X=$$REPHDR^BIUTL6(DUZ(2)),BIDASH=$L(X)+2 D CENTERT^BIUTL5(.X)
- D WH^BIW(.BILINE,X)
- S X=$$SP^BIUTL5(BIDASH,"-") D CENTERT^BIUTL5(.X)
- D WH^BIW(.BILINE,X)
- ;
- S X=" Report Date: "_$$TXDT1^BIUTL5(BIRPDT)
- S X=X_" Total Patients: "_$G(BIT)
- ;
- D:$G(BIAG)]""
- .;---> For Patient Group (8=Search Template) to not display Age Range.
- .Q:(+BIPG=8)
- .I BIAG="ALL" S X=X_" (All Ages)" Q
- .S X=X_" ("_$$MTHYR^BIAGE(BIAG)_")"
- I +BIPG'=8 S X=X_" *"_$S($D(BIBEN("ALL")):"All",1:"01")
- D WH^BIW(.BILINE,X)
- ;
- D
- .I $G(BITITL)]"" S X=" Report Title: "_$$PAD^BIUTL5(BITITL,11) Q
- .I $G(BINFO)["5," S X=" Clinic Date: "_$$TXDT1^BIUTL5(BIFDT) Q
- .S X=""
- ;
- N BIHEAD,BIPG1
- D PGRP^BIDU(BIPG,.BIPG1)
- S BIHEAD="Patient Group: "
- D
- .I X]"",$L(BIHEAD_BIPG1)<41 D Q
- ..S X=X_$$SP^BIUTL5(9)_BIHEAD_BIPG1 D WH^BIW(.BILINE,X)
- .;---> If Clinic Date & Patient Group won't fit, write Clinic Date and go on.
- .I X]"" D WH^BIW(.BILINE,X)
- .;---> Now write Patient Group info on the next line(s).
- .N I,N,V,Z S N=1,V=",",X="",BIHEAD=" "_BIHEAD
- .F D Q:$P(BIPG1,V,I)="" Q:$G(BIERR)
- ..F I=N:1 S X=$P(BIPG1,V,N,I) Q:$L(X)>60 Q:$P(BIPG1,V,I)=""
- ..I N>1 S BIHEAD=$$SP^BIUTL5(19)
- ..D WH^BIW(.BILINE,BIHEAD_$P(BIPG1,V,N,I-1))
- ..S N=I
- ;
- ;---> If necessary, write a dashed line for subheader,
- ;---> otherwise write a blank line.
- N I K X
- F I="CC","CM","DPRV","MMR","MMD","HCF","LOT" D
- .I $O(@("BI"_I_"(0)")) S X=1
- D WH^BIW(.BILINE,$S($G(X):$$SP^BIUTL5(79,"-"),1:""))
- ;
- D
- .;---> If specific Communities were selected (not ALL), then print
- .;---> the Communities in a subheader at the top of the report.
- .D SUBH^BIOUTPT5("BICC","Community",,"^AUTTCOM(",.BILINE,.BIERR,,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Case Managers, print Case Manager subheader.
- .D SUBH^BIOUTPT5("BICM","Case Manager",,"^VA(200,",.BILINE,.BIERR,,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Designated Providers, print Designated Provider subheader.
- .D SUBH^BIOUTPT5("BIDPRV","Designated Provider",,"^VA(200,",.BILINE,.BIERR,,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Immunizations Received, print subheader.
- .S X="Immunization Rcvd",Y="Immunizations Rcvd"
- .I $G(BIRDT) N Z S Z=" "_$$DATE^BIDU(BIRDT,1)
- .D SUBH^BIOUTPT5("BIMMR",X,Y,"^AUTTIMM(",.BILINE,.BIERR,2,11,$G(Z))
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Immunizations Due, print subheader.
- .S X="Immunization Due",Y="Immunizations Due"
- .D SUBH^BIOUTPT5("BIMMD",X,Y,"^AUTTIMM(",.BILINE,.BIERR,2,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Health Care Facilities, print subheader.
- .D SUBH^BIOUTPT5("BIHCF","Facility",,"^DIC(4,",.BILINE,.BIERR,,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- .;
- .;---> If specific Lot Numbers, print subheader.
- .D SUBH^BIOUTPT5("BILOT","Lot Number",,"^AUTTIML(",.BILINE,.BIERR,,11)
- .I $G(BIERR) D ERRCD^BIUTL2(BIERR,.X) D WH^BIW(.BILINE,X) Q
- ;
- ;
- ;---> Build Column Headers.
- N BICOL S BICOL=" Name HRCN# DOB"
- D
- .I BIFDT'=DT D Q
- ..S BICOL=BICOL_" & Age on "_$$TXDT1^BIUTL5(BIFDT)_" Current Community"
- .;"Age Today" vvv83
- .S BICOL=BICOL_" Age Today Sex Current Community"
- S BICOL=$$PAD^BIUTL5(BICOL,80)
- ;
- ;---> Set Column Headers for Listman.
- S:$D(VALMCAP) VALMCAP=BICOL
- ;
- ;---> If Header array is being built for Listmananger,
- ;---> reset display window margins for Communities, etc. and quit.
- I $D(VALM("BM")) D Q
- .S VALM("TM")=BILINE+3
- .S VALM("LINES")=VALM("BM")-VALM("TM")+1
- .;---> Safeguard to prevent divide/0 error.
- .S:VALM("LINES")<1 VALM("LINES")=1
- ;
- ;---> If Header array is being built for a printout, write
- ;---> in the column headers.
- D WH^BIW(.BILINE,BICOL)
- Q
- ;
- ;
- ;----------
- INIT ;EP
- ;---> Initialize variables and list array.
- S VALM("TITLE")=$$LMVER^BILOGO
- N BILINE,BI31,X S BILINE=0,BI31=$C(31)_$C(31)
- S:'$D(BINFO) BINFO(0)=0
- I '$D(BIPG) D ERRCD^BIUTL2(620,,1) S VALMQUIT="" Q
- ;
- ;
- ;---> Loop through ^TMP("BIDUL",$J,...,BIDFN) adding patients to list.
- ;---> Seed loops with -1 to pick up entries with a subscript of 0. Imm v8.5.
- N BIDFN,N,M,P
- S N=-1
- F S N=$O(^TMP("BIDUL",$J,N)) Q:N="" D
- .S M=-1
- .F S M=$O(^TMP("BIDUL",$J,N,M)) Q:M="" D
- ..S P=-1
- ..F S P=$O(^TMP("BIDUL",$J,N,M,P)) Q:P="" D
- ...N BIVAL1
- ...S BIDFN=0
- ...F S BIDFN=$O(^TMP("BIDUL",$J,N,M,P,BIDFN)) Q:'BIDFN S BIVAL1=^(BIDFN) D
- ....;---> BIVAL=0=All (no filter), 1=Rejects, 2=Appropriate.
- ....I $G(BIVAL) Q:BIVAL'=BIVAL1
- ....N N,M,P
- ....;---> Write line to ^TMP("BIDULV",$J,BILINE,0)=BIVAL global.
- ....D PATIENT^BIDUVLS2(.BILINE,BIDFN,.BINFO,$G(BIDASH),.BIMMRF,.BIMMLF)
- ;
- ;---> If no records were found to match, report it.
- D:'$G(BIT)
- .D WRITE^BIDUVLS2(.BILINE)
- .N X S X=" No Patient Records match the selected criteria."
- .D WRITE^BIDUVLS2(.BILINE,X)
- ;
- ;---> Finish up Listmanager List Count.
- S VALMCNT=BILINE
- D ZSAVES^BIUTL3
- 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
- ;
- ;
- ;----------
- PRINTVW ;EP
- ;---> Print Due List from View Screen. (No queueing.)
- ;---> Called by Protocol BI DUE LIST VIEW PRINT from
- ;---> Menu Protocol BI MENU DUE LIST VIEW.
- ;
- D
- .N BIPOP W !?3,"Printout may not be queued at this point."
- .D ZIS^BIUTL2(.BIPOP)
- .Q:$G(BIPOP)
- .D PRTLST^BIUTL8("BIDULV")
- S VALMBCK="R"
- D RE^VALM4
- Q
- ;
- ;
- ;----------
- HELP ;EP
- ;---> Help code.
- N BIX S BIX=X
- D FULL^VALM1
- W !!?5,"Use arrow keys to scroll up and down through the list, or"
- W !?5,"type ""??"" for more actions, such as Search and Print List."
- D DIRZ^BIUTL3(""," Press ENTER/RETURN to continue")
- D:BIX'="??" RE^VALM4
- Q
- ;
- ;
- ;----------
- EXIT ;EP
- ;---> Cleanup, EOJ.
- K ^TMP("BIDULV",$J)
- Q
- BIDUVLS1 ;IHS/CMI/MWR - VIEW DUE LIST.; MAY 10, 2010
- +1 ;;8.5;IMMUNIZATION;;SEP 01,2011
- +2 ;;* MICHAEL REMILLARD, DDS * CIMARRON MEDICAL INFORMATICS, FOR IHS *
- +3 ;; LIST TEMPLATE CODE FOR VIEWING PATIENTS.
- +4 ;; PATCH 1: Corrects Patient Group for not displaying Age Range. HDR+21
- +5 ;
- +6 ;
- +7 ;----------
- START(BIFDT,BINFO,BIPG,BIAG,BIT,BIVAL,BIDASH,BITITL,BIRPDT,BIBEN) ;EP
- +1 ;---> Display Immunizations Due List via Listman.
- +2 ;---> Parameters:
- +3 ; 1 - BIFDT (req) Forecast/Clinic Date.
- +4 ; 2 - BINFO (req) Array of Additional Information elements for each patient.
- +5 ; 3 - BIPG (req) Patient Group Data; see PGRPOUP1^BIOUTPT4 for details.
- +6 ; 4 - BIAG (opt) Age Range. If 2nd ^-piece=1, display "years."
- +7 ; 5 - BIT (req) Total Patients retrieved.
- +8 ; 6 - BIVAL (opt) Value indicates which patients:
- +9 ; 0=All, 1=Rejects only, 2=Appropriate only.
- +10 ; 7 - BIDASH (opt) 1=Omit Dash line between records; 0=include it.
- +11 ; 8 - BITITL (opt) Report Name, if present will replace "Clinic Date"
- +12 ; in report header.
- +13 ; 9 - BIRPDT (opt) Report Date: Today unless passed from reports
- +14 ; (e.g., Quarterly Report).
- +15 ; 10 - BIBEN (req) Beneficiary Type array: either BIBEN(1) or BIBEN("ALL").
- +16 ;
- +17 ;----------
- MAIN ;EP
- +1 ;---> Listman Screen for printing Immunization Due Letters.
- +2 DO SETVARS^BIUTL5
- +3 IF '$GET(BIFDT)
- SET BIFDT=DT
- +4 IF '$GET(BIRPDT)
- SET BIRPDT=DT
- +5 NEW VALMCNT
- +6 DO EN
- +7 DO EXIT
- +8 QUIT
- +9 ;
- +10 ;
- +11 ;----------
- EN ;EP
- +1 ;---> Main entry point.
- +2 DO EN^VALM("BI DUE LIST VIEW")
- +3 QUIT
- +4 ;
- +5 ;
- +6 ;----------
- HDR ;EP
- +1 ;---> Header code
- +2 IF '$DATA(BIPG)
- DO ERRCD^BIUTL2(620,,1)
- SET VALMQUIT=""
- QUIT
- +3 KILL VALMHDR
- +4 NEW BIDASH,BILINE,X,Y,Z
- SET BILINE=0
- +5 IF '$GET(BIRPDT)
- SET BIRPDT=DT
- +6 ;
- +7 SET X="WARNING: Confidential Patient Information, Privacy Act applies."
- +8 DO CENTERT^BIUTL5(.X)
- +9 DO WH^BIW(.BILINE,X,1)
- +10 ;
- +11 SET X=$$REPHDR^BIUTL6(DUZ(2))
- SET BIDASH=$LENGTH(X)+2
- DO CENTERT^BIUTL5(.X)
- +12 DO WH^BIW(.BILINE,X)
- +13 SET X=$$SP^BIUTL5(BIDASH,"-")
- DO CENTERT^BIUTL5(.X)
- +14 DO WH^BIW(.BILINE,X)
- +15 ;
- +16 SET X=" Report Date: "_$$TXDT1^BIUTL5(BIRPDT)
- +17 SET X=X_" Total Patients: "_$GET(BIT)
- +18 ;
- +19 IF $GET(BIAG)]""
- Begin DoDot:1
- +20 ;---> For Patient Group (8=Search Template) to not display Age Range.
- +21 IF (+BIPG=8)
- QUIT
- +22 IF BIAG="ALL"
- SET X=X_" (All Ages)"
- QUIT
- +23 SET X=X_" ("_$$MTHYR^BIAGE(BIAG)_")"
- End DoDot:1
- +24 IF +BIPG'=8
- SET X=X_" *"_$SELECT($DATA(BIBEN("ALL")):"All",1:"01")
- +25 DO WH^BIW(.BILINE,X)
- +26 ;
- +27 Begin DoDot:1
- +28 IF $GET(BITITL)]""
- SET X=" Report Title: "_$$PAD^BIUTL5(BITITL,11)
- QUIT
- +29 IF $GET(BINFO)["5,"
- SET X=" Clinic Date: "_$$TXDT1^BIUTL5(BIFDT)
- QUIT
- +30 SET X=""
- End DoDot:1
- +31 ;
- +32 NEW BIHEAD,BIPG1
- +33 DO PGRP^BIDU(BIPG,.BIPG1)
- +34 SET BIHEAD="Patient Group: "
- +35 Begin DoDot:1
- +36 IF X]""
- IF $LENGTH(BIHEAD_BIPG1)<41
- Begin DoDot:2
- +37 SET X=X_$$SP^BIUTL5(9)_BIHEAD_BIPG1
- DO WH^BIW(.BILINE,X)
- End DoDot:2
- QUIT
- +38 ;---> If Clinic Date & Patient Group won't fit, write Clinic Date and go on.
- +39 IF X]""
- DO WH^BIW(.BILINE,X)
- +40 ;---> Now write Patient Group info on the next line(s).
- +41 NEW I,N,V,Z
- SET N=1
- SET V=","
- SET X=""
- SET BIHEAD=" "_BIHEAD
- +42 FOR
- Begin DoDot:2
- +43 FOR I=N:1
- SET X=$PIECE(BIPG1,V,N,I)
- IF $LENGTH(X)>60
- QUIT
- IF $PIECE(BIPG1,V,I)=""
- QUIT
- +44 IF N>1
- SET BIHEAD=$$SP^BIUTL5(19)
- +45 DO WH^BIW(.BILINE,BIHEAD_$PIECE(BIPG1,V,N,I-1))
- +46 SET N=I
- End DoDot:2
- IF $PIECE(BIPG1,V,I)=""
- QUIT
- IF $GET(BIERR)
- QUIT
- End DoDot:1
- +47 ;
- +48 ;---> If necessary, write a dashed line for subheader,
- +49 ;---> otherwise write a blank line.
- +50 NEW I
- KILL X
- +51 FOR I="CC","CM","DPRV","MMR","MMD","HCF","LOT"
- Begin DoDot:1
- +52 IF $ORDER(@("BI"_I_"(0)"))
- SET X=1
- End DoDot:1
- +53 DO WH^BIW(.BILINE,$SELECT($GET(X):$$SP^BIUTL5(79,"-"),1:""))
- +54 ;
- +55 Begin DoDot:1
- +56 ;---> If specific Communities were selected (not ALL), then print
- +57 ;---> the Communities in a subheader at the top of the report.
- +58 DO SUBH^BIOUTPT5("BICC","Community",,"^AUTTCOM(",.BILINE,.BIERR,,11)
- +59 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +60 ;
- +61 ;---> If specific Case Managers, print Case Manager subheader.
- +62 DO SUBH^BIOUTPT5("BICM","Case Manager",,"^VA(200,",.BILINE,.BIERR,,11)
- +63 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +64 ;
- +65 ;---> If specific Designated Providers, print Designated Provider subheader.
- +66 DO SUBH^BIOUTPT5("BIDPRV","Designated Provider",,"^VA(200,",.BILINE,.BIERR,,11)
- +67 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +68 ;
- +69 ;---> If specific Immunizations Received, print subheader.
- +70 SET X="Immunization Rcvd"
- SET Y="Immunizations Rcvd"
- +71 IF $GET(BIRDT)
- NEW Z
- SET Z=" "_$$DATE^BIDU(BIRDT,1)
- +72 DO SUBH^BIOUTPT5("BIMMR",X,Y,"^AUTTIMM(",.BILINE,.BIERR,2,11,$GET(Z))
- +73 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +74 ;
- +75 ;---> If specific Immunizations Due, print subheader.
- +76 SET X="Immunization Due"
- SET Y="Immunizations Due"
- +77 DO SUBH^BIOUTPT5("BIMMD",X,Y,"^AUTTIMM(",.BILINE,.BIERR,2,11)
- +78 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +79 ;
- +80 ;---> If specific Health Care Facilities, print subheader.
- +81 DO SUBH^BIOUTPT5("BIHCF","Facility",,"^DIC(4,",.BILINE,.BIERR,,11)
- +82 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- +83 ;
- +84 ;---> If specific Lot Numbers, print subheader.
- +85 DO SUBH^BIOUTPT5("BILOT","Lot Number",,"^AUTTIML(",.BILINE,.BIERR,,11)
- +86 IF $GET(BIERR)
- DO ERRCD^BIUTL2(BIERR,.X)
- DO WH^BIW(.BILINE,X)
- QUIT
- End DoDot:1
- +87 ;
- +88 ;
- +89 ;---> Build Column Headers.
- +90 NEW BICOL
- SET BICOL=" Name HRCN# DOB"
- +91 Begin DoDot:1
- +92 IF BIFDT'=DT
- Begin DoDot:2
- +93 SET BICOL=BICOL_" & Age on "_$$TXDT1^BIUTL5(BIFDT)_" Current Community"
- End DoDot:2
- QUIT
- +94 ;"Age Today" vvv83
- +95 SET BICOL=BICOL_" Age Today Sex Current Community"
- End DoDot:1
- +96 SET BICOL=$$PAD^BIUTL5(BICOL,80)
- +97 ;
- +98 ;---> Set Column Headers for Listman.
- +99 IF $DATA(VALMCAP)
- SET VALMCAP=BICOL
- +100 ;
- +101 ;---> If Header array is being built for Listmananger,
- +102 ;---> reset display window margins for Communities, etc. and quit.
- +103 IF $DATA(VALM("BM"))
- Begin DoDot:1
- +104 SET VALM("TM")=BILINE+3
- +105 SET VALM("LINES")=VALM("BM")-VALM("TM")+1
- +106 ;---> Safeguard to prevent divide/0 error.
- +107 IF VALM("LINES")<1
- SET VALM("LINES")=1
- End DoDot:1
- QUIT
- +108 ;
- +109 ;---> If Header array is being built for a printout, write
- +110 ;---> in the column headers.
- +111 DO WH^BIW(.BILINE,BICOL)
- +112 QUIT
- +113 ;
- +114 ;
- +115 ;----------
- INIT ;EP
- +1 ;---> Initialize variables and list array.
- +2 SET VALM("TITLE")=$$LMVER^BILOGO
- +3 NEW BILINE,BI31,X
- SET BILINE=0
- SET BI31=$CHAR(31)_$CHAR(31)
- +4 IF '$DATA(BINFO)
- SET BINFO(0)=0
- +5 IF '$DATA(BIPG)
- DO ERRCD^BIUTL2(620,,1)
- SET VALMQUIT=""
- QUIT
- +6 ;
- +7 ;
- +8 ;---> Loop through ^TMP("BIDUL",$J,...,BIDFN) adding patients to list.
- +9 ;---> Seed loops with -1 to pick up entries with a subscript of 0. Imm v8.5.
- +10 NEW BIDFN,N,M,P
- +11 SET N=-1
- +12 FOR
- SET N=$ORDER(^TMP("BIDUL",$JOB,N))
- IF N=""
- QUIT
- Begin DoDot:1
- +13 SET M=-1
- +14 FOR
- SET M=$ORDER(^TMP("BIDUL",$JOB,N,M))
- IF M=""
- QUIT
- Begin DoDot:2
- +15 SET P=-1
- +16 FOR
- SET P=$ORDER(^TMP("BIDUL",$JOB,N,M,P))
- IF P=""
- QUIT
- Begin DoDot:3
- +17 NEW BIVAL1
- +18 SET BIDFN=0
- +19 FOR
- SET BIDFN=$ORDER(^TMP("BIDUL",$JOB,N,M,P,BIDFN))
- IF 'BIDFN
- QUIT
- SET BIVAL1=^(BIDFN)
- Begin DoDot:4
- +20 ;---> BIVAL=0=All (no filter), 1=Rejects, 2=Appropriate.
- +21 IF $GET(BIVAL)
- IF BIVAL'=BIVAL1
- QUIT
- +22 NEW N,M,P
- +23 ;---> Write line to ^TMP("BIDULV",$J,BILINE,0)=BIVAL global.
- +24 DO PATIENT^BIDUVLS2(.BILINE,BIDFN,.BINFO,$GET(BIDASH),.BIMMRF,.BIMMLF)
- End DoDot:4
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +25 ;
- +26 ;---> If no records were found to match, report it.
- +27 IF '$GET(BIT)
- Begin DoDot:1
- +28 DO WRITE^BIDUVLS2(.BILINE)
- +29 NEW X
- SET X=" No Patient Records match the selected criteria."
- +30 DO WRITE^BIDUVLS2(.BILINE,X)
- End DoDot:1
- +31 ;
- +32 ;---> Finish up Listmanager List Count.
- +33 SET VALMCNT=BILINE
- +34 DO ZSAVES^BIUTL3
- +35 QUIT
- +36 ;
- +37 ;
- +38 ;----------
- 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 ;----------
- PRINTVW ;EP
- +1 ;---> Print Due List from View Screen. (No queueing.)
- +2 ;---> Called by Protocol BI DUE LIST VIEW PRINT from
- +3 ;---> Menu Protocol BI MENU DUE LIST VIEW.
- +4 ;
- +5 Begin DoDot:1
- +6 NEW BIPOP
- WRITE !?3,"Printout may not be queued at this point."
- +7 DO ZIS^BIUTL2(.BIPOP)
- +8 IF $GET(BIPOP)
- QUIT
- +9 DO PRTLST^BIUTL8("BIDULV")
- End DoDot:1
- +10 SET VALMBCK="R"
- +11 DO RE^VALM4
- +12 QUIT
- +13 ;
- +14 ;
- +15 ;----------
- HELP ;EP
- +1 ;---> Help code.
- +2 NEW BIX
- SET BIX=X
- +3 DO FULL^VALM1
- +4 WRITE !!?5,"Use arrow keys to scroll up and down through the list, or"
- +5 WRITE !?5,"type ""??"" for more actions, such as Search and Print List."
- +6 DO DIRZ^BIUTL3(""," Press ENTER/RETURN to continue")
- +7 IF BIX'="??"
- DO RE^VALM4
- +8 QUIT
- +9 ;
- +10 ;
- +11 ;----------
- EXIT ;EP
- +1 ;---> Cleanup, EOJ.
- +2 KILL ^TMP("BIDULV",$JOB)
- +3 QUIT