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

AUPNPAT2.m

Go to the documentation of this file.
  1. AUPNPAT2 ; IHS/CMI/LAB - PATIENT ELIGIBILITY EXTRINSICS ; [ 02/14/2005 11:00 AM ]
  1. ;;99.1;IHS DICTIONARIES (PATIENT);**4,8,9,10,15**;JUN 13, 2003;Build 9
  1. ;
  1. Q
  1. ;
  1. ;---------
  1. ; MCR: Input - P = DFN
  1. ; D = Date
  1. ; Output - 1 = Yes, patient is/was MCare eligible on date D.
  1. ; 0 = No, or unable.
  1. ;
  1. ; Examples: I $$MCR^AUPNPAT(DFN,2930701)
  1. ; S AGMCR=$$MCR^AUPNPAT(DFN,DT)
  1. ;
  1. MCR(P,D) ;EP - Is patient P medicare eligible on date D. 1 = yes, 0 = no.
  1. ; I = IEN in ^AUPNMCR multiple.
  1. I '$G(P) Q 0
  1. I '$G(D) Q 0
  1. NEW I,Y
  1. S Y=0,U="^"
  1. I '$D(^DPT(P,0)) G MCRX
  1. I $P(^DPT(P,0),U,19) G MCRX
  1. I '$D(^AUPNPAT(P,0)) G MCRX
  1. I '$D(^AUPNMCR(P,11)) G MCRX
  1. I $D(^DPT(P,.35)),$P(^(.35),U)]"",$P(^(.35),U)<D G MCRX
  1. S I=0
  1. F S I=$O(^AUPNMCR(P,11,I)) Q:I'=+I D
  1. . Q:$P(^AUPNMCR(P,11,I,0),U)>D
  1. . I $P(^AUPNMCR(P,11,I,0),U,2)]"",$P(^(0),U,2)<D Q
  1. . S Y=1
  1. .Q
  1. MCRX ;
  1. Q Y
  1. ;
  1. ;----------
  1. ; MCD: Input - P = DFN
  1. ; D = Date
  1. ; Output - 1 = Yes, patient is/was MCaid eligible on date D.
  1. ; 0 = No, or unable.
  1. ;
  1. ; Examples: I $$MCD^AUPNPAT(DFN,2930701)
  1. ; S AGMCD=$$MCD^AUPNPAT(DFN,DT)
  1. ;
  1. MCD(P,D) ;EP - Is patient P medicaid eligible on date D.
  1. ; I = IEN.
  1. ; J = Node 11 IEN in ^AUPNMCD.
  1. I '$G(P) Q 0
  1. I '$G(D) Q 0
  1. NEW I,J,Y
  1. S Y=0,U="^"
  1. I '$D(^DPT(P,0)) G MCDX
  1. I $P(^DPT(P,0),U,19) G MCDX
  1. I '$D(^AUPNPAT(P,0)) G MCDX
  1. I $D(^DPT(P,.35)),$P(^(.35),U)]"",$P(^(.35),U)<D G MCDX
  1. S I=0 F S I=$O(^AUPNMCD("B",P,I)) Q:I'=+I D
  1. .Q:'$D(^AUPNMCD(I,11))
  1. .S J=0 F S J=$O(^AUPNMCD(I,11,J)) Q:J'=+J D
  1. ..Q:J>D
  1. ..I $P(^AUPNMCD(I,11,J,0),U,2)]"",$P(^(0),U,2)<D Q
  1. ..S Y=1
  1. ..Q
  1. .Q
  1. ;
  1. MCDX ;
  1. Q Y
  1. ;
  1. ;----------
  1. ; MCDPN: Input - P = DFN
  1. ; D = Date
  1. ; F = Form for output of plan (Insurer) name.
  1. ; If F = "E", return external form, else pointer to INSURER file.
  1. ; Output - Literal = Cleartext name of insurer.
  1. ; Number = Pointer to INSURER file.
  1. ;
  1. ; Examples: I $$MCDPN^AUPNPAT(DFN,2930701)
  1. ; S AGMCDPN=$$MCDPN^AUPNPAT(DFN,DT,"E")
  1. ;
  1. MCDPN(P,D,F) ;EP - return medicaid plan name for patient P on date D in form F.
  1. ; I = IEN
  1. ; J = Node 11 IEN
  1. I '$G(P) Q ""
  1. I '$G(D) Q ""
  1. S F=$G(F)
  1. NEW I,J,Y
  1. S Y="",U="^"
  1. I '$D(^DPT(P,0)) G MCDPNX
  1. I $P(^DPT(P,0),U,19) G MCDPNX
  1. I '$D(^AUPNPAT(P,0)) G MCDPNX
  1. I $D(^DPT(P,.35)),$P(^(.35),U)]"",$P(^(.35),U)<D G MCDPNX
  1. S I=0
  1. F S I=$O(^AUPNMCD("B",P,I)) Q:I'=+I D
  1. . Q:'$D(^AUPNMCD(I,11))
  1. . S J=0
  1. . F S J=$O(^AUPNMCD(I,11,J)) Q:J'=+J D
  1. .. Q:J>D
  1. .. I $P(^AUPNMCD(I,11,J,0),U,2)]"",$P(^(0),U,2)<D Q
  1. .. S Y=$P(^AUPNMCD(I,0),U,10)
  1. .. I Y]"" S Y=$S(F="E":$P(^AUTNINS(Y,0),U),1:Y)
  1. ..Q
  1. .Q
  1. ;
  1. MCDPNX ;
  1. Q Y
  1. ;
  1. ;----------
  1. ; PI: Input - P = DFN
  1. ; D = Date
  1. ; Output - 1 = Yes, patient is/was PI eligible on date D.
  1. ; 0 = No, or unable.
  1. ;
  1. ; Examples: I $$PI^AUPNPAT(DFN,2930701)
  1. ; S AGPI=$$PI^AUPNPAT(DFN,DT)
  1. ;
  1. PI(P,D) ;EP - Is patient P private insurance eligible on date D. 1= yes, 0=no.
  1. ; I = IEN
  1. ; Y = 1:yes, 0:no
  1. ; X = Pointer to INSURER file.
  1. I '$G(P) Q 0
  1. I '$G(D) Q 0
  1. NEW I,Y,X
  1. S Y=0,U="^"
  1. I '$D(^DPT(P,0)) G PIX
  1. I $P(^DPT(P,0),U,19) G PIX
  1. I '$D(^AUPNPAT(P,0)) G PIX
  1. I '$D(^AUPNPRVT(P,11)) G PIX
  1. I $D(^DPT(P,.35)),$P(^(.35),U)]"",$P(^(.35),U)<D G PIX
  1. S I=0
  1. F S I=$O(^AUPNPRVT(P,11,I)) Q:I'=+I D
  1. . Q:$P(^AUPNPRVT(P,11,I,0),U)=""
  1. . S X=$P(^AUPNPRVT(P,11,I,0),U) Q:X=""
  1. . Q:$P(^AUTNINS(X,0),U)["AHCCCS"
  1. . Q:$P(^AUPNPRVT(P,11,I,0),U,6)>D
  1. . I $P(^AUPNPRVT(P,11,I,0),U,7)]"",$P(^(0),U,7)<D Q
  1. . S Y=1
  1. .Q
  1. PIX ;
  1. Q Y
  1. ;
  1. ;----------
  1. ; PIN: Input - P = DFN
  1. ; D = Date
  1. ; F = Form for output of plan (Insurer) name.
  1. ; If F = "E", return external form, else pointer to INSURER file.
  1. ; Output - Literal = Cleartext name of insurer.
  1. ; Number = Pointer to INSURER file.
  1. ;
  1. ; Examples: I $$PIN^AUPNPAT(DFN,2930701)
  1. ; S AGPIN=$$PIN^AUPNPAT(DFN,DT,"E")
  1. ;
  1. PIN(P,D,F) ;EP - return private insurer name for patient P on date D in form F
  1. ; I = IEN
  1. I '$G(P) Q 0
  1. I '$G(D) Q 0
  1. NEW I,Y,J
  1. S F=$G(F)
  1. S Y="",U="^",J=""
  1. I '$D(^DPT(P,0)) G PINX
  1. I $P(^DPT(P,0),U,19) G PINX
  1. I '$D(^AUPNPAT(P,0)) G PINX
  1. I '$D(^AUPNPRVT(P,11)) G PINX
  1. I $D(^DPT(P,.35)),$P(^(.35),U)]"",$P(^(.35),U)<D G PINX
  1. S I=0
  1. F S I=$O(^AUPNPRVT(P,11,I)) Q:I'=+I D
  1. . Q:$P(^AUPNPRVT(P,11,I,0),U)=""
  1. . S Y=$P(^AUPNPRVT(P,11,I,0),U)
  1. . I $P(^AUTNINS(Y,0),U)["AHCCCS" Q
  1. . I $P(^AUPNPRVT(P,11,I,0),U,6)>D Q
  1. . I $P(^AUPNPRVT(P,11,I,0),U,7)]"",$P(^(0),U,7)<D Q
  1. . ;AUPN*99.1*15 fix follows
  1. . S J=J_$S($L(J):";",1:"")_$S(F="E":$P(^AUTNINS(Y,0),U),1:Y)
  1. .Q
  1. PINX ;
  1. Q J
  1. ;
  1. ;Begin New Code;IHS/SET/GTH AUPN*99.1*8 10/04/2002
  1. RRE(P,D) ;EP - Does pt have Railroad insurance on date? 1 = yes, 0 = no.
  1. ; I = IEN in ^AUPNRRE multiple.
  1. I '$G(P) Q 0
  1. I '$G(D) Q 0
  1. NEW I,Y
  1. S Y=0,U="^"
  1. I '$D(^DPT(P,0)) Q 0
  1. I $P($G(^DPT(P,0)),U,19) Q 0
  1. I '$D(^AUPNPAT(P,0)) Q 0
  1. I '$D(^AUPNRRE(P,11)) Q 0
  1. I $D(^DPT(P,.35)),$P(^DPT(P,.35),U)]"",$P($G(^DPT(P,.35)),U)<D Q 0
  1. S I=0
  1. F S I=$O(^AUPNRRE(P,11,I)) Q:I'=+I D
  1. . Q:$P(^AUPNRRE(P,11,I,0),U)>D
  1. . I $P($G(^AUPNRRE(P,11,I,0)),U,2)]"",$P($G(^AUPNRRE(P,11,I,0)),U,2)<D Q
  1. . S Y=1
  1. .Q
  1. RREX ;
  1. Q Y
  1. ;
  1. ;End New Code;IHS/SET/GTH AUPN*99.1*8 10/04/2002