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

BQIRWS.m

Go to the documentation of this file.
  1. BQIRWS ;PRXM/HC/ALA - Patient Wellness Summary ; 19 Jul 2006 10:35 AM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. Q
  1. ;
  1. EN(DATA,DFN,TYPE) ; EP -- BQI PATIENT WELLNESS SUMMARY
  1. ;Description
  1. ; Generates a Patient Wellness Summary for a given DFN
  1. ;
  1. ;Input
  1. ; DFN - Patient Internal ID
  1. ;
  1. ;Output
  1. ; DATA - Name of global in which data is stored(^TMP("BQIRWS"))
  1. ;
  1. NEW UID,X,BQII,HSTEXT,HSPATH,HSFN,Y,I,N,ENT,DATAR
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIRWS",UID))
  1. K @DATA
  1. ;
  1. S BQII=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIRWS D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ;
  1. ; Check for patch
  1. I '$$PATCH^XPDUTL("APCH*2.0*15") S BMXSEC="Patch APCH*2.0*15 is not installed. Please contact your system manager." Q
  1. ;
  1. D HDR
  1. ;
  1. ; If BJPC v2.0 is loaded use new Patient Wellness Handout
  1. ; *** Note: TYPE must be passed - it corresponds to the HEALTH SUMMARY PWH TYPE ***
  1. ;
  1. I $$VERSION^XPDUTL("BJPC")'<2.0 D G DONE
  1. . ; Data is returned from APCHPWH1 in ^TMP($J,"APCHPWH")
  1. . ; This cannot be run asynchronously since $J is used to subscript
  1. . ; temporary globals in APCHPWH1
  1. . ;
  1. . S DATAR=$NA(^TMP($J,"APCHPWH"))
  1. . K @DATAR
  1. . ;
  1. . I $G(TYPE)="" S BMXSEC="RPC Call Failed: Missing Patient Wellness Handout type" Q
  1. . I TYPE'?.N S TYPE=$O(^APCHPWHT("B",TYPE,""))
  1. . I TYPE="" S BMXSEC="RPC Call Failed: Patient Wellness Handout type does not exist in RPMS" Q
  1. . D EP^APCHPWH1(DFN,TYPE)
  1. . I '$O(@DATAR@(0)) Q
  1. . S ENT=0 F S ENT=$O(@DATAR@(ENT)) Q:ENT="" D
  1. .. S BQII=BQII+1,@DATA@(BQII)=@DATAR@(ENT)_$C(13)_$C(10)
  1. . S BQII=BQII+1,@DATA@(BQII)=$C(30)
  1. ;
  1. I $$TMPFL^BQIUL1("W",UID,DFN) G DONE
  1. ;
  1. NEW IOSL,IOM,IOST
  1. S IOSL=999,IOM=80,IOST="P-OTHER80"
  1. U IO D PRINT^APCHPMH
  1. U IO W $C(9)
  1. ;
  1. I $$TMPFL^BQIUL1("C") 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. I $$TMPFL^BQIUL1("C") G DONE
  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)="T01024REPORT_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