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

BQIRHS.m

Go to the documentation of this file.
  1. BQIRHS ;PRXM/HC/DLS - Patient Health Summary ; 20 Dec 2005 3:53 PM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. Q
  1. ;
  1. EN(DATA,DFN,SUMMTYP) ; EP -- BQI PATIENT HEALTH SUMMARY
  1. ;Description
  1. ; Generates a Patient Health Summary for a given DFN
  1. ;
  1. ;Input
  1. ; DFN - Patient Internal ID
  1. ; SUMMTYP - Health Summary Type ID
  1. ;
  1. ;Output
  1. ; DATA - Name of global in which data is stored(^TMP("BQIRHS"))
  1. ;
  1. N UID,X,BQII,HSOS
  1. N HSTEXT,HSPATH,HSFN,Y,IOSL,IOST,IOM,I,N
  1. N APCHSPAT,APCHSTYP
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIRHS",UID))
  1. K @DATA
  1. ;
  1. S BQII=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIRHS D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ;
  1. D HDR
  1. ;
  1. ;S HSPATH=$$DEFDIR^%ZISH("")
  1. ;I HSPATH="" S HSPATH=$$PWD^%ZISH()
  1. ;S HSFN=UID_"_"_DFN_".DAT"
  1. ;D OPEN^%ZISH("BQIFILE",HSPATH,HSFN,"W") I POP G DONE
  1. I $$TMPFL^BQIUL1("W",UID,DFN) G DONE
  1. ;
  1. S IOSL=999,IOM=80,IOST="P-OTHER80"
  1. S APCHSPAT=DFN ; APCHSPAT variable is required by APCHS.
  1. S APCHSTYP=SUMMTYP ; APCHSTYP variable is required by APCHS.
  1. ;
  1. U IO D EN^APCHS
  1. U IO W $C(9)
  1. ;
  1. ;D CLOSE^%ZISH("BQIFILE")
  1. I $$TMPFL^BQIUL1("C") G DONE
  1. ;D OPEN^%ZISH("BQIFILE",HSPATH,HSFN,"R") I POP G DONE
  1. I $$TMPFL^BQIUL1("R",UID,DFN) G DONE
  1. ;
  1. F U IO R HSTEXT:.1 Q:HSTEXT[$C(9) D
  1. . S HSTEXT=$$STRIP^XLFSTR(HSTEXT,"^")
  1. . I HSTEXT="" S HSTEXT=" "
  1. . S BQII=BQII+1,@DATA@(BQII)=HSTEXT_$C(13)_$C(10)
  1. S BQII=BQII+1,@DATA@(BQII)=$C(30)
  1. ;
  1. ;Drop down to DONE.
  1. ;
  1. ;D CLOSE^%ZISH("BQIFILE")
  1. I $$TMPFL^BQIUL1("C") G DONE
  1. ;S Y=$$DEL^%ZISH(HSPATH,HSFN)
  1. I $$TMPFL^BQIUL1("D",UID,DFN) G DONE
  1. ;
  1. DONE ;
  1. ;
  1. S BQII=BQII+1,@DATA@(BQII)=$C(31)
  1. Q
  1. ;
  1. HDR ;
  1. S @DATA@(BQII)="T00120REPORT_TEXT"_$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(BQII),$D(DATA) S BQII=BQII+1,@DATA@(BQII)=$C(31)
  1. I $$TMPFL^BQIUL1("C")
  1. Q