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

BQITD10.m

Go to the documentation of this file.
  1. BQITD10 ;PRXM/HC/ALA-Obese Definition ; 04 Apr 2006 1:36 PM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. Q
  1. ;
  1. POP(BQARY,TGLOB) ; EP -- By population
  1. ;
  1. ;Description
  1. ; Finds all patients who meet the criteria for Obese
  1. ;Input
  1. ; BQIRY - Array of taxonomies and other information
  1. ; TGLOB - Global where data is to be stored
  1. ; Structure:
  1. ; TGLOB(DFN,"CRITERIA",criteria or taxonomy,visit or problem ien)=date/time
  1. ;
  1. ; Clean out any previous data
  1. NEW DXNN,TDFN,DA,DIK,DFN,TMPG,TX,AGE,BMI,TMFRAME,EXDT,DTDIF,ENDT,STDT
  1. ;
  1. I $D(@BQARY) D
  1. . D POP^BQITDGN(.BQARY,.TGLOB)
  1. ;
  1. S TMPG=$NA(^TMP("BQIBMI",UID))
  1. K @TMPG
  1. S TMFRAME="T-60M",EXDT="",DTDIF=""
  1. S ENDT=$$DATE^BQIUL1(TMFRAME),STDT=$$DT^XLFDT()
  1. S DTDIF=$$FMDIFF^XLFDT(STDT,ENDT,1)
  1. D ABMI^BQITBMI(TMFRAME,.TMPG)
  1. S TDFN=0
  1. F S TDFN=$O(@TMPG@(TDFN)) Q:'TDFN D
  1. . S AGE=$P(@TMPG@(TDFN),"^",2)
  1. . S BMI=$P(@TMPG@(TDFN),"^",1)
  1. . I $$OB^BQITBMI(TDFN,BMI,AGE) D
  1. .. F TX="BMI-Height","BMI-Weight" D
  1. ... S VISIT=$O(@TMPG@(TDFN,"CRITERIA",TX,"V",""))
  1. ... S IEN=""
  1. ... F S IEN=$O(@TMPG@(TDFN,"CRITERIA",TX,"V",VISIT,IEN)) Q:IEN="" D
  1. .... S VSDTM=@TMPG@(TDFN,"CRITERIA",TX,"V",VISIT,IEN)
  1. .... I DTDIF'="" S EXDT=$$FMADD^XLFDT(VSDTM,DTDIF)
  1. .... S @TGLOB@(TDFN,"CRITERIA","BMI","V",VISIT,IEN)=VSDTM_U_U_IEN_U_"9000010.01"
  1. .... I EXDT'="" S $P(@TGLOB@(TDFN,"CRITERIA","BMI","V",VISIT,IEN),U,2)=EXDT
  1. K @TMPG
  1. Q
  1. ;
  1. PAT(DEF,TGLOB,BDFN) ; EP -- By patient
  1. ;Description
  1. ; Checks if a patient meets the criteria for Obese
  1. ; if adult and BMI is =>30
  1. ;Input
  1. ; BDFN - patient internal entry number
  1. ;
  1. NEW AGE,BMI,BMID,VIENS,VST,VSDTM,TMFRAME,EXDT,DTDIF,ENDT,STDT
  1. S TMFRAME="T-60M",EXDT="",DTDIF=""
  1. S ENDT=$$DATE^BQIUL1(TMFRAME),STDT=$$DT^XLFDT()
  1. S DTDIF=$$FMDIFF^XLFDT(STDT,ENDT,1)
  1. S BMID=$$OBMI^BQITBMI(BDFN,TMFRAME)
  1. S BMI=$P(BMID,"^",1),AGE=$P(BMID,"^",2),VIENS=$P(BMID,"^",3),MIENS=$P(BMID,"^",4)
  1. I BMI'="",$$OB^BQITBMI(BDFN,BMI,AGE) D Q 1
  1. . F I=1:1 S VST=$P(VIENS,",",I) Q:VST="" D
  1. .. S VSDTM=$P($G(^AUPNVSIT(VST,0)),U,1)
  1. .. S IEN=$P(MIENS,",",I)
  1. .. I DTDIF'="" S EXDT=$$FMADD^XLFDT(VSDTM,DTDIF)
  1. .. S @TGLOB@(BDFN,"CRITERIA","BMI","V",VST,IEN)=VSDTM_U_U_IEN_U_"9000010.01"
  1. .. I EXDT'="" S $P(@TGLOB@(BDFN,"CRITERIA","BMI","V",VST,IEN),U,2)=EXDT
  1. Q 0