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

BQIRSPMT.m

Go to the documentation of this file.
  1. BQIRSPMT ;PRXM/HC/ALA-Print Selected Supplement ; 16 Oct 2007 3:30 PM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. EN(DATA,DFN,SUPL) ; EP -- BQI PATIENT SUPPLEMENT
  1. ;Description
  1. ; Generates a Patient Supplement for a given DFN and Supplement
  1. ;
  1. ;Input
  1. ; DFN - Patient Internal ID
  1. ; SUPL - Supplement IEN
  1. ;
  1. ;Output
  1. ; DATA - Name of global in which data is stored(^TMP("BQIRSPMT"))
  1. ;
  1. NEW UID,BQII,EXEC,PRGM
  1. NEW HSTEXT,HSPATH,HSFN,Y,IOSL,IOST,IOM,I,N
  1. NEW APCHSPAT,APCHSHDR,APCHSTIM
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIRSPMT",UID))
  1. K @DATA
  1. ;
  1. S BQII=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIRSPMT D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ;
  1. D HDR
  1. ;
  1. I $$TMPFL^BQIUL1("W",UID,DFN) G DONE
  1. ;
  1. S IOSL=999,IOM=80,IOST="P-OTHER80"
  1. ; APCHSPAT variable is required by APCH routines
  1. S APCHSPAT=DFN
  1. ;
  1. ; Sometimes the header needs to be defined
  1. S Y=DT X ^DD("DD") S APCHSDAT=Y D NOW^%DTC S X=% X ^DD("FUNC",2,1) S APCHSTIM=X
  1. S APCHSHDR="CONFIDENTIAL PATIENT INFORMATION -- "_$$FMTE^XLFDT(DT,5)_$J(APCHSTIM,9)_" ["_$P(^VA(200,DUZ,0),U,2)_"]"
  1. S X="",$P(X,"*",((IOM-6-$L(APCHSHDR))\2)+1)="*"
  1. S APCHSHDR=X_" "_APCHSHDR_" "_X
  1. ;
  1. S EXEC=$G(^APCHSUP(SUPL,11)) I EXEC="" G DONE
  1. S PRGM=$P(EXEC,"^",2)
  1. I PRGM["(" S PRGM=$P(PRGM,"(",1)
  1. I $T(@("^"_PRGM))="" G DONE
  1. ;
  1. U IO X EXEC
  1. U IO W $C(9)
  1. ;
  1. I $$TMPFL^BQIUL1("C") G DONE
  1. ;
  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. I $$TMPFL^BQIUL1("C") G DONE
  1. ;
  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