Anyway to Create Multiple transactions using an Ensemble transformation

Primary tabs

Ensemble

I have a transformation that the incoming schema is an XML file and I will need to write multiple HL7 transactions.  Is there anyway to do this? 

Replies

Yes, you can loop through items in your source document and generate one HL7 message for each. 

In this case the looping would be done in a business process (BPL), and you would call the transformation once for each outbound HL7 message.

If each Encounter element in the document contains all of the data necessary to create your individual HL7 messages, you could potentially use the EnsLib.XML.Object.Service.FileService (or FTPService) class for a Business Service that will "chunk" the document into individual Encounter documents. Those would then be mapped to HL7 via a routing rule and DTL ... no BPL required. You'll need to create an Encounter class that matches the Encounter element structure; this will be used subsequently for creating routing rules and DTLs.

The problem is not transforming the XML to HL7 the issue I need to write multiple HL7 records from the one XML file.  So there is a repeating Encounter Container that I need to write a HL7 transaction (MSH, PID, PV1) for each Encounter - just wondering is there anything within the transformation that can trigger multiple writes of transactions for 1 record read.