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

BTIUPDD3.m

Go to the documentation of this file.
  1. BTIUPDD3 ; IHS/MSC/MGH - Problem and OB by entry date ;25-May-2016 16:23;DU
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**1017**;MAR 20, 2013;Build 7
  1. ;
  1. Q
  1. ;
  1. ;
  1. ;Get the problems associated with this visit and only the latest or items updated during this visit
  1. VST(DFN,TARGET,VIEN) ;Problems updated this visit
  1. N PROB,CNT,RET,I,VST
  1. S CNT=0
  1. K @TARGET
  1. S VIEN=$G(VIEN)
  1. I VIEN'="" G GETPRB
  1. S VST=$$GETVAR^CIAVMEVT("ENCOUNTER.ID.ALTERNATEVISITID",,"CONTEXT.ENCOUNTER")
  1. I VST="" S @TARGET@(1,0)="Invalid visit" Q "~@"_$NA(@TARGET)
  1. S VIEN=+$$VSTR2VIS^BEHOENCX(DFN,VST) I VST<1 S @TARGET@(1,0)="Invalid context variables" Q "~@"_$NA(@TARGET)
  1. D GETPRB
  1. I CNT=0 S @TARGET@(1,0)="No Problems used as POVs in this visit record"
  1. Q "~@"_$NA(@TARGET)
  1. ;
  1. GETPRB ;Get problems to update
  1. N POV,PRIEN,PCNT,ARRAY
  1. S ARRAY=""
  1. I $G(VIEN)="" S @TARGET@(1,0)="Invalid visit" Q "~@"_$NA(@TARGET)
  1. S PCNT=0,PRIEN=0
  1. F S PRIEN=$O(^AUPNPROB("AC",DFN,PRIEN)) Q:'PRIEN D
  1. .;Check for which statuses to return
  1. .S STAT=$P($G(^AUPNPROB(PRIEN,0)),U,12)
  1. .Q:STAT="D"
  1. .I $D(^AUPNPROB(PRIEN,14,"B",VIEN)) D
  1. ..D GETDATA(.ARRAY,PRIEN,VIEN)
  1. ;IHS/MSC/MGH Patch 1014
  1. D ADDITMS(.ARRAY)
  1. Q
  1. GETDATA(ARRAY,PRIEN,VIEN) ;Get data for a problem
  1. N NARR,STATUS,ICD
  1. Q:'+PRIEN
  1. S NARR=$$POV^BTIUPDD(VIEN,PRIEN)
  1. Q:$P(NARR,U,1)=""!($P(NARR,U,2)="")!($P(NARR,U,3)="")
  1. S ARRAY($P(NARR,U,2),$P(NARR,U,3),$P(NARR,U,1),PRIEN)=""
  1. Q
  1. ;S NARR=$$GET1^DIQ(9000010.07,POV,.04)
  1. ADDITMS(ARRAY) ;Get items in order
  1. N STAT,NARR,PRIEN,ENTRY
  1. S STAT="" F S STAT=$O(ARRAY(STAT)) Q:STAT="" D
  1. .S ENTRY="" F S ENTRY=$O(ARRAY(STAT,ENTRY)) Q:ENTRY="" D
  1. ..S NARR="" F S NARR=$O(ARRAY(STAT,ENTRY,NARR)) Q:NARR="" D
  1. ...S PRIEN="" F S PRIEN=$O(ARRAY(STAT,ENTRY,NARR,PRIEN)) Q:PRIEN="" D
  1. ....S PCNT=PCNT+1
  1. ....D ADD($J(PCNT,2)_")"_NARR_" "_"("_STAT_")")
  1. ....D QUAL^BTIUPV1(PRIEN,.CNT)
  1. ....D VOB^BTIUPV2(DFN,PRIEN,VIEN,.CNT) ;V OB notes
  1. Q
  1. ADD(DATA) ;add to list
  1. S CNT=CNT+1
  1. S @TARGET@(CNT,0)=DATA
  1. Q
  1. TMPGBL(X) ;EP
  1. K ^TMP("BGOPRDD",$J) Q $NA(^($J))