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

APCLAPI6.m

Go to the documentation of this file.
  1. APCLAPI6 ; IHS/CMI/LAB - visit data ;
  1. ;;2.0;IHS PCC SUITE;**5**;MAY 14, 2009
  1. ;IHS/TUCSON/LAB - added G parameter to provider call
  1. ;
  1. ;
  1. ;
  1. LASTPLR(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last PROBLEM LIST REVIEWED
  1. ; Return the last recorded PROBLEM LIST REVIEWED FROM V UPDATED/REVIEWED:
  1. ; .04 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","PLR",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. E ;
  1. I $P(APCLVAL,U,1)'<$P(APCLLAST,U,1) S APCLLAST=APCLVAL
  1. Q
  1. LASTPLU(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last PROBLEM LIST UPDATE
  1. ; Return the last recorded PROBLEM LIST UPDATED FROM V UPDATED/REVIEWED:
  1. ; .11 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","PLU",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. LASTNAP(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last NO ACTIVE PROBLEMS
  1. ; Return the last recorded NO ACTIVE PROBLEMS FROM V UPDATED/REVIEWED:
  1. ; .09 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","NAP",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. UPREV(V,I) ;EP - IS UPDATE/REVIEWED I ON VISIT V?
  1. I '$G(V) Q ""
  1. I $G(I)="" Q ""
  1. NEW X,Y,Z
  1. S Z=0
  1. S Y=$O(^AUTTCRA("C",I,0))
  1. I Y="" Q ""
  1. S X=0 F S X=$O(^AUPNVRUP("AD",V,X)) Q:X'=+X D
  1. .Q:$P($G(^AUPNVRUP(X,2)),U,1) ;error
  1. .Q:'$D(^AUPNVRUP(X,0))
  1. .Q:$P(^AUPNVRUP(X,0),U,1)'=Y
  1. .S Z=1
  1. Q Z
  1. PRREV ;EP = set
  1. NEW X,Y,Z
  1. S Z=0
  1. S Y=$O(^AUTTCRA("C",APCLVAL,0))
  1. I Y="" Q ""
  1. S X=0 F S X=$O(^AUPNVRUP("AD",APCLVIEN,X)) Q:X'=+X D
  1. .Q:$P($G(^AUPNVRUP(X,2)),U,1) ;error
  1. .Q:'$D(^AUPNVRUP(X,0))
  1. .Q:$P(^AUPNVRUP(X,0),U,1)'=Y
  1. .S APCLPCNT=APCLPCNT+1,APCLPRNM(APCLPCNT)=$$VAL^XBDIQ1(9000010.54,X,.01)
  1. .Q
  1. Q
  1. UPREVP ;EP - IS UPDATE/REVIEWED I ON VISIT V?
  1. NEW Y,Z
  1. S Z=0
  1. S Y=$O(^AUTTCRA("C",APCLVAL,0))
  1. I Y="" Q ""
  1. S X=0 F S X=$O(^AUPNVRUP("AD",APCLVIEN,X)) Q:X'=+X D
  1. .Q:$P($G(^AUPNVRUP(X,2)),U,1) ;error
  1. .Q:'$D(^AUPNVRUP(X,0))
  1. .Q:$P(^AUPNVRUP(X,0),U,1)'=Y
  1. .S Z=$P($G(^AUPNVRUP(X,12)),U,4) I Z S X(Z)=""
  1. Q
  1. UPREVPP ;EP = set
  1. NEW X,Y,Z
  1. S Z=0
  1. S Y=$O(^AUTTCRA("C",APCLVAL,0))
  1. I Y="" Q ""
  1. S X=0 F S X=$O(^AUPNVRUP("AD",APCLVIEN,X)) Q:X'=+X D
  1. .Q:$P($G(^AUPNVRUP(X,2)),U,1) ;error
  1. .Q:'$D(^AUPNVRUP(X,0))
  1. .Q:$P(^AUPNVRUP(X,0),U,1)'=Y
  1. .Q:$P($G(^AUPNVRUP(X,12)),U,4)=""
  1. .S APCLPCNT=APCLPCNT+1,APCLPRNM(APCLPCNT)=$$VAL^XBDIQ1(9000010.54,X,1204)
  1. .Q
  1. Q
  1. ;
  1. LASTALR(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last ALLERGY LIST REVIEWED
  1. ; Return the last recorded ALLERGY LIST REVIEWED FROM V UPDATED/REVIEWED:
  1. ; .04 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","ALR",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. LASTMLR(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last MEDICATION LIST REVIEWED
  1. ; Return the last recorded MEDICATION LIST REVIEWED FROM V UPDATED/REVIEWED:
  1. ; .04 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","MLR",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. LASTMLU(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last PROBLEM LIST UPDATE
  1. ; Return the last recorded PROBLEM LIST UPDATED FROM V UPDATED/REVIEWED:
  1. ; .11 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","MLU",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. LASTNAM(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last NO ACTIVE PROBLEMS
  1. ; Return the last recorded NO ACTIVE PROBLEMS FROM V UPDATED/REVIEWED:
  1. ; .09 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","NAM",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. LASTALU(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last ALLERGY UPDATE
  1. ; Return the last recorded ALLERGY UPDATED FROM V UPDATED/REVIEWED:
  1. ; .11 OF V UPDATED/REVIEWED is set to 1
  1. ;
  1. ; Input:
  1. ; APCLPDFN - Patient DFN
  1. ; APCLBD - beginning date to begin search for value - if blank, default is DOB
  1. ; APCLED - ending date of search - if blank, default is DT
  1. ; APCLFORM - APCLFORM returned: D - return date only - example 3070801
  1. ; A - return value:
  1. ; date^text of item found^provider who documented^visit ien^File found in^ien of file found in
  1. ; Default if blank is D
  1. ; Output:
  1. ; If APCLFORM is blank or APCLFORM is D returns internal fileman date if one found otherwise returns null
  1. ; If APCLFORM is A returns the string:
  1. ; date^text of item found^PROVIDER^visit ien^File found in^ien of file found in
  1. ;
  1. I $G(APCLPDFN)="" Q ""
  1. I $G(APCLBD)="" S APCLBD=$$DOB^AUPNPAT(APCLPDFN)
  1. I $G(APCLED)="" S APCLED=DT
  1. I $G(APCLFORM)="" S APCLFORM="D"
  1. NEW APCLLAST,APCLVAL,APCLX,R,X,Y,V,E,D,G,ED,BD
  1. S BD=9999999-APCLBD
  1. S ED=9999999-APCLED
  1. S APCLLAST=""
  1. S V=$O(^AUTTCRA("C","ALU",0))
  1. I 'V Q ""
  1. S D=ED-1,D=D_".999999" F S D=$O(^AUPNVRUP("AA",APCLPDFN,V,D)) Q:D'=+D!($P(D,".")>BD) D
  1. .S X=0 F S X=$O(^AUPNVRUP("AA",APCLPDFN,V,D,X)) Q:X'=+X D
  1. ..Q:'$D(^AUPNVRUP(X,0))
  1. ..Q:$P($G(^AUPNVRUP(X,2)),U,1)
  1. ..S APCLVAL=$P($P(^AUPNVRUP(X,12),U),".")_U_$$VAL^XBDIQ1(9000010.54,X,.01)_U_$P($G(^AUPNVRUP(X,12)),U,4)_U_$P(^AUPNVRUP(X,0),U,3)_U_9000010.54_U_X
  1. ..D E
  1. I APCLFORM="D" Q $P(APCLLAST,U)
  1. Q APCLLAST
  1. ;
  1. LASTNAA(APCLPDFN,APCLBD,APCLED,APCLFORM) ;PEP - date of last NO ACTIVE ALLERGIES
  1. G LASTNAA^APCLAPI7