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

APCLP615.m

Go to the documentation of this file.
  1. APCLP615 ; IHS/CMI/LAB -IHS -CUMULATIVE REPORT ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;
  1. ;
  1. CUML ;EP
  1. K APCLCUML
  1. S APCLCUML(10)="Gender"
  1. S APCLCUML(20)="Age"
  1. S APCLCUML(25)="IFG"
  1. S APCLCUML(30)="IGT"
  1. S APCLCUML(31)="Metabolic Syndrome"
  1. S APCLCUML(32)="Other Abnormal Glucose (720.29)"
  1. S APCLCUML(40)="Weight Control (BMI) - does not add up to 100%"
  1. S APCLCUML(60)="Blood Pressure Control - based on mean of last 3 bp's"
  1. S APCLCUML(80)="Tobacco use"
  1. S APCLCUML(90)="DIABETES TREATMENT"
  1. S APCLCUML(100)="ANTI-PLATELET THERAPY"
  1. S APCLCUML(110)="ACE INHIBITOR (OR ARB) USE"
  1. S APCLCUML(115)="LIPID LOWERING AGENT USE"
  1. ;
  1. PROCESS ;
  1. S APCLPD=0 F S APCLPD=$O(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD)) Q:APCLPD'=+APCLPD D CUML1
  1. Q
  1. ;
  1. CUML1 ;
  1. GENDER ;
  1. ;gender APCLCUML(10)="Gender^total^females^males"
  1. S $P(APCLCUML(10),U,2)=$P(APCLCUML(10),U,2)+1
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,20))
  1. S P=$S($E(V)="F":3,$E(V)="M":4,1:5)
  1. S $P(APCLCUML(10),U,P)=$P(APCLCUML(10),U,P)+1
  1. AGE ;
  1. S V=$$AGE^AUPNPAT(APCLPD,APCLADAT)
  1. ;APCLCUML(20)="Age^total^<15^15-44^45-64^>65^unknown"
  1. S $P(APCLCUML(20),U,2)=$P(APCLCUML(20),U,2)+1
  1. S P=$S(V<15:3,V>14&(V<45):4,V>44&(V<65):5,V>64:6,1:7)
  1. S $P(APCLCUML(20),U,P)=$P(APCLCUML(20),U,P)+1
  1. IFG ;
  1. ;APCLCUML(25)="Total^YES^NO"
  1. S X=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,200))
  1. S $P(APCLCUML(25),U,2)=$P(APCLCUML(25),U,2)+1
  1. S P=$S(X="Yes":3,1:4)
  1. S $P(APCLCUML(25),U,P)=$P(APCLCUML(25),U,P)+1
  1. IGT ;
  1. ;APCLCUML(30)="Total^YES^NO"
  1. S X=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,210))
  1. S $P(APCLCUML(30),U,2)=$P(APCLCUML(30),U,2)+1
  1. S P=$S(X="Yes":3,1:4)
  1. S $P(APCLCUML(30),U,P)=$P(APCLCUML(30),U,P)+1
  1. MS ;
  1. ;APCLCUML(31)="Total^YES^NO"
  1. S X=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,220))
  1. S $P(APCLCUML(31),U,2)=$P(APCLCUML(31),U,2)+1
  1. S P=$S(X="Yes":3,1:4)
  1. S $P(APCLCUML(31),U,P)=$P(APCLCUML(31),U,P)+1
  1. ABNG ;
  1. ;APCLCUML(32)="Total^YES^NO"
  1. S X=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,230))
  1. S $P(APCLCUML(32),U,2)=$P(APCLCUML(32),U,2)+1
  1. S P=$S(X="Yes":3,1:4)
  1. S $P(APCLCUML(32),U,P)=$P(APCLCUML(32),U,P)+1
  1. BMI ;
  1. ;APCLCUML(40)="Weight Control (BMI) - does not add up to 100%^total^total^overweight^obese^height or weight missing"
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,112))
  1. S $P(APCLCUML(40),U,2)=$P(APCLCUML(40),U,2)+1
  1. D
  1. .I V="" S $P(APCLCUML(40),U,5)=$P(APCLCUML(40),U,5)+1 Q
  1. .I $$OW^APCLP614(APCLPD,V,APCLADAT) S $P(APCLCUML(40),U,3)=$P(APCLCUML(40),U,3)+1
  1. .I $$OB^APCLP614(APCLPD,V,APCLADAT) S $P(APCLCUML(40),U,4)=$P(APCLCUML(40),U,4)+1
  1. BPC ;blood pressure control
  1. ;take last 3 bp's and get mean systolic and mean diastolic
  1. S $P(APCLCUML(60),U,2)=$P(APCLCUML(60),U,2)+1
  1. S S=$$SYSMEAN(APCLPD,APCLRBD,APCLRED)
  1. S D=$$DIAMEAN(APCLPD,APCLRBD,APCLRED)
  1. D
  1. .I S=""!(D="") S $P(APCLCUML(60),U,8)=$P(APCLCUML(60),U,8)+1 Q
  1. .I S<120&(D<70) S $P(APCLCUML(60),U,3)=$P(APCLCUML(60),U,3)+1 Q
  1. .I S<131&(D<81) S $P(APCLCUML(60),U,4)=$P(APCLCUML(60),U,4)+1 Q
  1. .I S<140&(D<90) S $P(APCLCUML(60),U,5)=$P(APCLCUML(60),U,5)+1 Q
  1. .I S<160&(D<95) S $P(APCLCUML(60),U,6)=$P(APCLCUML(60),U,6)+1 Q
  1. .S $P(APCLCUML(60),U,7)=$P(APCLCUML(60),U,7)+1
  1. TOBACCO ;
  1. S $P(APCLCUML(80),U,2)=$P(APCLCUML(80),U,2)+1
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,27))
  1. S V1=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,28))
  1. I +V=1 S $P(APCLCUML(80),U,3)=$P(APCLCUML(80),U,3)+1 S P=$S($E(V1)="Y":4,$E(V1)="N":5,1:5) S $P(APCLCUML(80),U,P)=$P(APCLCUML(80),U,P)+1
  1. I +V=2 S $P(APCLCUML(80),U,6)=$P(APCLCUML(80),U,6)+1
  1. I +V=3 S $P(APCLCUML(80),U,7)=$P(APCLCUML(80),U,7)+1
  1. DMTX ;diabetes treatment
  1. S APCL6MBD=$$FMADD^XLFDT(APCLADAT,-(6*31)),APCL6MBD=$$FMTE^XLFDT(APCL6MBD)
  1. S $P(APCLCUML(90),U,2)=$P(APCLCUML(90),U,2)+1
  1. S V=$$THERAPY^APCLP616(APCLPD,APCL6MBD,APCLRED)
  1. I V=1 S $P(APCLCUML(90),U,3)=$P(APCLCUML(90),U,3)+1
  1. I $L(V)=1 S P=$S(V=2:4,V=3:5,V=4:6,V=5:7,V=6:8,1:"") S $P(APCLCUML(90),U,P)=$P(APCLCUML(90),U,P)+1
  1. I $L(V)>1,V["2" S $P(APCLCUML(90),U,10)=$P(APCLCUML(90),U,10)+1
  1. I $L(V)>1,V'[2 S $P(APCLCUML(90),U,9)=$P(APCLCUML(90),U,9)+1
  1. ASPIRIN ;
  1. S $P(APCLCUML(100),U,2)=$P(APCLCUML(100),U,2)+1
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,62))
  1. S P=$S($E(V)="A":3,$E(V)="O":4,$E(V)="B":5,$E(V)="N":6,1:7)
  1. S $P(APCLCUML(100),U,P)=$P(APCLCUML(100),U,P)+1
  1. ACE ;110 title^total pts^total pts with protein^# of those on ace^# with htn^# of those on ace"
  1. S $P(APCLCUML(110),U,2)=$P(APCLCUML(110),U,2)+1
  1. ;set 3rd piece with # with proteinuria
  1. ;S P=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,94))
  1. S H=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,34))
  1. S A=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,60))
  1. ;I $E(P)="Y" S $P(APCLCUML(110),U,3)=$P(APCLCUML(110),U,3)+1 I $E(A)="Y" S $P(APCLCUML(110),U,4)=$P(APCLCUML(110),U,4)+1
  1. I $E(H)="Y" S $P(APCLCUML(110),U,5)=$P(APCLCUML(110),U,5)+1 I $E(A)="Y" S $P(APCLCUML(110),U,6)=$P(APCLCUML(110),U,6)+1
  1. LIPID ;115
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,61))
  1. S L=$$LDL^APCLD518(APCLPD,APCLBDAT,APCLADAT,"I"),L=$P(L,U)
  1. S T=$$CHOL^APCLD518(APCLPD,APCLBDAT,APCLADAT,"I"),T=$P(T,U)
  1. I T]"",T'<240 S $P(APCLCUML(115),U,3)=$P(APCLCUML(115),U,3)+1 I "SOB"[$E(V) S $P(APCLCUML(115),U,4)=$P(APCLCUML(115),U,4)+1
  1. I L]"",L>100 S $P(APCLCUML(115),U,5)=$P(APCLCUML(115),U,5)+1 I "SOB"[$E(V) S $P(APCLCUML(115),U,6)=$P(APCLCUML(115),U,6)+1
  1. ;lipid agents
  1. ;7 - all w/agent 8 - all with statin only 9 - all with non-statin 10 - both.fx
  1. I "SOB"[$E(V) S $P(APCLCUML(115),U,7)=$P(APCLCUML(115),U,7)+1
  1. I $E(V)="S" S $P(APCLCUML(115),U,8)=$P(APCLCUML(115),U,8)+1
  1. I $E(V)="O" S $P(APCLCUML(115),U,9)=$P(APCLCUML(115),U,9)+1
  1. I $E(V)="B" S $P(APCLCUML(115),U,10)=$P(APCLCUML(115),U,10)+1
  1. EDUC ;
  1. S:'$D(APCLCUML(130)) APCLCUML(130)="DIABETES-RELATED EDUCATION - Yearly"
  1. S $P(APCLCUML(130),U,2)=$P(APCLCUML(130),U,2)+1
  1. S G=0,V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,44))
  1. I $E(V)="Y" S $P(APCLCUML(130),U,3)=$P(APCLCUML(130),U,3)+1 S G=1
  1. I $E(V)="R" S $P(APCLCUML(130),U,7)=$P(APCLCUML(130),U,7)+1
  1. S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,46))
  1. I $E(V)="Y" S $P(APCLCUML(130),U,4)=$P(APCLCUML(130),U,4)+1 S G=1
  1. I $E(V)="R" S $P(APCLCUML(130),U,8)=$P(APCLCUML(130),U,8)+1
  1. ;S V=$G(^XTMP("APCLP61",APCLJOB,APCLBTH,"AUDIT",APCLPD,48))
  1. ;I $E(V)="R" S $P(APCLCUML(130),U,9)=$P(APCLCUML(130),U,9)+1
  1. ;I $E(V)="Y" S $P(APCLCUML(130),U,5)=$P(APCLCUML(130),U,5)+1 S G=1
  1. I G S $P(APCLCUML(130),U,6)=$P(APCLCUML(130),U,6)+1
  1. D ^APCLP611
  1. Q
  1. SYSMEAN(P,BDATE,EDATE) ;EP
  1. NEW X S X=$$BPS^APCLP613(P,BDATE,EDATE,"I")
  1. I X="" Q ""
  1. NEW Y,C S C=0 F Y=1:1:3 I $P(X,";",Y)]"" S C=C+1
  1. I C'=3 Q ""
  1. S C=0 F Y=1:1:3 S C=$P($P(X,";",Y),"/")+C
  1. Q C\3
  1. Q ""
  1. DIAMEAN(P,BDATE,EDATE) ;EP
  1. NEW X S X=$$BPS^APCLP613(P,BDATE,EDATE,"I")
  1. I X="" Q ""
  1. NEW Y,C S C=0 F Y=1:1:3 I $P(X,";",Y)]"" S C=C+1
  1. I C'=3 Q ""
  1. S C=0 F Y=1:1:3 S C=$P($P(X,";",Y),"/",2)+C
  1. Q C\3