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

CIMGAGPR.m

Go to the documentation of this file.
  1. CIMGAGPR ; CMI/TUCSON/LAB - ABERDEEN IMM REPORT ;
  1. ;;1.0;ABERDEEN GPRA REPORT;;JAN 22, 2000
  1. ;;
  1. ;;INPUT VARIABLE
  1. ;;
  1. ;; CIMDFN = PATIENT DFN
  1. ;; CIMDAT = DATE FOR IMMUNIZATION STATUS
  1. ;;
  1. ;;OUTPUT VARIABLE = UPTODATE
  1. ;;
  1. ;; UPTODATE = 1 = UPTODATE
  1. ;; UPTODATE = 2 = NOT UPTODATE
  1. ;;
  1. ;;OUTPUT GLOBAL ARRAY
  1. ;;
  1. ;; ^TMP("CIMGAGPR",$J,"LASTNAME,FIRST NAME",CIMDFN,"NEEDS")="LIST OF IMMUNIZATIONS THE CHILD NEEDS"
  1. ;;
  1. KIDS(CIMDFN,CIMDAT) ;EP;DETERMINE CHILDS IMMUNIZATION STATUS
  1. K ^TMP("CIMGAGPR",$J)
  1. ;D VARICELL
  1. N CIMIVDA,UPTODATE
  1. S CIMIVDA=0
  1. F S CIMIVDA=$O(^AUPNVIMM("AC",CIMDFN,CIMIVDA)) Q:'CIMIVDA D IMM
  1. S UPTODATE=2
  1. D COUNT
  1. Q UPTODATE
  1. IMM ;EP;EVALUATE IMMUNIZATION
  1. N S,X,Y,Z,CIMS
  1. S X=$G(^AUPNVIMM(CIMIVDA,0))
  1. Q:'X
  1. Q:$P(+$G(^AUPNVSIT(+$P(X,U,3),0)),".")>$G(CIMDAT)
  1. S Y=$S($L($P($G(^AUTTIMM(+X,0)),U,20))=2:$P(^(0),U,20),1:$P($G(^(0)),U,3))
  1. Q:Y=""
  1. S CIMS=""
  1. I "^02^03^34^42^"[(U_Y_U) S Y="DTP"
  1. I "^06^07^"[(U_Y_U) S Y="IPV"
  1. I "^11^14^15^17^18^"[(U_Y_U) S Y="MMR"
  1. I "^35^37^38^39^"[(U_Y_U) S Y="HIB"
  1. I Y=10 S Y="HEPB"
  1. ;I Y=41 S Y="VAR"
  1. ;I Y=85 S Y="HEPA"
  1. Q:Y'?3U&(Y'?4U)
  1. S S=$P(X,U,4)
  1. I Y="DTP" D Q:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))>3
  1. .S:S>3 CIMS=4
  1. I Y="IPV" D Q:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))>2
  1. .S:S>2 CIMS=3
  1. I Y="MMR" D Q:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))>0
  1. .S:S>0 CIMS=1
  1. I Y="HIB" D Q:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))>2
  1. .S:S>2 CIMS=3
  1. I Y="HEPB" D Q:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))>2
  1. .S:S>2 CIMS=3
  1. S:S>CIMS S=CIMS
  1. S ^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y)=$S(S>($G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))):S,1:$G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,Y))+1)
  1. Q
  1. COUNT ;COUNT KIDS AND IMMUNIZATIONS
  1. ;I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"HEPB"))>2,$G(^("DTP"))>3,$G(^("HIB"))>2,$G(^("IPV"))>1,$G(^("MMR"))>0,$G(^("VAR"))>0 S UPTODATE=1
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"HEPB"))>2,$G(^("DTP"))>3,$G(^("HIB"))>2,$G(^("IPV"))>1,$G(^("MMR"))>0 S UPTODATE=1
  1. D NEEDS
  1. Q
  1. NEEDS N HRN,NAME,NEEDS,COMMUNIT,DOB
  1. S NAME=$P($G(^DPT(CIMDFN,0)),U)
  1. Q:NAME=""
  1. S Y=$P($G(^DPT(CIMDFN,0)),U,3)
  1. X ^DD("DD")
  1. S DOB=Y
  1. S HRN=$P($G(^AUPNPAT(CIMDFN,41,DUZ(2),0)),U,2)
  1. S COMMUNIT=$P($G(^AUTTCOM(+$P($G(^AUPNPAT(CIMDFN,11)),U,17),0)),U)
  1. S:COMMUNIT="" COMMUNIT="NOT STATED"
  1. S NEEDS=""
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"DTP"))<4 S NEEDS="DTaP"
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"IPV"))<3 S NEEDS=NEEDS_$S(NEEDS]"":" & ",1:"")_"IPV"
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"MMR"))<1 S NEEDS=NEEDS_$S(NEEDS]"":" & ",1:"")_"MMR"
  1. ;I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"VAR"))<1 S NEEDS=NEEDS_$S(NEEDS]"":" & ",1:"")_"VAR"
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"HIB"))<3 S NEEDS=NEEDS_$S(NEEDS]"":" & ",1:"")_"HIB"
  1. I $G(^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"HEPB"))<3 S NEEDS=NEEDS_$S(NEEDS]"":" & ",1:"")_"HEPB"
  1. I '$D(UPTODATE) S ^TMP("CIMGAGPR",$J,"NOTUPTODATE",COMMUNIT,NAME)=DOB_U_HRN_U_NEEDS
  1. S:$G(NEEDS)]"" ^TMP("CIMGAGPR",$J,"CHILD",NAME,CIMDFN,"NEEDS")=NEEDS
  1. K ^TMP("CIMGAGPR",$J,"CHILD",CIMDFN)
  1. Q
  1. VARICELL ;SET ARRAY OF ICD9 IEN'S FOR VARICELLA AND DETERMINE IF CHILD HAD DX OF
  1. ;VARICELLA, ICD9 DX 052.7, 052.8, OR 052.9
  1. N X,Y
  1. D:'$D(CIMT("VARICELLA")) Q:'$D(CIMT("VARICELLA"))
  1. .F X="052.7","052.8","052.9" D
  1. ..S Y=$O(^ICD9("AB",X,0))
  1. ..Q:'Y
  1. ..S CIMT("VARICELLA",Y)=""
  1. S X=0
  1. F S X=$O(^AUPNVPOV("AC",CIMDFN,X)) Q:'X D
  1. .S Y=$G(^AUPNVPOV(X,0))
  1. .Q:'$D(CIMT("VARICELLA",+Y))
  1. .Q:$P(+$G(^AUPNVSIT(+$P(Y,U,3),0)),".")>CIMDAT
  1. .S ^TMP("CIMGAGPR",$J,"CHILD",CIMDFN,"VAR")=1
  1. Q