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

BQIPTDG.m

Go to the documentation of this file.
  1. BQIPTDG ;PRXM/HC/BWF -Get Patient demographic information ; 24 Oct 2005 6:21 PM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. Q
  1. ;
  1. GET(DATA,DFN) ; EP -- BQI GET PATIENT DEMOGRAPHICS
  1. ;
  1. ; Input
  1. ; DFN - Patients DFN or internal entry number
  1. ;
  1. NEW UID,STR,X,GDDATA,FLDS,IEN,BQI,RETURN,PTCSZ,PTTRIBE,CMGR,DPCP,PTBEN,PTSSN
  1. NEW PTNAME,PTSEX,PTDOB,PTAGE,PTADD1,PTCITY,PTSTATE,PTZIP,NAFLG,WKPHONE,EMAIL
  1. NEW PTADR,PTCOMM,HRN,ALRTFLG,HMPHONE,ALTPHONE,GPMET,PTDOD,REMMETH,PFLANG
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J),BQI=0
  1. S DATA=$NA(^TMP("BQIPTDG",UID))
  1. K @DATA
  1. ;
  1. S BQI=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIPTDG D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ;
  1. D HDR
  1. ;
  1. S IEN=DFN_","
  1. S FLDS=".01;4101;1107.2;1102.2;1108;1602.2;1603.2;1604.2;1605.2;1117;1606.2;1607.2;1801;1111;4002;1802"
  1. D GETS^DIQ(9000001,IEN,FLDS,"E","GDDATA")
  1. S PTNAME=$G(GDDATA(9000001,IEN,.01,"E"))
  1. S PTSEX=$$GET1^DIQ(2,IEN,.02,"I")
  1. S PTDOB=$$FMTE^BQIUL1($$GET1^DIQ(2,IEN,.03,"I"))
  1. S PTDOD=$$FMTE^BQIUL1($$GET1^DIQ(2,IEN,.351,"I"))
  1. S PTAGE=$$AGE^BQIAGE(DFN,,1)
  1. S PTADD1=$G(GDDATA(9000001,IEN,1602.2,"E"))
  1. S PTCITY=$G(GDDATA(9000001,IEN,1603.2,"E"))
  1. S PTSTATE=$G(GDDATA(9000001,IEN,1604.2,"E"))
  1. S PTZIP=$G(GDDATA(9000001,IEN,1605.2,"E"))
  1. S PTADR=PTADD1
  1. S PTCSZ=PTCITY_","_PTSTATE_" "_PTZIP
  1. S PTSSN=$G(GDDATA(9000001,IEN,1107.2,"E"))
  1. I PTSSN'="" S PTSSN="XXX-XX-"_$E(PTSSN,6,9)
  1. S PTCOMM=$G(GDDATA(9000001,IEN,1117,"E"))
  1. S PTTRIBE=$G(GDDATA(9000001,IEN,1108,"E"))
  1. S PTBEN=$G(GDDATA(9000001,IEN,1111,"E"))
  1. S EMAIL=$G(GDDATA(9000001,IEN,1802,"E"))
  1. S REMMETH=$G(GDDATA(9000001,IEN,4002,"E"))
  1. ;
  1. ;S HRN=$$HRN^BQIULPT(DFN)
  1. S HRN=$$HRNL^BQIULPT(DFN)
  1. S ALRTFLG=""
  1. S HMPHONE=$G(GDDATA(9000001,IEN,1606.2,"E"))
  1. S WKPHONE=$G(GDDATA(9000001,IEN,1607.2,"E"))
  1. S ALTPHONE=$G(GDDATA(9000001,IEN,1801,"E"))
  1. S GPMET=$$GMET^BQIULPT(DFN)
  1. S DPCP=$P($$DPCP^BQIULPT(DFN),U,2)
  1. S CMGR=$P($$CM^BQIULPT(DFN),U,2)
  1. S PFLANG=$$PFLNG^BQIULPT(DFN)
  1. ;
  1. S RETURN=ALRTFLG_U_PTNAME_U_HRN_U_PTSSN_U_PTDOB_U_PTSEX_U_PTAGE_U_PTADR_U_PTCSZ_U_PTCOMM_U_HMPHONE_U_WKPHONE_U_ALTPHONE_U_PTTRIBE_U_DPCP_U_CMGR_U_$$SENS^BQIULPT(DFN)_U
  1. S RETURN=RETURN_PTDOD_U_PTBEN_U_EMAIL_U_REMMETH_U_PFLANG
  1. S BQI=BQI+1,@DATA@(BQI)=RETURN_$C(30)
  1. S BQI=BQI+1,@DATA@(BQI)=$C(31)
  1. K BGPHOME,BQIH,BQIINDF,BQIINDG,BQIMEASF,BQIMEASG,BQIROU,BQIY,BQIYR
  1. Q
  1. ;
  1. HDR ;
  1. S @DATA@(BQI)="T00001FLAG_INDICATOR^T00030PATIENT_NAME^T00030HRN^T00011SSN^D00030DOB^T00001SEX^T00010AGE^T00050ADDRESS^T00070CITY_STATE_ZIP^"
  1. S @DATA@(BQI)=@DATA@(BQI)_"T00030COMMUNITY^T00020HOME_PHONE^T00020WORK_PHONE^T00060ALT_PHONE^T00040TRIBE^T00035DPCP^T00035CASE_MGR^"
  1. S @DATA@(BQI)=@DATA@(BQI)_"T00001SENSITIVE_INDICATOR^D00030DOD^T00030BENEFICIARY^T00065EMAIL^T00010REMMETH^T00060PFLANG"_$C(30)
  1. Q
  1. ;
  1. ERR ;
  1. D ^%ZTER
  1. NEW Y,ERRDTM
  1. S Y=$$NOW^XLFDT() X ^DD("DD") S ERRDTM=Y
  1. S BMXSEC="Recording that an error occurred at "_ERRDTM
  1. I $D(BQI),$D(DATA) S BQI=BQI+1,@DATA@(BQI)=$C(31)
  1. Q