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

BGP8PC4.m

Go to the documentation of this file.
  1. BGP8PC4 ; IHS/CMI/LAB - measure I2 ; 02 Feb 2018 11:25 AM
  1. ;;18.1;IHS CLINICAL REPORTING;;MAY 25, 2018;Build 66
  1. ;
  1. FLU ;EP
  1. S (BGPN1,BGPD1)=0
  1. S BGPDV="",BGPDV1=""
  1. ;GET THE PATIENT'S 6 MONTH BIRTHDAY
  1. S A=$$M6BD(DFN)
  1. I A>BGPEDATE S BGPSTOP=1 Q ;turned 6 months after end date of report period
  1. ;
  1. S BGPDV=$$ENC4(DFN,BGPBDATE,BGPEDATE) I BGPDV="" S BGPSTOP=1 Q ;no visit
  1. ;did they have item #2 92 days prior to bdate through 89 days after bdate
  1. S BGPDV1=$$ENC42(DFN,$$FMADD^XLFDT(BGPBDATE,-92),$$FMADD^XLFDT(BGPBDATE,89)) I BGPDV1="" S BGPSTOP=1 Q
  1. ;
  1. ;now what about exclusions?
  1. I $$FLUREF(DFN,$$FMADD^XLFDT(BGPBDATE,-153),$$FMADD^XLFDT(BGPBDATE,89)) S BGPSTOP=1 Q ;refused
  1. I $$FLUALG(DFN,$$DOB^AUPNPAT(DFN),$$FMADD^XLFDT(BGPBDATE,89),BGPEDATE) S BGPSTOP=1 Q ;ALLERGY
  1. ;
  1. S BGPD1=1
  1. S X=$$FLUVAC(DFN,$$FMADD^XLFDT(BGPBDATE,-153),$$FMADD^XLFDT(BGPBDATE,89))
  1. I $E(X)=1 S BGPN1=1
  1. S BGPVALUE=""
  1. S BGPVALUE="ENC "_$P(BGPDV,U,2)_"|||" ;hit denominator
  1. I BGPN1 S BGPVALUE=BGPVALUE_"*** "_$P(X,U,2)_" "_$P(X,U,3)
  1. K V,BGPDV
  1. Q
  1. FLUALG(P,BDATE,BDATE89,EDATE) ;
  1. NEW X,Y,Z,A,B,BGPT,BGPZ,TCVX,TCPT,T,I,D,S,G,ID,F
  1. ;P is dfn
  1. ;a is taxonomy name
  1. I $G(P)="" Q ""
  1. NEW T
  1. S T=$O(^ATXAX("B","BGP IPC EGG ALLERGY DXS",0))
  1. I 'T Q "" ;bad taxonomy??
  1. NEW X,Y,I,D
  1. S (X,Y,I)=0
  1. F S X=$O(^AUPNPROB("AC",P,X)) Q:X'=+X!(I) D
  1. .Q:'$D(^AUPNPROB(X,0))
  1. .I $P(^AUPNPROB(X,0),U,12)="D" Q ;S D=$P($$VALI^XBDIQ1(9000011,X,2.02),".") I D'>BDATE89
  1. .Q:$P(^AUPNPROB(X,0),U,12)="I"
  1. .S Y=$P(^AUPNPROB(X,0),U)
  1. .I $P(^AUPNPROB(X,0),U,13),$P(^AUPNPROB(X,0),U,13)>BDATE89 Q ;if there is a doo and it is after report period skip
  1. .I $P(^AUPNPROB(X,0),U,13)="",$P(^AUPNPROB(X,0),U,8)>BDATE89 Q ;entered after report period, skip
  1. .I $$ICD^BGP8UTL2(Y,T,9) S I=1 Q
  1. .S S=$$VAL^XBDIQ1(9000011,X,80001)
  1. .I S]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC EGG ALLERGY",S)) S I=1 Q
  1. .I S=294647003 S I=1 Q
  1. .I S=294648008 S I=1 Q
  1. .I S=294649000 S I=1 Q
  1. .I S=293112000 S I=1 Q
  1. .I S=293113005 S I=1 Q
  1. .I S=390796006 S I=1 Q
  1. .I S=420113004 S I=1 Q
  1. .Q
  1. I I Q 1
  1. S BGPT=$O(^ATXAX("B","BGP FLU IZ CVX CODES",0))
  1. S BGPZ=0,X="" F S BGPZ=$O(^ATXAX(BGPT,21,"B",BGPZ)) Q:BGPZ=""!(X]"") S X=$$FLUIPCON(P,BGPZ,$$DOB^AUPNPAT(P),BDATE89)
  1. I X]"" Q 1
  1. ;NMI REFUSALS
  1. S TCVX=$O(^ATXAX("B","BGP IPC INFLUENZA CVX CODES",0))
  1. S TCPT=$O(^ATXAX("B","BGP IPC INFLUENZA CPT CODES",0))
  1. S F=0,G="" F S F=$O(^AUPNPREF("AA",P,F)) Q:F'=+F!(G) D
  1. .S I="" F S I=$O(^AUPNPREF("AA",P,F,I)) Q:I=""!(G) D
  1. ..;check all file vs item combos
  1. ..I F=9002318.4,I'=315640000 Q ;IF IT'S SNOMED, MUST BE THAT ONE
  1. ..I F=9999999.14 S C=$P($G(^AUTTIMM(I,0)),U,3) Q:'$D(^ATXAX(TCVX,21,"B",C)) ;immunization but not a flu one
  1. ..I F=81 I '$$ICD^BGP8UTL2(I,TCPT,1) Q ;cpt but not a flu cpt
  1. ..S ID=0 F S ID=$O(^AUPNPREF("AA",P,F,I,ID)) Q:ID=""!(G) D
  1. ...S D=9999999-ID
  1. ...Q:D<BDATE
  1. ...Q:D>BDATE89
  1. ...S X=0 F S X=$O(^AUPNPREF("AA",P,F,I,ID,X)) Q:X'=+X!(G) D
  1. ....;get REASON AND IT MUST BE NMI
  1. ....S R=$$VALI^XBDIQ1(9000022,X,.07) ; REASON NOT DONE
  1. ....I R="N" S G=1 Q
  1. I G Q G
  1. ;NOW VPOV FOR ALLERY TO EGGS DX OR SNOMED
  1. K BGPT
  1. S Y="BGPT("
  1. S X=P_"^FIRST DX [BGP IPC EGG ALLERGY;DURING "_$$DOB^AUPNPAT(P)_"-"_BDATE89 S E=$$START1^APCLDF(X,Y)
  1. I $D(BGPT(1)) Q 1
  1. ;NOW SNOMED USING ASNC
  1. S T="PXRM BGP IPC EGG ALLERGY"
  1. S G=""
  1. S S=0 F S S=$O(^XTMP("BGPSNOMEDSUBSET",$J,T,S)) Q:S=""!(G) D
  1. .Q:'$D(^AUPNVPOV("ASNC",P,S))
  1. .S D=0 F S D=$O(^AUPNVPOV("ASNC",P,S,D)) Q:D=""!(G) D
  1. ..S Y=9999999-D
  1. ..Q:Y<BDATE
  1. ..Q:Y>BDATE89
  1. ..S G=1
  1. I G Q 1
  1. Q ""
  1. ;
  1. FLUREF(P,BDATE,EDATE) ;
  1. NEW A,B,C,X,Y,Z,F,D,I,ID,G,C,TCVX,TCPT,R,BGPT,BGPZ
  1. S BGPT=$O(^ATXAX("B","BGP IPC INFLUENZA CVX CODES",0))
  1. S BGPZ=0,X="" F S BGPZ=$O(^ATXAX(BGPT,21,"B",BGPZ)) Q:BGPZ=""!(X]"") S X=$$FLUPREF(P,BGPZ,BDATE,EDATE)
  1. I X]"" Q 1
  1. ;CHECK REFUSAL FILE FIRST FOR FLU CVX OR FLU CPT AND MEDICAL REASON NOT DONE SNOMED OR PATIENT REASON NOT DONE SNOMED OR SYSTEM REASON NOT DONE SNOMED
  1. ;ITEM 1-2, 1-3, 1-4
  1. S TCVX=$O(^ATXAX("B","BGP IPC INFLUENZA CVX CODES",0))
  1. S TCPT=$O(^ATXAX("B","BGP IPC INFLUENZA CPT CODES",0))
  1. S F=0,G="" F S F=$O(^AUPNPREF("AA",P,F)) Q:F'=+F!(G) D
  1. .S I="" F S I=$O(^AUPNPREF("AA",P,F,I)) Q:I=""!(G) D
  1. ..;check all file vs item combos
  1. ..I F=9002318.4,I'=315640000 Q ;IF IT'S SNOMED, MUST BE THAT ONE
  1. ..I F=9999999.14 S C=$P($G(^AUTTIMM(I,0)),U,3) Q:'$D(^ATXAX(TCVX,21,"B",C)) ;immunization but not a flu one
  1. ..I F=81 I '$$ICD^BGP8UTL2(I,TCPT,1) Q ;cpt but not a flu cpt
  1. ..S ID=0 F S ID=$O(^AUPNPREF("AA",P,F,I,ID)) Q:ID=""!(G) D
  1. ...S D=9999999-ID
  1. ...Q:D<BDATE
  1. ...Q:D>EDATE
  1. ...S X=0 F S X=$O(^AUPNPREF("AA",P,F,I,ID,X)) Q:X'=+X!(G) D
  1. ....;get snomed reason not done and it must be in one of the subsets
  1. ....S R=$$VALI^XBDIQ1(9000022,X,1.01) ;SNOMED REASON NOT DONE
  1. ....I R]"",R="443390004" S G=1 Q
  1. ....I R]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ MED",R)) S G=1 Q
  1. ....I R]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ PAT",R)) S G=1 Q
  1. ....I R]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ SYS",R)) S G=1 Q
  1. I G Q G
  1. ;IS 315640000 ON THE PROBLEM LIST WITH DOO AND/OR DATE ADDED FROM BDATE TO EDATE
  1. S X=0,G=0 F S X=$O(^AUPNPROB("AC",P,X)) Q:X'=+X!(G=1) D
  1. .Q:'$D(^AUPNPROB(X,0))
  1. .I $P(^AUPNPROB(X,0),U,12)="D" Q
  1. .S S=$$VAL^XBDIQ1(9000011,X,80001)
  1. .Q:S'=315640000
  1. .S D=$P(^AUPNPROB(X,0),U,13)
  1. .I 'D S D=$P(^AUPNPROB(X,0),U,8)
  1. .Q:D<BDATE
  1. .Q:D>EDATE
  1. .S G=1
  1. .Q
  1. I G Q G
  1. ;what about V POVs
  1. S S=315640000
  1. S D=0 F S D=$O(^AUPNVPOV("ASNC",P,S,D)) Q:D=""!(G) D
  1. .S Y=9999999-D
  1. .Q:Y<BDATE
  1. .Q:Y>EDATE
  1. .S G=1
  1. I G Q G
  1. Q ""
  1. M6BD(P) ;
  1. NEW B,M,D,Y
  1. S B=$$DOB^AUPNPAT(P) ;DOB
  1. S M=+$E(B,4,5)
  1. S D=$E(B,6,7)
  1. S Y=$E(B,1,3)
  1. S M=$S(M<7:M+6,1:M-6) S:$L(M)=1 M="0"_M
  1. S Y=$S(M<7:Y+1,1:Y)
  1. Q Y_M_D
  1. ENC4(P,BDATE,EDATE) ;EP - have encounter per CMS122v6
  1. NEW X,Y,Z,G,BGPV,D,A,B
  1. ;Let's check all Visits, looping through once
  1. S G="" ;return variable
  1. ;get all visits in date range in BGPV
  1. D ALLV^APCLAPIU(P,BDATE,EDATE,"BGPV")
  1. ;now loop through and check Face to Face and .17 in visit and check v cpts attached to the visit
  1. S X=0 F S X=$O(BGPV(X)) Q:X'=+X!(G) S V=$P(BGPV(X),U,5) D
  1. .Q:'$P(^AUPNVSIT(V,0),U,9) ;no dependent entries
  1. .Q:$P(^AUPNVSIT(V,0),U,11) ;deleted
  1. .S D=$$VD^APCLV(V)
  1. .S Y=$$FTOF^BGP8PC2(V) I Y]"" S G=1_U_$$DATE^BGP8UTL(D)_" FTOF: "_Y Q ;ITEM 18
  1. .S Y=$$PROVINT(V) I Y]"" S G=1_U_$$DATE^BGP8UTL(D)_" PAT/PROV INT: "_Y Q ;ITEM 5
  1. .;is .17 a cpt we want?
  1. .S Y=$$VALI^XBDIQ1(9000010,V,.17)
  1. .I Y,$$OFFCPT4(Y) S G=1_U_$$DATE^BGP8UTL(D)_" CPT: "_$P($$CPT^ICPTCOD(Y),U,2) Q
  1. .;now check all V CPTs
  1. .S Z=0 F S Z=$O(^AUPNVCPT("AD",V,Z)) Q:Z'=+Z!(G) D
  1. ..S Y=$P($G(^AUPNVCPT(Z,0)),U,1)
  1. ..I Y,$$OFFCPT4(Y) S G=1_U_$$DATE^BGP8UTL(D)_" CPT: "_$P($$CPT^ICPTCOD(Y),U,2) Q
  1. Q G
  1. ENC42(P,BDATE,EDATE) ;EP - have encounter per CMS147
  1. NEW X,Y,Z,G,BGPV,D,A,B
  1. ;Let's check all Visits, looping through once
  1. S G="" ;return variable
  1. ;get all visits in date range in BGPV
  1. D ALLV^APCLAPIU(P,BDATE,EDATE,"BGPV")
  1. ;now loop through and check Face to Face and .17 in visit and check v cpts attached to the visit
  1. S X=0 F S X=$O(BGPV(X)) Q:X'=+X!(G) S V=$P(BGPV(X),U,5) D
  1. .Q:'$P(^AUPNVSIT(V,0),U,9) ;no dependent entries
  1. .Q:$P(^AUPNVSIT(V,0),U,11) ;deleted
  1. .S D=$$VD^APCLV(V)
  1. .S Y=$$VALI^XBDIQ1(9000010,V,.17)
  1. .I Y,$$FLUCPT(Y) S G=1_U_$$DATE^BGP8UTL(D)_" CPT: "_$P($$CPT^ICPTCOD(Y),U,2) Q
  1. .;now check all V CPTs
  1. .S Z=0 F S Z=$O(^AUPNVCPT("AD",V,Z)) Q:Z'=+Z!(G) D
  1. ..S Y=$P($G(^AUPNVCPT(Z,0)),U,1)
  1. ..I Y,$$FLUCPT(Y) S G=1_U_$$DATE^BGP8UTL(D)_" CPT: "_$P($$CPT^ICPTCOD(Y),U,2) Q
  1. ..;CHECK VISIT 26 NODE FOR SNOMED
  1. .S A=0 F S A=$O(^AUPNVSIT(V,26,"B",A)) Q:A=""!(G]"") D
  1. ..I $D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC FLU ENCOUNTER",A)) S G=1_U_$$DATE^BGP8UTL(D)_" SNOMED: "_A Q
  1. .;CHECK VISIT 28 NODE FOR SNOMED
  1. .S A=0 F S A=$O(^AUPNVSIT(V,28,"B",A)) Q:A=""!(G]"") D
  1. ..I $D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC FLU ENCOUNTER",A)) S G=1_U_$$DATE^BGP8UTL(D)_" SNOMED: "_A Q
  1. .;CHECK POV'S FOR SNOMED
  1. .S Z=0 F S Z=$O(^AUPNVPOV("AD",V,Z)) Q:Z'=+Z!(G]"") D
  1. ..S A=$P($G(^AUPNVPOV(Z,11)),U,1)
  1. ..I A]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC FLU ENCOUNTER",A)) S G=1_U_$$DATE^BGP8UTL(D)_" SNOMED: "_A
  1. Q G
  1. PROVINT(V) ;EP
  1. NEW A,B,C
  1. S A=0,B=""
  1. F S A=$O(^AUPNVSIT(V,28,"B",A)) Q:A=""!(B]"") D
  1. .I $D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC PAT PROV INT",A)) S B=A
  1. Q B
  1. OFFCPT4(C) ;EP
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC OFFICE VISIT CPTS",0)),1) Q 1 ;ITEM 1
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC OUTPT CONSULT CPTS",0)),1) Q 1 ;ITEM 2
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC LT RES FACILITY CPTS",0)),1) Q 1 ;ITEM 3
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC HOMEHEALTH VISIT CPTS",0)),1) Q 1 ;ITEM 4
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE IOV 0-17 CPTS",0)),1) Q 1 ;ITEM 6
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE IOV >=18 CPTS",0)),1) Q 1 ;ITEM 7
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE IND COUN CPTS",0)),1) Q 1 ;ITEM 8
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE GRP COUN CPTS",0)),1) Q 1 ;ITEM 9
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE OTHER CPTS",0)),1) Q 1 ;ITEM 10
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC DSCH SRV NURS FAC CPTS",0)),1) Q 1 ;ITEM 11
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC NURS FAC VISIT CPTS",0)),1) Q 1 ;ITEM 12
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC ANNUAL WELLNESS CPTS",0)),1) Q 1 ;ITEM 13
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PERI DIALYSIS CPTS",0)),1) Q 1 ;ITEM 14
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC HEMO DIALYSIS CPTS",0)),1) Q 1 ;ITEM 15
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE EOV 0-17 CPTS",0)),1) Q 1 ;ITEM 16
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PREVCARE EOV >=18 CPTS",0)),1) Q 1 ;ITEM 17
  1. Q ""
  1. FLUCPT(C) ;EP
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC FLU ENCOUNTER CPTS",0)),1) Q 1
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC PERI DIALYSIS CPTS",0)),1) Q 1
  1. I $$ICD^ATXAPI(C,$O(^ATXAX("B","BGP IPC HEMO DIALYSIS CPTS",0)),1) Q 1
  1. Q ""
  1. FLUIPCON(P,C,BD,ED) ;EP
  1. NEW X,G,Y,R,D
  1. S X=0,G="",Y=$O(^AUTTIMM("C",C,0)) I Y F S X=$O(^BIPC("AC",P,Y,X)) Q:X'=+X!(G) D
  1. .S R=$P(^BIPC(X,0),U,3)
  1. .Q:R=""
  1. .Q:'$D(^BICONT(R,0))
  1. .S D=$P(^BIPC(X,0),U,4)
  1. .Q:D=""
  1. .Q:$P(^BIPC(X,0),U,4)<BD
  1. .Q:$P(^BIPC(X,0),U,4)>ED
  1. .I $P(^BICONT(R,0),U,1)="Egg Allergy" S G=D_U_"Contra: Egg Allergy"
  1. .I $P(^BICONT(R,0),U,1)="Anaphylaxis" S G=D_U_"Contra Anaphylaxis"
  1. Q G
  1. FLUPREF(P,C,BD,ED) ;EP
  1. NEW X,G,Y,R,D,A
  1. S X=0,G="",Y=$O(^AUTTIMM("C",C,0)) I Y F S X=$O(^BIPC("AC",P,Y,X)) Q:X'=+X!(G) D
  1. .S R=$P(^BIPC(X,0),U,3)
  1. .Q:R=""
  1. .Q:'$D(^BICONT(R,0))
  1. .S D=$P(^BIPC(X,0),U,4)
  1. .Q:D=""
  1. .Q:$P(^BIPC(X,0),U,4)<BD
  1. .Q:$P(^BIPC(X,0),U,4)>ED
  1. .I $P(^BICONT(R,0),U,1)="Patient Refusal" S G=D_U_"Patient Refusal 315640000" Q
  1. .I $P(^BICONT(R,0),U,1)="Parent Refusal" S G=D_U_"Parent Refusal 315640000" Q
  1. .S A="" F S A=$O(^BIPC(X,1,"B",A)) Q:A=""!(G) D
  1. ..I A=315640000 S G=D_U_"Imm Pkg Refusal 315640000" Q
  1. ..I A]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ MED",A)) S G=D_U_"Imm Pkg SNOMED "_A Q
  1. ..I A]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ PAT",A)) S G=D_U_"Imm Pkg SNOMED "_A Q
  1. ..I A]"",$D(^XTMP("BGPSNOMEDSUBSET",$J,"PXRM BGP IPC NO IZ SYS",A)) S G=D_U_"Imm Pkg SNOMED "_A Q
  1. Q G
  1. FLUVAC(P,BDATE,EDATE) ;
  1. NEW BGPG,BGPLFLU,X,E,%,I,T,J,V,G,D,R,CVX,BGPT,TCVX,TCPT
  1. S TCVX=$O(^ATXAX("B","BGP IPC INFLUENZA CVX CODES",0))
  1. S TCPT=$O(^ATXAX("B","BGP IPC INFLUENZA CPT CODES",0))
  1. K BGPG
  1. S BGPLFLU=""
  1. S X=0 F S X=$O(^AUPNVIMM("AC",P,X)) Q:X'=+X D
  1. .S I=$P($G(^AUPNVIMM(X,0)),U,1)
  1. .I 'I Q
  1. .S CVX=$P($G(^AUTTIMM(I,0)),U,3)
  1. .Q:CVX=""
  1. .I '$D(^ATXAX(TCVX,21,"B",CVX)) Q ;NOT IN TAXONOMY
  1. .S D=$$VD^APCLV($P(^AUPNVIMM(X,0),U,3))
  1. .Q:D<BDATE
  1. .Q:D>EDATE
  1. .S BGPLFLU=1_U_$$DATE^BGP8UTL(D)_U_"Imm "_CVX
  1. I BGPLFLU Q BGPLFLU
  1. ;CPT
  1. I TCPT D
  1. .S X=$$CPT^BGP8DU(P,BDATE,EDATE,TCPT,5) I X]"" Q
  1. .S X=$$TRAN^BGP8DU(P,BDATE,EDATE,TCPT,5)
  1. I X]"" Q 1_U_$$DATE^BGP8UTL($P(X,U,1))_U_"CPT: "_$P(X,U,2)
  1. ;NOW CHECK PROBLEM LIST AND V POV FOR DURING BDATE AND EDATE
  1. S X=0,G=0,I="" F S X=$O(^AUPNPROB("AC",P,X)) Q:X'=+X!(G=1) D
  1. .S I=""
  1. .Q:'$D(^AUPNPROB(X,0))
  1. .I $P(^AUPNPROB(X,0),U,12)="D" Q
  1. .S S=$$VAL^XBDIQ1(9000011,X,80001)
  1. .I S=185900003 S I=1
  1. .I S=185901004 S I=1
  1. .I S=185902006 S I=1
  1. .I S=416928007 S I=1
  1. .Q:'I
  1. .S D=$P(^AUPNPROB(X,0),U,13)
  1. .I 'D S D=$P(^AUPNPROB(X,0),U,8)
  1. .Q:D<BDATE
  1. .Q:D>EDATE
  1. .S G=1_U_$$DATE^BGP8UTL(D)_U_"PL: "_S
  1. .Q
  1. I G Q G
  1. ;what about V POVs
  1. S G=""
  1. F S=185900003,185901004,185902006,416928007 D Q:G
  1. .S D=0 F S D=$O(^AUPNVPOV("ASNC",P,S,D)) Q:D=""!(G) D
  1. ..S Y=9999999-D
  1. ..Q:Y<BDATE
  1. ..Q:Y>EDATE
  1. ..S G=1_U_$$DATE^BGP8UTL(Y)_U_"POV: "_S
  1. I G Q G
  1. Q ""