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

BHSLAB.m

Go to the documentation of this file.
  1. BHSLAB ;IHS/CIA/MGH - Health Summary for V lab file ;14-Aug-2009 12:55;MGH
  1. ;;1.0;HEALTH SUMMARY COMPONENTS;**2,3**;March 17, 2006
  1. ;===================================================================
  1. ;VA Health Summary for IHS V lab file
  1. ;Take from APCHS3
  1. ; IHS/TUCSON/LAB - PART 3 OF APCHS -- SUMMARY PRODUCTION COMPONENTS
  1. ;;2.0;IHS RPMS/PCC Health Summary;;JUN 24, 1997
  1. ;Patch 3 added result date
  1. LAB ; ******************** LAB DATA * 9000010.09 *******
  1. N BHSPAT,BHSQ,X
  1. S BHSPAT=DFN,BHSELX=""
  1. I '$D(^AUPNVLAB("AE",BHSPAT)) D EKGLAB^BHSLAB1 S BHST="LAB",BHSFN=60 D DISPREF^BHSRAD G LABX
  1. D CKP^GMTSUP Q:$D(GMTSQIT)
  1. ; <SETUP>
  1. K ^TMP($J,"BHSLRT"),^("BHSLDT"),^("BHSLD2")
  1. ; <PROCESS>
  1. D LBLD,LPRT
  1. W ! D EKGLAB^BHSLAB1
  1. ; <CLEANUP>
  1. ;Patch 2, lab refusals
  1. S BHST="LAB",BHSFN=60 D DISPREF^BHSRAD
  1. LABX K BHSLT,BHSLR,BHSLTX,BHSDFN,BHSNDT,BHSLRT,BHSLDT,BHST,BHSFN,BHSLD2,BHSNA,BHSIVD,BHSDTL,BHSI,BHSJ,BHSL,BHSLL,BHSDSN,BHSIDN,BHSNMX,BHSLW,BHSMXL,BHSLTO,BHSLTN,BHSELX,Y
  1. K ^TMP($J,"BHSLRT"),^("BHSLDT"),^("BHSLD2")
  1. Q
  1. ; <BUILD>
  1. LBLD K BHSLRT,BHSLDT,BHSLD2
  1. S (BHSNDT,BHSMXL,BHSLTN)=0
  1. S BHSIVD="" F BHSQ=0:0 S BHSIVD=$O(^AUPNVLAB("AE",BHSPAT,BHSIVD)) Q:'BHSIVD!(BHSIVD>GMTSDLM) D
  1. .D LDATE S:$D(^TMP($J,"BHSLDT",BHSIVD)) GMTSSNDM=GMTSNDM-1 Q:'GMTSNDM
  1. S BHSIVD="" F BHSI=1:1 S BHSIVD=$O(^TMP($J,"BHSLDT",BHSIVD)) Q:BHSIVD="" D
  1. .S ^TMP($J,"BHSLD2",BHSI)=BHSIVD
  1. Q
  1. LDATE S BHSLT="" F BHSQ=0:0 S BHSLT=$O(^AUPNVLAB("AE",BHSPAT,BHSIVD,BHSLT)) Q:'BHSLT D
  1. .S BHSDFN=$O(^AUPNVLAB("AE",BHSPAT,BHSIVD,BHSLT,""))
  1. .D LSET
  1. Q
  1. LSET ;
  1. S BHSLR=$P(^AUPNVLAB(BHSDFN,0),U,4) Q:BHSLR=""
  1. S (BHSLTO,BHSLTN)=BHSLT
  1. S BHSLTO=10000+BHSLTO_"-"_BHSLT
  1. S Y=$$RDT(BHSDFN)
  1. S ^TMP($J,"BHSLRT",BHSLTO,BHSIVD)=BHSLR_$S(Y]"":" (",1:"")_$$RDT(BHSDFN)_$S(Y]"":")",1:"") S BHSLTX=$P(^LAB(60,BHSLT,0),U,1) S:$L(BHSLTX)>BHSMXL BHSMXL=$L(BHSLTX)
  1. S:'$D(^TMP($J,"BHSLDT",BHSIVD)) BHSNDT=BHSNDT+1
  1. S ^TMP($J,"BHSLDT",BHSIVD)=""
  1. Q
  1. ; <PRINT>
  1. LPRT S BHSLW=BHSMXL+1,BHSLL=25,BHSNMX=(80-1-BHSLW)\BHSLL
  1. F BHSDSN=1:BHSNMX:BHSNDT D LPRT2
  1. Q
  1. LPRT2 ;
  1. S BHSDTL="" F BHSI=1:1:BHSNMX S BHSJ=BHSDSN+BHSI-1 Q:BHSJ>BHSNDT D
  1. .S X=-^TMP($J,"BHSLD2",BHSJ)\1+9999999 D REGDT4^GMTSU S BHSDTL=BHSDTL_$J(X,BHSLL)
  1. D CKP^GMTSUP Q:$D(GMTSQIT) W ! D CKP^GMTSUP Q:$D(GMTSQIT) W ?BHSLW,BHSDTL
  1. D CKP^GMTSUP Q:$D(GMTSQIT) W !
  1. S BHSLT="" F BHSQ=0:0 S BHSLT=$O(^TMP($J,"BHSLRT",BHSLT)) Q:BHSLT="" D
  1. .S BHSLTX=$P(^LAB(60,$P(BHSLT,"-",2),0),U,1) D LPRT3 I BHSNA D CKP^GMTSUP Q:$D(GMTSQIT) W:GMTSNPG ?BHSLW,BHSDTL,! W BHSLTX,?BHSLW,BHSL,!
  1. Q
  1. LPRT3 S BHSNA=0 S BHSL="" F BHSIDN=1:1:BHSNMX S BHSJ=BHSDSN+BHSIDN-1 Q:BHSJ>BHSNDT D
  1. .S BHSIVD=^TMP($J,"BHSLD2",BHSJ) D LADD
  1. Q
  1. LADD I $D(^TMP($J,"BHSLRT",BHSLT,BHSIVD)) S BHSNA=BHSNA+1 S BHSL=BHSL_$J(^TMP($J,"BHSLRT",BHSLT,BHSIVD),BHSLL)
  1. E S BHSL=BHSL_$J(" ",BHSLL)
  1. Q
  1. RDT(R) ;
  1. I $G(R)="" Q ""
  1. NEW X
  1. S X=$P($G(^AUPNVLAB(R,12)),U,12)
  1. I X="" Q ""
  1. Q $$DATE^APCHSMU($P(X,"."))_"@"_$P($P($$FMTE^XLFDT(X),"@",2),":",1,2)