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

BDMGTC.m

Go to the documentation of this file.
BDMGTC ; cmi/anch/maw - BDM DMS GUI Table Lookup ;
 ;;2.0;BDM DIABETES MANAGEMENT SYSTEM;**9,10,12**;JUN 14, 2007;Build 51
 ;
 ;
TAXPRT(RETVAL,BDMSTR) ;EP -- return Taxonomy list
 S X="MERR^BDMGU",@^%ZOSF("TRAP") ; m error trap
 N BDMI,BDMYR,BDMX,BDMY,BDMYRI,P
 S P="|"
 S BDMYRI=$P(BDMSTR,P)
 K ^BDMTMP($J)
 S RETVAL="^BDMTMP("_$J_")"
 S BDMI=0
 S ^BDMTMP($J,BDMI)="T00080Taxonomies"_$C(30)
 S BDMYR=$O(^BDMTAXS("B",BDMYRI,0))
 S BDMX=0,J=0 F  S BDMX=$O(^BDMTAXS(BDMYR,11,"B",BDMX)) Q:BDMX=""  D
 . S BDMY=$O(^BDMTAXS(BDMYR,11,"B",BDMX,0))
 . S BDMI=BDMI+1
 . S ^BDMTMP($J,BDMI)=BDMX_$C(30)
 S ^BDMTMP($J,BDMI+1)=$C(31)
 Q
 ;
SNOPRT(RETVAL,BDMSTR) ;-- return SNOMED Lists
 S X="MERR^BDMGU",@^%ZOSF("TRAP") ; m error trap
 N BDMI,BDMYR,BDMX,BDMY,BDMYRI,P
 S P="|"
 S BDMYRI=$P(BDMSTR,P)
 K ^BDMTMP($J)
 S RETVAL="^BDMTMP("_$J_")"
 S BDMI=0
 S ^BDMTMP($J,BDMI)="T00080SNOMED"_$C(30)
 S BDMYR=$O(^BDMSNME("B",BDMYRI,0))
 S BDMX=0,J=0 F  S BDMX=$O(^BDMSNME(BDMYR,11,"B",BDMX)) Q:BDMX=""  D
 . S BDMI=BDMI+1
 . S ^BDMTMP($J,BDMI)=BDMX_$C(30)
 S ^BDMTMP($J,BDMI+1)=$C(31)
 Q
 ;
TAXPRTS(RETVAL,BDMSTR) ;EP -- return Taxonomy items
 S X="MERR^BDMGU",@^%ZOSF("TRAP") ; m error trap
 N BDMI,BDMYR,BDMX,BDMY,P,BDMTAX
 K ^BDMTMP($J)
 S RETVAL="^BDMTMP("_$J_")"
 S BDMI=0,P="|"
 S BDMTAX=$P(BDMSTR,P)
 S BDMTAXI=$O(^ATXAX("B",BDMTAX,0))
 I BDMTAXI S BDMTAXT="T"
 I 'BDMTAXI S BDMTAXI=$O(^ATXLAB("B",BDMTAX,0)),BDMTAXT="L"
 D GUIR^XBLM("PRINT^BDMDDTV","^XTMP(""BDMTAX"",$J)")
 S ^BDMTMP($J,BDMI)="T00250Data"_$C(30)
 I '$D(^XTMP("BDMTAX",$J)) D  Q
 . S BDMI=BDMI+1
 . S ^BDMTMP($J,BDMI)="NO DATA"_$C(30)
 . S ^BDMTMP($J,BDMI+1)=$C(31)
 S BDMDA=.5 F  S BDMDA=$O(^XTMP("BDMTAX",$J,BDMDA)) Q:'BDMDA  D
 . N BDMDATA
 . S BDMI=BDMI+1
 . S BDMDATA=$G(^XTMP("BDMTAX",$J,BDMDA))
 . S ^BDMTMP($J,BDMI)=BDMDATA_$C(30)
 S ^BDMTMP($J,BDMI+1)=$C(31)
 K ^XTMP("BDMTAX",$J),BDMTAXI
 Q
 ;
SNOPRTS(RETVAL,BDMSTR) ;-- return SNOMED ITEMS
 S X="MERR^BDMGU",@^%ZOSF("TRAP") ; m error trap
 N BDMI,BDMYR,BDMX,BDMY,P,BDMTAX,BDMYRI
 K ^BDMTMP($J)
 S RETVAL="^BDMTMP("_$J_")"
 S BDMI=0,P="|"
 S BDMTAX=$P(BDMSTR,P)
 S BDMYRI=$P(BDMSTR,P,2)
 S ^BDMTMP($J,BDMI)="T00250Data"_$C(30)
 S BDMYR=$O(^BDMSNME("B",BDMYRI,0))
 S BDMTAXT=$O(^BDMSNME(BDMYR,11,"B",BDMTAX,0))
 S BDMTAXI=BDMYR
 S BDMTAXN=$P(^BDMSNME(BDMYR,11,BDMTAXT,0),U,1)
 S BDMX=0
 D GUIR^XBLM("PRINT^BDMDDTSN","^XTMP(""BDMSNO"",$J)")
 I '$D(^XTMP("BDMSNO",$J)) D  Q
 . S BDMI=BDMI+1
 . S ^BDMTMP($J,BDMI)="NO DATA"_$C(30)
 . S ^BDMTMP($J,BDMI+1)=$C(31)
 S BDMDA=.5 F  S BDMDA=$O(^XTMP("BDMSNO",$J,BDMDA)) Q:'BDMDA  D
 . N BDMDATA
 . S BDMI=BDMI+1
 . S BDMDATA=$G(^XTMP("BDMSNO",$J,BDMDA))
 . S ^BDMTMP($J,BDMI)=BDMDATA_$C(30)
 S ^BDMTMP($J,BDMI+1)=$C(31)
 K ^XTMP("BDMSNO",$J),BDMTAXI,BDMTAXN,BDMTAXT,BDMX
 Q
 ;
TUENDS(BDMRET) ;-- tobacco use health factors table
 S X="MERR^BDMGU",@^%ZOSF("TRAP") ; m error trap
 N BDMHF,BDMI,BDMERR,BDMPIEN,BDMDA,BDMTU,BDMTOB
 K ^BDMTMP($J)
 S BDMRET="^BDMTMP("_$J_")"
 S BDMI=0
 S BDMERR=""
 S ^BDMTMP($J,BDMI)="T00080HF"_$C(30)
 N TDA,TIEN
 S TDA=0 F  S TDA=$O(^AUTTHF("B",TDA)) Q:TDA=""  D
 . Q:$E(TDA,1,10)'="ELECTRONIC"
 . S TIEN=0 F  S TIEN=$O(^AUTTHF("B",TDA,TIEN)) Q:'TIEN  D
 .. S BDMTOB(TIEN)=""
 S BDMDA=0 F  S BDMDA=$O(^AUTTHF("AC",BDMDA)) Q:BDMDA=""  D
 . S BDMPIEN=0 F  S BDMPIEN=$O(^AUTTHF("AC",BDMDA,BDMPIEN)) Q:'BDMPIEN  D
 .. Q:$P($G(^AUTTHF(BDMPIEN,0)),U,13)
 .. S BDMTU=$P($G(^AUTTHF(BDMPIEN,0)),U,3)
 .. Q:'$D(BDMTOB(BDMTU))
 .. Q:$P($G(^AUTTHF(BDMPIEN,0)),U,10)'="F"
 .. S BDMHF=$P($G(^AUTTHF(BDMPIEN,0)),U)
 .. S BDMI=BDMI+1
 .. S ^BDMTMP($J,BDMI)=BDMHF_$C(30)
 S ^BDMTMP($J,BDMI+1)=$C(31)_$G(BDMERR)
 Q
 ;