GetFieldSubComponent

Returns the HL7 field contents within the message structure specified by the field number, repeat number
and component number.  The field number, repeat number and component number is defined in the
segment definition layout.

Syntax

[ FieldBuff = String] =  object.GetFieldSubComponent [ nMsgId = Integer], [ nFieldNbr = Integer]
                                                                                   [ nRepeatNbr = Integer], [ nComponentNbr = Integer]
                                                                                  [ nSubComponentNbr = Integer]  

The GetFieldComponent method syntax has these parts:

Part Description
object An object expression that evaluates to the HL7 control.
nMsgId A integer expression that specifies the message Id.
nFieldNbr A integer expression that specifies the field number within the segment.
nRepeatNbr A integer expression that specifies the repeat number within the field.
nComponentNbr A integer expression that specifies the component number within the field.
nSubComponentNbr A integer expression that specifies the subcomponent number within the component.


Returns

Value Description
FieldBuf A string expression that will contains the field contents.


Remarks

GetFieldSubComponent of an object is initiated at runtime. The GetFieldSubComponent is called to extract field
contents from a component within a field within an HL7Message.  If nRepeatNbr is > 1, its assumed that the field
is a repeating field.  If nComponentNbr does not exists an error will error.    If nSubComponentNbr does not exists an
error will error.  Its assumed that the programmer understands the incoming message structure.

Example

Private Sub ShowMessage()
    Dim nSendMsgId As Integer
    Dim nRecvMsgId As Integer
    Dim sSeg As String
    Dim nCount As Integer
    Dim nFieldCount As Integer
    Dim sMsg As String
    Dim bSuccess As Boolean


    Hl7cntl1.EnvelopSupport = False

    nSendMsgId = Hl7cntl1.InitMessage

    Hl7cntl1.SetSegment nSendMsgId, "MSH"
    Hl7cntl1.SetField nSendMsgId, "|", 1
    Hl7cntl1.SetField nSendMsgId, "^~\&", 2
    Hl7cntl1.SetField nSendMsgId, "GPMS", 3
    Hl7cntl1.SetField nSendMsgId, "DEMO", 4
    Hl7cntl1.SetField nSendMsgId, "HL7DEMO", 6
    Hl7cntl1.SetField nSendMsgId, "19911030140014865", 7
    Hl7cntl1.SetField nSendMsgId, "ADT", 9
    Hl7cntl1.SetFieldComponent nSendMsgId, "A28", 9, 0
    Hl7cntl1.SetField nSendMsgId, "14001U090", 10
    Hl7cntl1.SetField nSendMsgId, "D", 11
    Hl7cntl1.SetField nSendMsgId, "2.2", 12

    Hl7cntl1.SetSegment nSendMsgId, "EVN"
    Hl7cntl1.SetField nSendMsgId, "A28", 1
    Hl7cntl1.SetField nSendMsgId, "19911030140014865", 2

    Hl7cntl1.SetSegment nSendMsgId, "PID"
    Hl7cntl1.SetField nSendMsgId, "1", 1
    Hl7cntl1.SetField nSendMsgId, "123", 3
    Hl7cntl1.SetField nSendMsgId, "Bill" & "^" & "Gates" & "^" & """", 5
    Hl7cntl1.SetField nSendMsgId, "01/01/1956", 7
    Hl7cntl1.SetField nSendMsgId, "M", 8
    Hl7cntl1.SetField nSendMsgId, "100 Microsoft Rd" & "^" & "Suite 100" & "^" & "Seattle" & "^" & "WA" & "^" &          "10010", 11
    Hl7cntl1.SetField nSendMsgId, "M", 16
    Hl7cntl1.SetField nSendMsgId, "111-11-1111", 19
    Hl7cntl1.SetSegment nSendMsgId, "PV1"
    Hl7cntl1.SetField nSendMsgId, "1", 1
    Hl7cntl1.SetField nSendMsgId, "PCP01", 7

    Hl7cntl1.SetSegment nSendMsgId, "GT1"

    sMsg = Hl7cntl1.GetMessage(nSendMsgId)
   
    Hl7cntl1.DeInitMessage nSendMsgId


    nRecvMsgId = Hl7cntl1.InitMessage
    bSuccess = Hl7cntl1.SetMessage(nRecvMsgId, sMsg)
    If bSuccess = True Then
        sSeg = Hl7cntl1.GetNextSegment(nRecvMsgId)
        While sSeg <> ""
            MsgBox sSeg
            nFieldCount = Hl7cntl1.GetFieldCount(nRecvMsgId)
            For nCount = 1 To nFieldCount
                MsgBox Hl7cntl1.GetFieldSubComponent(nRecvMsgId,  nCount, 1, 1, 1)
            Next nCount
            sSeg = Hl7cntl1.GetNextSegment(nRecvMsgId)
        Wend
    End If
    Hl7cntl1.DeInitMessage nRecvMsgId
End Sub
.
..
...

 

Back to Home Page.

This page, and all contents, are Copyright © 1998 by Gary M. Gallagher.
Sparrow Technologies Incorporated - http://www.sparrow-technologies.com