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

DGHTXREF.m

Go to the documentation of this file.
  1. DGHTXREF ;ALB/JRC - Home Telehealth HL7 Message Monitoring Routine ;10 January 2005 ; 9/12/06 2:02pm
  1. ;;5.3;Registration;**644**;Aug 13, 1993;Build 11
  1. ;
  1. ;This routine is called to set or remove cross references on
  1. ;file Home Telehealth Patient file (#391.31)
  1. ;
  1. SETXREF(MSGID,SET,TYPE) ;Logic for "HTHNOACK" cross references of
  1. ; HOME TELEHEALTH PATIENT file (#391.31)
  1. ;
  1. ;Input : MSGID - HL7 Message ID
  1. ; SET - If 1, set cross reference
  1. ; If 0, kill cross reference
  1. ; TYPE - If 1, set triggered by tasked job
  1. ; If 0, set triggered by manual process
  1. ; demands special processing
  1. ; OLDMSGID - If there is an old message id
  1. ; xref needs to be removed.
  1. ;
  1. ;Output : None
  1. ;
  1. ;Check input
  1. Q:'$G(MSGID)!'$G(SET)
  1. ;Check hl7 message, if status=3 make sure no xref exist and quit
  1. I +$$MSGSTAT^HLUTIL(MSGID)=3 D KILLXREF(MSGID) Q
  1. ;Declare variables
  1. N RECORD,TRANS,NODE0,TNODE,EVNTDATE,ACKCODE,CNT
  1. ;Set date and count if exist
  1. S EVNTDATE=$G(DGDATE),CNT=$S($G(DGCOUNT)'="":DGCOUNT+1,1:0)
  1. ;Get ien and sien of hth patient record and set nodes
  1. S RECORD=$O(^DGHT(391.31,"D",MSGID,0)) Q:'RECORD
  1. S TRANS=$O(^DGHT(391.31,"D",MSGID,RECORD,0)) Q:'TRANS
  1. S NODE0=$G(^DGHT(391.31,RECORD,0)),TNODE=$G(^("TRAN",TRANS,0))
  1. ;Check HTH file (#391.31) for AA, if so kill xref and quit
  1. I ($P(TNODE,U,6)'="")!($P(TNODE,U,7)'="") D KILLXREF(MSGID) Q
  1. ;Get event date/time
  1. S EVNTDATE=$S(TYPE=1:DGDATE,TYPE=0:$P(TNODE,U,1),1:"")
  1. ;No event date/time - don't set x-ref
  1. Q:('EVNTDATE)
  1. ;Kill old xref if exist, then set the new xref
  1. D KILLXREF(MSGID)
  1. S ^DGHT(391.31,"HTHNOACK",MSGID,RECORD,TRANS)=CNT_U_EVNTDATE
  1. Q
  1. ;
  1. KILLXREF(MSGID) ;Kill x-ref
  1. K ^DGHT(391.31,"HTHNOACK",MSGID)
  1. Q