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

APCLDMNC.m

Go to the documentation of this file.
  1. APCLDMNC ; IHS/CMI/LAB - is this the first of this diabetes diagnosis? ;
  1. ;;2.0;IHS PCC SUITE;**11**;MAY 14, 2009;Build 58
  1. ;
  1. ;cmi/anch/maw 9/10/2007 code set versioning in DMCOMPL
  1. ;
  1. DMNC ;EP -- called by taxonomy system
  1. K ATXSTOP
  1. Q:'ATXPOVDA
  1. Q:'$P(^AUPNVPOV(ATXPOVDA,0),U,2)
  1. ; -- is this the first of this diagnosis (ICD9) for this patient
  1. K APCL
  1. S APCLY="APCL("
  1. S APCLX=$P(^AUPNVPOV(ATXPOVDA,0),U,2)_"^FIRST DX [APCL DIABETES REG NEW CASE" S APCLER=$$START1^APCLDF(APCLX,APCLY)
  1. I APCLER S ATXSTOP=1 G X1
  1. S V=+$P($G(APCL(1)),U,4) I V=ATXPOVDA G X1
  1. S ATXSTOP=1
  1. X1 K APCL,APCLER,APCLX,APCLY
  1. Q
  1. DMCOMPL ;PEP -- called from taxonomy system
  1. ;-- if this patient is on IHS DIABETES register, and this is the first dx of this complication send bulletin (do not set atxstp)
  1. ;S DIC="^ACM(41.1,",DIC(0)="M",X="IHS DIABETES" D ^DIC I Y=-1 G X3
  1. ;S APCLDMRG=+Y
  1. K ATXSTOP
  1. Q:'ATXPOVDA
  1. Q:'$P(^AUPNVPOV(ATXPOVDA,0),U,2)
  1. S APCLDFN=$P(^AUPNVPOV(ATXPOVDA,0),U,2)
  1. ; -- PUT CODE HERE TO SEE IF PATIENT ON REGISTER
  1. ;I '$D(^ACM(41,"AC",APCLDFN,APCLDMRG)) G X3
  1. I '$$DMREG(APCLDFN) G X3 ;IHS/CMI/GRL
  1. K APCL
  1. S APCLY="APCL("
  1. ;S APCLX=APCLDFN_"^FIRST DX "_$P(^ICD9(ATXICD,0),U) S APCLER=$$START1^APCLDF(APCLX,APCLY) ;cmi/anch/maw 9/10/2007 orig line
  1. S APCLX=APCLDFN_"^FIRST DX "_$P($$ICDDX^ICDEX(ATXICD),U,2) S APCLER=$$START1^APCLDF(APCLX,APCLY) ;cmi/anch/maw 9/10/2007 csv
  1. I APCLER G X2
  1. S V=+$P($G(APCL(1)),U,4) I V=ATXPOVDA G X2
  1. X3 S ATXSTOP=1
  1. X2 K APCL,APCLDFN,APCLER,APCLX,APCLY
  1. Q
  1. ;
  1. DMREG(P) ;is patient on any Diabetes register 1 if on reg, "" if not
  1. I $G(P)="" Q ""
  1. NEW X,Y
  1. S X=0,Y="" F S X=$O(^ACM(41,"AC",P,X)) Q:X'=+X!(Y) D
  1. .S N=$$UP^XLFSTR($P($G(^ACM(41.1,X,0)),U))
  1. .I N["DIABETES" S Y=1
  1. .I N["DIAB" S Y=1
  1. .I N["DM " S Y=1
  1. .I N[" DM" S Y=1
  1. .Q
  1. Q Y