Tracing an HL7 message
Contents
In this example we have created an Out message and we want to check it its contents:
- When it is created to confirm it is empty.
Note: we did not need to use
trace()as clicking on ADT at the end of line 6 will open the same message. - After we used
mapTree()to copy the Msg to Out,trace()shows that the whole message was copied. - When we use
mapRange()to copy part of Msg to Out2,trace()shows that only the first two segments were copied.
Here is the code if you want to try it out:
function main(Data)
local Msg = hl7.parse{vmd = 'demo.vmd', data = Data}
local Out = hl7.message{vmd = 'demo.vmd', name = Msg.MSH[9][1]:nodeValue()}
-- the first trace() shows the empty message
trace(Out)
-- NOTE: you can also click ADT at the end of line 6 to view this message
-- Map the all segments from the incoming message to the outgoing message
Out:mapTree(Msg)
trace(Out)
-- However if you only want to see demographic info for patient
local Out2 = hl7.message{vmd = 'demo.vmd', name = Msg.MSH[9][1]:nodeValue()}
Out2:mapRange(Msg, 1, 2)
trace(Out2)
end
Continue: Tracing multiple variables