Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: BGP5DPA1

BGP5DPA1.m

Go to the documentation of this file.
  1. BGP5DPA1 ; IHS/CMI/LAB - COMP NATIONAL GPRA FOR PTS W/APPT ;
  1. ;;15.1;IHS CLINICAL REPORTING;;MAY 06, 2015;Build 143
  1. ;
  1. ISS ;EP
  1. S BGPBDATE=BGPBD,BGPEDATE=BGPED,BGPTIME=1
  1. S BGPAGEB=$$AGE^AUPNPAT(DFN,BGPBD)
  1. S BGPIC=0 F S BGPIC=$O(BGPIND(BGPIC)) Q:BGPIC'=+BGPIC D
  1. .K BGPSTOP,BGPVAL,BGPVALUE,BGPG,BGPC,BGPALLED,BGPV,A,B,C,D,E,F,G,H,I,J,K,M,N,O,P,Q,R,S,T,V,W,X,Y,Z
  1. .K BGPN1,BGPN2,BGPN3,BGPN4,BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27,BGPN28,BGPN29,BGPN30
  1. .K BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPD10,BGPD11,BGPD12,BGPD13
  1. .K BGPNUMV
  1. .K ^TMP($J,"A")
  1. .S BGPGPRAI=0 F S BGPGPRAI=$O(^BGPINDKC("B",BGPIC,BGPGPRAI)) Q:BGPGPRAI'=+BGPGPRAI D
  1. ..Q:$P($G(^BGPINDKC(BGPGPRAI,12)),U,9)=""
  1. ..S (BGPNUM,BGPDEN)=0
  1. ..S BGPISSV="",BGPSKIP=0
  1. ..Q:'$D(^BGPINDKC(BGPGPRAI,4))
  1. ..X ^BGPINDKC(BGPGPRAI,4)
  1. ..S $P(BGPISSV,U,4)=$$TITLE2^BGP5DPA1(BGPGPRAI)
  1. ..Q:BGPSKIP
  1. ..S C=$S($P($G(^AUPNPAT(DFN,11)),U,18)]"":$P(^AUPNPAT(DFN,11),U,18),1:"UNKNOWN")
  1. ..S S=$P(^DPT(DFN,0),U,2)
  1. ..I BGPISST="A" D
  1. ...S ^XTMP("BGP5DPA",BGPGPRAJ,BGPGPRAH,"ANY",$P(^DPT(DFN,0),U,1),DFN,BGPIC,BGPGPRAI)=BGPISSV
  1. ..I BGPISST="C" D
  1. ...S X=BGPAPPTS(BGPSOX)
  1. ...S ^XTMP("BGP5DPA",BGPGPRAJ,BGPGPRAH,"APPTS",$P(^SC($P(X,U,2),0),U),$P($P(X,U,3),"."),$P(X,U,3),$P(^DPT(DFN,0),U),DFN,BGPIC,BGPGPRAI)=BGPISSV ;_"%%"_$G(BGPISSV(1))
  1. ..I BGPISST="P" D
  1. ...S X=BGPAPPTS(BGPSOX)
  1. ...S ^XTMP("BGP5DPA",BGPGPRAJ,BGPGPRAH,"PATS",$P(^DPT(DFN,0),U),DFN,$P($P(X,U,3),"."),$P(^SC($P(X,U,2),0),U),$P(X,U,3),BGPIC,BGPGPRAI)=BGPISSV ;_"%%"_$G(BGPISSV(1))
  1. ..I BGPISST="D" D
  1. ...S X=BGPAPPTS(BGPSOX)
  1. ...S ^XTMP("BGP5DPA",BGPGPRAJ,BGPGPRAH,"APPTS",BGPDIVI,$P(^SC($P(X,U,2),0),U),$P($P(X,U,3),"."),$P(X,U,3),$P(^DPT(DFN,0),U),DFN,BGPIC,BGPGPRAI)=BGPISSV ;_"%%"_$G(BGPISSV(1))
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPISSV
  1. Q
  1. I003 ;EP - DM ideal glycemic control
  1. ;get last date and value for patient DFN
  1. ;patient will display this item if they had a dm diagnosis ever and first dm dx
  1. ;was prior to beginning date of date range
  1. S BGPSKIP=""
  1. I 'BGPDMD1 S BGPSKIP=1 Q ;no dm diagnosis ever
  1. NEW BGPV,BGPD,BGPND
  1. S BGPIN=""
  1. K BGPISSV
  1. S BGPV=$$HGBA1C^BGP5D2(DFN,$$DOB^AUPNPAT(DFN),BGPEDATE)
  1. I BGPV="" S BGPISSV=$P($G(^BGPINDKC(BGPGPRAI,12)),U,9)_U_"Last A1c: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBDATE) Q
  1. S BGPD=$P(BGPV,U,3)
  1. S BGPND=$$FMADD^XLFDT(BGPD,365)
  1. I BGPND'>BGPED S BGPIN=1
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPMET=$S($P(BGPV,U,2)'=6&($P(BGPV,U,2)'=5):"Not Ideal Control",1:"Ideal Control")
  1. I BGPMET="" S BGPMET=$S($P(BGPV,U,4)="":"No VALUE",1:"")
  1. I 'BGPIN,BGPMET="Ideal Control" S BGPSKIP=1 Q ;not due before end of gpra year, in control
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last A1c: "_$$DATE^BGP5UTL(BGPD)_" value: "_$P(BGPV,U,4)_" - "_BGPMET_"|"_$S(BGPIN:"Overdue as of: ",1:"Next Due: ")_BGPND
  1. I BGPIN,BGPMET["Not Ideal Control" S BGPISSV=BGPISSV_"|Next Due: "_BGPND
  1. Q
  1. I004 ;EP - DM BP control
  1. I 'BGPDMD1 S BGPSKIP=1 Q ;no dm diagnosis ever
  1. NEW BGPV,BGPD,BGPND
  1. S (BGPISSV,BGPIN)=""
  1. K BGPISSV
  1. S BGPV=$$MEANBP^BGP5D2(DFN,$$FMADD^XLFDT(BGPED,-365),BGPED)
  1. I BGPV="" S BGPV=$$BPCPT^BGP5D22(DFN,BGP365,BGPED) I $P(BGPV,U) S BGPV=U_2_U_$P(BGPV,U,2)
  1. ;
  1. I BGPV="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Mean BPs: 2 BPs not documented "_$$DATE^BGP5UTL(BGPBD)_"-"_$$DATE^BGP5UTL(BGPED)_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. I $P(BGPV,U,2)=4!($P(BGPV,U,2)=2) S BGPSKIP=1 Q ;in control BP in report period, do not display
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Mean BPs: "_$P(BGPV,U)
  1. I $P(BGPV,U,2)'=4,$P(BGPV,U,2)'=2 S BGPISSV=BGPISSV_" - Not Controlled BP"
  1. Q
  1. I005 ;EP - DM LDL
  1. S BGPSKIP=""
  1. I 'BGPDMD1 S BGPSKIP=1 Q
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSV="",BGPIN=""
  1. K BGPISSV
  1. S BGPVALUE=$$LDL^BGP5D2(DFN,$$DOB^AUPNPAT(DFN),BGPED)
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last LDL: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPD=$P(BGPVALUE,U,2)
  1. S BGPND=$$FMADD^XLFDT(BGPD,365)
  1. I BGPND'>BGPED S BGPIN=1
  1. I 'BGPIN S BGPSKIP=1 Q ;had LDL in time period
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last LDL: "_$$DATE^BGP5UTL(BGPD)_"|"_"Overdue as of: "_BGPND
  1. Q
  1. I006 ;EP - DM Nephropathy
  1. I 'BGPDMD1 S BGPSKIP=1 Q
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSV="",BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. S (BGPBD1,BGPBD2)=$$DOB^AUPNPAT(DFN),BGPEDATE=BGPED,BGPN1=0
  1. S BGPHOLD=""
  1. D I61^BGP5D21
  1. S BGPGFR=$P(BGPHOLD,"|",1)
  1. S BGPQUP=$P(BGPHOLD,"|",3)
  1. S BGPESRD=$P(BGPHOLD,"|",2)
  1. I BGPESRD S BGPSKIP=1 D I006X Q
  1. S BGPGD=$P(BGPGFR,U,2),BGPNGFR=$S($P(BGPGFR,U,2):$$FMADD^XLFDT($P(BGPGFR,U,2),365),1:"") I BGPNGFR'>BGPED S BGPIN=1
  1. S BGPUD=$P(BGPQUP,U,3),BGPNQUP=$S($P(BGPQUP,U,3):$$FMADD^XLFDT($P(BGPQUP,U,3),365),1:"") I BGPNQUP'>BGPED S BGPIN1=1
  1. I 'BGPIN,'BGPIN1 D I006X S BGPSKIP=1 Q ;had both GFR and QUP
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Est GFR: "_$S($P(BGPGFR,U,2)]"":$$DATE^BGP5UTL($P(BGPGFR,U,2)),1:"Never")_"|"_"Last UACR: "_$S($P(BGPQUP,U,3)]"":$$DATE^BGP5UTL($P(BGPQUP,U,3)),1:"Never")
  1. S BGPND=$S(BGPGD:$$FMADD^XLFDT(BGPGD,365),1:BGPBD)
  1. I BGPUD]"",BGPND<$$FMADD^XLFDT(BGPUD,365) S BGPND=$$FMADD^XLFDT(BGPUD,365)
  1. I BGPND="" S BGPND=BGPBD
  1. S BGPISSV=BGPISSV_"|Est GFR & UACR Overdue as of: "_$$DATE^BGP5UTL(BGPND)
  1. I006X ;
  1. K BGPN1,BGPGFR,BGPQUP,BGPN2,BGPESRD,BGPIN,BGPIN1,BGPNQUP,BGPNGFR,BGPGD,BGPUD
  1. Q
  1. I007 ;EP DM eye exam
  1. S BGPSKIP=""
  1. I 'BGPDMD1 S BGPSKIP=1 Q ;no dm diagnosis ever
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSV="",BGPIN=""
  1. K BGPISSV
  1. S BGPVALUE=$$EYE^BGP5DPA4(DFN,$$DOB^AUPNPAT(DFN),BGPED,1)
  1. S BGPREF=""
  1. I BGPVALUE="",BGPREF="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Evaluation: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. I BGPVALUE="",BGPREF]"" D Q
  1. .S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Evaluation: Never|Patient refused on "_$$DATE^BGP5UTL($P(BGPREF,U,2))_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) S BGPD=$P(BGPVALUE,U,2)
  1. S BGPD=$P(BGPVALUE,U,2)
  1. S BGPND=$$FMADD^XLFDT(BGPD,365)
  1. I BGPND'>BGPED S BGPIN=1
  1. I 'BGPIN S BGPSKIP=1 Q ;not due this gpra year so don't display
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Evaluation: "_$$DATE^BGP5UTL(BGPD)
  1. ;I BGPREF]"" S BGPISSV=BGPISSV_"|Patient refused on "_$$DATE^BGP5UTL($P(BGPREF,U,2))
  1. S BGPISSV=BGPISSV_"|Overdue as of: "_BGPND
  1. Q
  1. I009 ;EP DENTAL EXAM
  1. ;get last date and value for patient DFN
  1. S BGPSKIP=""
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSV="",BGPIN=""
  1. K BGPISSV
  1. S BGPVALUE=$$DENTSRV^BGP5D21(DFN,$$DOB^AUPNPAT(DFN),BGPED,1)
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Dental Exam: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPD=$P(BGPVALUE,U,2)
  1. S BGPND=$$FMADD^XLFDT(BGPD,365)
  1. I BGPND'>BGPED S BGPIN=1
  1. I 'BGPIN S BGPSKIP=1 Q ;not due this rp
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPREF=$$DENTSRV^BGP5D21(DFN,BGPBD,BGPED,1)
  1. ;I BGPREF["Ref" S BGPSKIP=1 Q
  1. ;I BGPVALUE["Refused" S BGPSKIP=1 Q ;S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Dental Exam: patient refused on "_$$DATE^BGP5UTL($P(BGPVALUE,U,2))_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Dental Exam: "_$$DATE^BGP5UTL(BGPD)_"|Overdue as of: "_BGPND
  1. S $P(BGPISSV,U,4)=$$TITLE2(BGPGPRAI)
  1. Q
  1. I012 ;EP - FLU
  1. ;get last date and value for patient DFN
  1. ;date of last^value of last^next date due
  1. S BGPSKIP=""
  1. NEW BGPVALUE,BGPD,BGPND
  1. I BGPAGEB<65 S BGPSKIP=1 Q
  1. S BGPISSV="",BGPIN=""
  1. K BGPISSV
  1. S BGPVALUE=$$FLU^BGP5D3(DFN,BGPBD,BGPED,1)
  1. I BGPVALUE]"",$P(BGPVALUE,U,3)'=2 S BGPSKIP=1 Q
  1. S BGPVALUE=$$FLU^BGP5D3(DFN,$$DOB^AUPNPAT(DFN),BGPED,1)
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last IZ: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPD=$P(BGPVALUE,U,1)
  1. S BGPND=$$FMADD^XLFDT(BGPD,365)
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. I BGPVALUE["Refus" S BGPIN=1 S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last IZ: patient refused on "_$$DATE^BGP5UTL($P(BGPVALUE,U,1))_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last IZ: "_$$DATE^BGP5UTL(BGPD)_"|Overdue as of: "_BGPND
  1. Q
  1. I013 ;EP - PNEU
  1. ;get last date and value for patient DFN
  1. ;date of last^value of last^next date due
  1. S BGPSKIP=""
  1. NEW BGPVALUE,BGPD,BGPND
  1. I BGPAGEB<65 S BGPSKIP=1 Q ;GPRA MEASURE IS 65 AND OLDER
  1. S BGPISSV="",BGPIN=""
  1. K BGPISSV
  1. S BGPVALUE=$$PNEU^BGP5D31(DFN,$$DOB^AUPNPAT(DFN),BGPED,1)
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last IZ: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) Q
  1. S BGPD=$P(BGPVALUE,U,1)
  1. S BGPND=DT
  1. S BGPVAL=$$PNEU^BGP5D31(DFN,$$FMADD^XLFDT(BGPEDATE,-(5*365)),BGPEDATE)
  1. I $P(BGPVAL,U,3)=1!($P(BGPVAL,U,3)=3) S BGPIN=0 G N ;HAD IN PAST 5 YEARS SO "UP TO DATE"
  1. S BGPA65="" S BGPA65=$$PNEU^BGP5D31(DFN,$$FMADD^XLFDT($$DOB^AUPNPAT(DFN),+(65*365)),BGPEDATE) I $P(BGPA65,U,3)=1!($P(BGPA65,U,3)=3) S BGPIN=0
  1. I BGPVALUE["Refus" S BGPSKIP=1 Q
  1. N ;
  1. I 'BGPIN S BGPSKIP=1 Q ;had one in past 5 yrs or after 65 so not due
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last IZ: "_$$DATE^BGP5UTL(BGPD)_"|Overdue as of: "_BGPND
  1. Q
  1. I014 ;EP - Childhood IZ
  1. ;
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSO=1,BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. D I14^BGP5D32
  1. I $G(BGPSTOP)=1 S BGPSKIP=1 D I014X Q
  1. I BGPN40 S BGPSKIP=1 D I014X Q ;up to date
  1. I 'BGPN40 S BGPISSV=$$TITLE(BGPGPRAI)_U_$P(BGPVALUE,"|||",2)_"|"_$S('BGPD3:"NOT ",1:"")_"Active on Immunization Register."
  1. I014X ;
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27
  1. K BGPI1,BGPI2,BGPI3,BGPI4,BGPI5,BGPI6,BGPI7,BGPN28,BGPN29
  1. K BGPVALUE
  1. K BGPDTAP,BGPOPV,BGPMMR,BGPD,BGPT,BGPPER,BGPTET,BGPM,BGPMU,BGPME,BGPHIB,BGPHEP,BGPVAR
  1. Q
  1. I0141 ;EP - Childhood IZ
  1. ;
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSO=1,BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. D I14^BGP5D32
  1. I $G(BGPSTOP)=1 S BGPSKIP=1 D I0141X Q
  1. I BGPN41 S BGPSKIP=1 D I0141X Q ;up to date
  1. I 'BGPN41 S BGPISSV=$$TITLE(BGPGPRAI)_U_$P(BGPVALUE,"|||",2)_"|"_$S('BGPD3:"NOT ",1:"")_"Active on Immunization Register."
  1. I0141X ;
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27
  1. K BGPI1,BGPI2,BGPI3,BGPI4,BGPI5,BGPI6,BGPI7,BGPN28,BGPN29
  1. K BGPVALUE
  1. K BGPDTAP,BGPOPV,BGPMMR,BGPD,BGPT,BGPPER,BGPTET,BGPM,BGPMU,BGPME,BGPHIB,BGPHEP,BGPVAR
  1. Q
  1. I0142 ;EP - Childhood IZ
  1. ;
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSO=1,BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. D I14^BGP5D32
  1. I $G(BGPSTOP)=1 S BGPSKIP=1 D I0141X Q
  1. I BGPN91 S BGPSKIP=1 D I0142X Q ;up to date
  1. I 'BGPN91 S BGPISSV=$$TITLE(BGPGPRAI)_U_$P(BGPVALUE,"|||",2)_"|"_$S('BGPD3:"NOT ",1:"")_"Active on Immunization Register."
  1. I0142X ;
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27
  1. K BGPI1,BGPI2,BGPI3,BGPI4,BGPI5,BGPI6,BGPI7,BGPN28,BGPN29
  1. K BGPVALUE
  1. K BGPDTAP,BGPOPV,BGPMMR,BGPD,BGPT,BGPPER,BGPTET,BGPM,BGPMU,BGPME,BGPHIB,BGPHEP,BGPVAR
  1. Q
  1. I015 ;EP - PAP
  1. ;
  1. ;
  1. NEW BGPVALUE,BGPD,BGPND
  1. I $P(^DPT(DFN,0),U,2)'="F" S BGPSKIP=1 D I015X Q ;female only
  1. S BGPISSV="",BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPVALUE,BGPPAP,BGPI7,BGPI7DA,BGPI7DB
  1. S BGPI7DA=0,BGPI7DB=0,BGPN1=0,BGPN2=0
  1. S BGPI7=$$DEN7^BGP5D3(DFN,BGPAGEB,BGPAGEE,BGPSEX,BGPEDATE)
  1. I BGPACTUP,BGPI7 S BGPI7DA=1
  1. I BGPACTCL,BGPI7 S BGPI7DB=1
  1. S BGPI7DC=0 I BGPI7,BGPAGEB>23,BGPAGEE<65 S BGPI7DC=1
  1. I 'BGPI7DC S BGPSKIP=1 D I015X Q ;not in either denom
  1. S BGPVALUE=$$PAP^BGP5D3(DFN,BGPEDATE,$$AGE^AUPNPAT(DFN),1)
  1. S BGPREF="" ;no refusals
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last PAP: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) D I015X Q ; as of "_$$DATE^BGP5UTL(DT) Q
  1. S BGPD=$P(BGPVALUE,U,2)
  1. S BGPND=$S(BGPD="":DT,1:$$FMADD^XLFDT(BGPD,(3*365)))
  1. I BGPND]"",BGPND'>BGPED S BGPIN=1
  1. I 'BGPIN S BGPSKIP=1 D I015X Q ;not due, don't display
  1. I BGPVALUE="",BGPREF]"" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Pap Smear: Never - patient refused on "_$$DATE^BGP5UTL($P(BGPVALUE,U,2))_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) D I015X Q
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Pap: "_$$DATE^BGP5UTL(BGPD)_"|Overdue as of: "_BGPND_$S(BGPREF]"":"|Patient refused a Pap Smear on "_$$DATE^BGP5UTL($P(BGPREF,U,2)),1:"")
  1. I015X ;
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPVALUE,BGPPAP,BGPI7,BGPI7DA,BGPI7DB,BGPREF
  1. K BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27
  1. Q
  1. I016 ;EP -MAMMOGRAM
  1. ;
  1. NEW BGPVALUE,BGPD,BGPND
  1. S BGPISSV="",BGPIN="",BGPIN1=""
  1. K BGPISSV
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPVALUE,BGPMAM,BGPI8,BGPI81,BGPI8DA,BGPI8DB,BGPI8DC,BGPI8DD,BGPI8DE
  1. S BGPI8=$$DEN8^BGP5D4(DFN,BGPAGEB,BGPAGEE,BGPSEX,BGPEDATE)
  1. I 'BGPI8 S BGPSKIP=1 D I016X Q
  1. S BGPVALUE=$$MAM^BGP5D4(DFN,BGPEDATE,15,1)
  1. S BGPREF=""
  1. I BGPVALUE="" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Mammogram: Never|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) D I016X Q ; as of "_$$DATE^BGP5UTL(DT) Q
  1. S BGPD=$P(BGPVALUE,U,2)
  1. S BGPND=$S(BGPD="":DT,1:$$FMADD^XLFDT(BGPD,(2*365)))
  1. I BGPND]"",BGPND'>BGPED S BGPIN=1
  1. I 'BGPIN S BGPSKIP=1 D I015X Q ;not due, don't display
  1. I BGPVALUE="",BGPREF]"" S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Pap Smear: Never - patient refused on "_$$DATE^BGP5UTL($P(BGPVALUE,U,2))_"|Overdue as of: "_$$DATE^BGP5UTL(BGPBD) D I016X Q
  1. S BGPND=$$DATE^BGP5UTL(BGPND)
  1. S BGPISSV=$$TITLE(BGPGPRAI)_U_"Last Mammogram: "_$$DATE^BGP5UTL(BGPD)_"|Overdue as of: "_BGPND_$S(BGPREF]"":"|Patient refused a Mammogram on "_$$DATE^BGP5UTL($P(BGPREF,U,2)),1:"")
  1. ;
  1. I016X ;
  1. K BGPN1,BGPN2,BGPN3,BGPN4,BGPVALUE,BGPPAP,BGPI7,BGPI7DA,BGPI7DB
  1. K BGPN5,BGPN6,BGPN7,BGPN8,BGPN9,BGPD1,BGPD2,BGPD3,BGPD4,BGPD5,BGPD6,BGPD7,BGPD8,BGPD9,BGPN10,BGPN11,BGPN12,BGPN13,BGPN14,BGPN15,BGPN16,BGPN17,BGPN18,BGPN19,BGPN20,BGPN21,BGPN22,BGPN23,BGPN24,BGPN25,BGPN26,BGPN27
  1. Q
  1. I031A ;
  1. Q
  1. TITLE(I) ;
  1. Q $P($G(^BGPINDKC(I,12)),U,9)
  1. TITLE2(I) ;EP
  1. Q $P($G(^BGPINDKC(I,12)),U,16)