GetSubFieldValue() |
Top Previous Next |
<----------New In Version 4.x----------> Object: EHL7.EHL7Message FileName: EHL7.dll
METHOD
Name: GetSubFieldValue() Parameters: 1) oSegment (Segment Object) 2) nFieldNumber (Long) index of the data field in the segment (1-xxx) to get value from 3) nFieldComponent (Long) which component of the field element to get value from 4) nFieldSubComponent (Optional Long) default = 1.
Returns: String Description: Returns the value from a sub-component of a field element of a segment. If an error occurs IsError is set to true
Programming Note: Calling GetSubFieldValue() with a 1 in the 4th parameter on a field without subcomponents is the functional equivalent of calling GetFieldValue()
See Also: SetFieldValue(), SetSubFieldValue()
Example: Private Sub MessageTest() Dim myVendorObj As New EHL7.HL7Vendors Dim myMsg As New EHL7.EHL7Message Dim strVendorID As String Dim oSegment As Object Dim oMSH As Object Dim i As Long myVendorObj.VendorPath = "C:\EasyHL7" strVendorID = myVendorObj.GetVendorID("Default","2.3") If strVendorID = "" Then MsgBox myVendorObj.LastError Set myVendorObj = Nothing Exit Sub End If If Not MyVendorObj.OpenVendor(strVendorID) Then MsgBox myVendorObj.LastError Set myVendorObj = Nothing Exit Sub End If With myMsg Set oMSH = .CreateMessage(myVendorObj) 'Do some processing of the MSH Segment If .IsError Then MsgBox .LastError .ClearErrors Exit Sub End If 'Add a patient identifier segment Set oSegment = .AddSegment("PID") If .IsError Then MsgBox .LastError .ClearErrors Exit Sub End If 'Add the patient's name .SetFieldValue "Smith", oSegment, 5, 1 .SetFieldValue "John", oSegment, 5, 2 .SetFieldValue "J", oSegment, 5, 3 .SetFieldValue "Jr", oSegment, 5, 4 .SetFieldValue "Mr", oSegment, 5, 5 .SetFieldValue "Dr&PHD", oSegment, 5, 6 'Another way to Set a field value is to pass 0 in nComponent and a delimited string .SetFieldValue "Smith^John^J^Jr^Mr^Dr&PHD", oSegment, 5, 0 'Add the Patient's Sex only 1 component for field 8 so I can 'ignore the 4th parameter .SetFieldValue "M", oSegment, 8 'Now get the values back out. 'Show the first name MsgBox "The first name is: " & .GetFieldValue(oSegment,5,2) 'Show everything MsgBox "Patient name field = " & .GetFieldValue(oSegment,5,0) MsgBox "The Patients 2nd Degree = " & .GetSubFieldValue(oSegment,5,6,2) End With End Sub
|