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

BEHOCACV.m

Go to the documentation of this file.
  1. BEHOCACV ;MSC/IND/DKM - CWADF ;18-Dec-2012 10:55;PLS
  1. ;;1.1;BEH COMPONENTS;**029003,029004**;Sep 18, 2007
  1. ;=================================================================
  1. ; Return posting list for patient
  1. LIST(DATA,DFN) ;
  1. S DATA=$NA(^TMP("TIUPPCV",$J))
  1. D GET(DFN)
  1. Q
  1. ; Return allergy/adverse reaction info in report format
  1. DETAIL(DATA,DFN) ;
  1. N CNT,LP,LP2,RXN,SEV,X
  1. S DATA=$$TMPGBL^CIAVMRPC,(CNT,LP)=0
  1. D EN1^GMRAOR1(DFN,"RXN")
  1. S @DATA@(1)=$S($G(RXN)="":"No allergy assessment.",'RXN:"No known allergies.",1:"No allergies found.")
  1. F S LP=$O(RXN(LP)) Q:'LP D
  1. .S X=RXN(LP),SEV=$P(X,U,2)
  1. .D ADD($P(X,U)_" [Severity: "_$S($L(SEV):SEV,1:"Unknown")_"]")
  1. .S X=" Signs/symptoms:",LP2=0
  1. .F S LP2=$O(RXN(LP,"S",LP2)) Q:'LP2 D ADD($P(RXN(LP,"S",LP2),";"),.X)
  1. Q
  1. ; RPC to return CWAD flags
  1. CWAD(DATA,DFN) ;
  1. S DATA=$$CWADX(DFN)
  1. Q
  1. ; Return CWAD flags
  1. CWADX(DFN) ;
  1. N ACRN,CTR,LST
  1. D GET(DFN)
  1. S LST="cwadf",CTR=0
  1. F S CTR=$O(^TMP("TIUPPCV",$J,CTR)) Q:(CTR'>0)!(LST?4U) S ACRN=$P($G(^(CTR)),U,2) D:$L(ACRN)=1
  1. .S:"CWADF"[ACRN LST=$TR(LST,$C($A(ACRN)+32),ACRN)
  1. K ^TMP("TIUPPCV",$J)
  1. Q $TR(LST,"cwadf")
  1. ; Add to output array
  1. ADD(TXT,LBL,IDT) ;
  1. S CNT=CNT+1,@DATA@(CNT)=$S($D(LBL):$$LJ^XLFSTR(LBL,$G(IDT,20)),1:"")_$G(TXT),LBL=""
  1. Q
  1. ; Get CWAD and PRF flags
  1. GET(DFN) N PRF,CNT,RES
  1. K ^TMP("TIUPPCV",$J)
  1. Q:'DFN
  1. D ENCOVER^TIUPP3(DFN)
  1. S RES=$$GETACT^DGPFAPI(DFN,"PRF")
  1. S PRF=0,CNT=$O(^TMP("TIUPPCV",$J,""),-1)
  1. F S PRF=$O(PRF(PRF)) Q:'PRF D
  1. .N X,Y
  1. .S Y=$O(^DGPF(26.13,"C",DFN,$P(PRF(PRF,"FLAG"),U),0))_"^F"
  1. .F X="2^FLAG","2^FLAGTYPE","1^ASSIGNDT" S Y=Y_U_$P($G(PRF(PRF,$P(X,U,2))),U,+X)
  1. .S CNT=CNT+1,^TMP("TIUPPCV",$J,CNT)=Y_U_PRF
  1. Q
  1. ; Get patient record flag detail
  1. PRF(DATA,DFN,IEN) ;
  1. N CNT
  1. S DATA=$$TMPGBL^CIAVMRPC,CNT=0
  1. I '$G(IEN) D
  1. .S IEN=0
  1. .F S IEN=$O(^DGPF(26.13,"B",DFN,IEN)) Q:'IEN D
  1. ..Q:'$P($G(^DGPF(26.13,IEN,0)),U,3)
  1. ..D:CNT ADD($$REPEAT^XLFSTR("_",80)),ADD("")
  1. ..D PRFX(DFN,IEN)
  1. E D PRFX(DFN,IEN)
  1. Q
  1. ; Get patient record detail for a single entry
  1. PRFX(DFN,IEN) ;
  1. N PRF,CTL
  1. I $$GETASGN^DGPFAA(IEN,.PRF),$$GETHIST^DGPFAAH($$GETFIRST^DGPFAAH(IEN),.PRF),$$GETFLAG^DGPFUT1($P(PRF("FLAG"),U),.PRF) D
  1. .Q:+$G(PRF("DFN"))'=DFN
  1. .D:'CNT ADD($$GET1^DIQ(2,DFN,.01),"Patient:",25),ADD("")
  1. .F CTL="FLAG^Flag Name","TYPE^Flag Type","STATUS^Assignment Status","ASSIGNDT^Initial Assigned Date","APPRVBY^Approved by","REVIEWDT^Next Review Date","OWNER^Owner Site","ORIGSITE^Originating Site" D
  1. ..D ADD($P(PRF($P(CTL,U)),U,2),$P(CTL,U,2)_":",25)
  1. .I $D(PRF("NARR")) D
  1. ..D ADD(""),ADD("Assignment Narratives:"),ADD("")
  1. ..M @DATA@(CNT)=PRF("NARR")
  1. ..S CNT=CNT+1
  1. Q