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

BQIRPASM.m

Go to the documentation of this file.
  1. BQIRPASM ;VNGT/HS/ALA-Asthma Patient Care Summary ; 23 Jun 2009 1:43 PM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. EN(DATA,DFN) ; EP -- BQI PATIENT ASTHMA SUMMARY
  1. ;Description
  1. ; Generates a Patient Supplement for a given DFN and Supplement
  1. ;
  1. ;Input
  1. ; DFN - Patient Internal ID
  1. ;
  1. ;Output
  1. ; DATA - Name of global in which data is stored(^TMP("BQIRPASM"))
  1. ;
  1. NEW UID,BQII,EXEC,PRGM,%,SUPL
  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("BQIRPASM",UID))
  1. K @DATA
  1. ;
  1. S BQII=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIRPASM 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 SUPL=$$FIND1^DIC(9001022,"","B","ASTHMA PATIENT CARE SUMMARY","","","ERROR") I 'SUPL G DONE
  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