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

IBRFIHLI.m

Go to the documentation of this file.
  1. IBRFIHLI ;TDM/DAL - Incoming HL7 messages ; 12/30/15 11:45am
  1. ;;2.0;INTEGRATED BILLING;**547**;21-MAR-94;Build 119
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. ;**Program Description**
  1. ; This program parses each incoming HL7 message.
  1. ;
  1. EN ; Starting point - put message into a TMP global
  1. ;
  1. N ACK,BUFF,DFN,ERACT,ERCON,ERFLG,ERTXT,EVENT,HCT,HLECH,HLEID
  1. N HLEIDS,HLFS,HLQ,IBPRTCL,IDUZ,MGRP,MSGID,RDAT0,RIEN,SBDEP,SEG
  1. N SEGMT,SEGMT2,TAG,TQN,TRACE,VRFDT,DISYS,IPCT,PAYRID,PIEN,CNT
  1. N ERROR,IRIEN,RSTYPE,SUBID,TQIEN
  1. N DA,EBDA,IBFDA,II,MSGP,SYMBOL,IBSEG,PP,PRIEN,QFL,IBIEN,TQDATA,IBQFL
  1. N DATA,OBXDATA,PSLDATA,HLQUIT,HLNODE,HLNEXT
  1. ;
  1. S HLQUIT=0,HLNODE="",HLNEXT="D HLNEXT^HLCSUTL"
  1. K ^TMP($J,"IBRFIHLI")
  1. F SEGCNT=1:1 X HLNEXT Q:HLQUIT'>0 D
  1. .S CNT=0
  1. .S ^TMP($J,"IBRFIHLI",SEGCNT,CNT)=HLNODE
  1. .F S CNT=$O(HLNODE(CNT)) Q:'CNT D
  1. ..S ^TMP($J,"IBRFIHLI",SEGCNT,CNT)=HLNODE(CNT)
  1. ;
  1. ; Get the interface user
  1. S IDUZ=$$FIND1^DIC(200,"","X","INTERFACE,IB RFI")
  1. ; Determine which protocol to use
  1. S SEGMT=$G(^TMP($J,"IBRFIHLI",1,0))
  1. Q:$E(SEGMT,1,3)'="MSH"
  1. S HLFS=$E(SEGMT,4)
  1. S EVENT=$P(SEGMT,HLFS,9),IBPRTCL=""
  1. ;
  1. ; The event type determines protocol
  1. I EVENT="EHC^E12" S IBPRTCL="IBRFI 277 IN"
  1. ;
  1. ; Initialize the HL7 variables
  1. D INIT^HLFNC2(IBPRTCL,.HL)
  1. ;
  1. ; Call the event tag
  1. D PROC
  1. ;
  1. XIT K ^TMP($J,"IBRFIHLI"),HL,HLNEXT,HLNODE,HLQUIT,SEGCNT
  1. Q
  1. ;
  1. PROC ; Process message
  1. D ^IBRFIHL1
  1. ;
  1. K ACK,BUFF,DFN,ERACT,ERCON,ERFLG,ERTXT,EVENT,HCT,HL,HLECH,HLEID
  1. K HLEIDS,HLFS,HLQ,IBPRTCL,IDUZ,MGRP,MSGID,RDAT0,RIEN,SBDEP,SEG
  1. K SEGMT,SEGMT2,TAG,TQN,TRACE,VRFDT,DISYS,IPCT,PAYRID,PIEN
  1. K ERROR,IRIEN,RSTYPE,SUBID,TQIEN
  1. K DA,EBDA,IBFDA,II,MSGP,SYMBOL,IBSEG,PP,PRIEN,QFL
  1. Q