Ingo Steiger · Nov 11, 2020
leading zeros

Hallo, I need a Ensemble transformation to fill up a 6 or 7 digit Number to a 10 digit string with leading zeros.

123456 --> 0000123456

1234567 --> 0001234567

Thank you!

0 4 186
Paul Hula · Nov 2, 2020

Hi All,

  I know hundreds of people have done this but I'm looking for some DTL's as a start to do HL7 to FHIR, I appreciate everyone's HL7 is slightly different, but just some starter DTL's would be much appreciated?  Can anyone help?




0 2 203
Kyle M · Sep 21, 2020
suppressing a patient identifier

Hi all

Another newbie question.

A small percentage of our patients have an extra hospital number which was imported from the previous PAS but is no longer in use. We only need to send MRN and NHS number and would like to suppress CMRN. Could you please advise me how to do it in DTL?


0 5 151

- Currently we are receiving one NTE (See Below) from the source system

NTE|1|Result Comment|TESTING:\.br\\.br\This is a test results.  \.br\\.br\This test is a Test.


- We would like to create multiple NTE segments and send to destination system by using ".\br\"(Line Break)



NTE|3||This is a test results.


NTE|5||This test is a Test.

0 1 169

We have a data transformation where source is object collection (populated from a json file)  and target is EnsLib.EDI.XML.Document.

If source file is large enough, transformation fails and we get <store> error and I quickly found this: which at the bottom in "Avoiding <STORE> Errors with Large Messages" section tells to: 

0 1 177
Paul Hula · Dec 5, 2019


   I've heard from two different sources the SMP (or parts of it) and for sure the DTL front end (in studio? via SMP?) have been rewritten to be more modern.  But on a latest IRIS Community download everything looks the same to me.  Am I missing something or is this Marketting Spin?




  Hopefully I won't get banned for this post aswell......


0 2 186
Cedric Daniels · Feb 8, 2019
CCD to HL7

I'm a beginner using HealthConnect.  Trying to bring in a CCD and transform it to a HL7 messages.  Is there any documentation on how to accomplish this?  thanks!

0 2 407

Hi Community,

I am trying to remove a duplicate OBX from a result, but I am running into some issues. Let me explain.

First I had a OBX where the observation Value had the blood type in it and the following OBX had the result in it.

The clients wants the blood type and the result in one field. therefore I merged / concatenated the observation values of the two OBX's.

I tried removing the OBX:2 but just cant take the whole segment out. 

please see examples below

This is the result.

0 4 265


I have a DTL to transform X12 Document 278 Request to 278 Response HIPAA 5010 schema. The DTL is called from BPL. I defined a class method that receives source, target, and context objects. How can I create 2000F loops in the response when there were none in the source object?

0 2 168

Hello, our Team is trying to develop Ensemble DTL to transform incoming X12 files into persistent data records. We created a persistent class and we can insert data using SQL. We tried to verify that %Save() gets called by adding %AddToSaveSet() method to persistent class and there writing to a global. We had to extend our persistent class with Ens.VDoc.Interface class or we could not see %Save() being called from Ensemble DTL. We suspect that %Save() gets some kind of error. We tried to debug by overwriting Transform() method in our DTL class.

0 3 396

Hi, guys,

I've written a DT for a partner which transfers a csv file into SDA3. 

I', using record map to gather data from a folder storing csv files and using the DT to tranfer the records into sda3 entities.

The followings are the codes of that DT:

Class POC.DT.CSV2SDA3 Extends Ens.DataTransformDTL [ DependsOn = (User.PhysicalExam.Record, POC.SDA.Container) ]



Parameter REPORTERRORS = 1;


0 0 187

We have one user that is having issues in Ensemble via browser. The two issues she reported are:

- If she opens a DTL, she has to Save or Compile the DTL before she is able to edit anything in the Actions tab. Typically, you can simply open the DTL, click on a line, and edit the Actions.

- If she opens the Tools tab and clicks the Test button, she does not get a response and it eventually times out on her. Typically, clicking the Test button will open a new window where you can paste a message to test your DTL with.

0 2 147

I came across How to import a tab separated text file into a SQL table programmatically?, which appears to indicate that I can pass the filename and all records will be imported. However, when I put use the Import method only a single record gets imported. However, all records are imported if I use the management console to import the file by selecting it and choosing the options.

Has anyone ran into this in the past?

0 3 451
Jack Smith · Jan 9, 2018
Complex Record Map non-batch?

I would need to build a Complex Record Map and then transform that into xml. But not the whole batch to one xml file - instead every repetition in that Complex Record Map would become one xml file. 


For Simple Record Maps this is easy to do because there are different types of Business Services that handle every record either individually or all of them as one batch but there doesn't seem to be similar options for Complex Record Maps? Instead, there is only batchtype business services.

0 1 270

So this may sound trivial, but I'm seeing conflicting information on this topic and hoping to get clarification.


According to Enslib.HL7.Message class definition, the maxlength of RawContent is 10,000 characters. So when using encoding like UTF-8, that is 10KB. When using Unicode, that should then be 20KB.

But then also coming across some forums and documents where 32KB is maximum size before HL7 fields are truncated.


What is the sure way to determine and modify an interface's maximum supported message size?

0 6 1,760
Thembelani Mlalazi · Nov 6, 2017
Looping through a DTL

I have a DTL that reads an xml file and I want transform that to a list of objects but I have a problem looping through my xml as when I try I get the first instance on the xml not the whole XML being transformed. here is my example. Here is the output



0 1 368

I have a batch record mapper that reads a csv file and passes the message to a process that uses the EnsLib.MsgRouter.RoutingEngine and would like to pass the message to an operation that will output that as a XML file but so far been unlucky as the operation that I use , uses the EnsLib.EDI.XML.Operation.FileOperation which only works with the messages("BusinessOperation class for writing XML messages to a file.

0 2 623

Hello Community,

I need advice converting a comma delimited string container with multiple records into some type of recordmap that iterates through all the records.

My string container has several records and I would like to loop through the number of records in the string container and transform each record in the container individually. Number of records will vary but the number of fields per record is static (28 fields). Meaning after every 28 fields, a new record begins. The goal is to convert to individual delimited flat file records.

0 2 315

I  have a business service that brings in a xml virtual document to the production and also a csv service  that brings in a csv file and have a process that transforms both to a xml output  but I have a problem with the csv as it is giving me this error when I try to trans form it ```ERROR <Ens>ErrException: <PROPERTY DOES NOT EXIST>zOnRequest+1 ^EnsLib.MsgRouter.VDocRoutingEngine.1 *DocType``` I have read here followed the suggestion but now I do not get any errors but my m

0 5 346



I've got a Service that get ACK Messages originated by another system. 


I want to get the details of a Message when the ACK is CE (Failed Message).


I don't know whether this is the best approach but, at the moment, I have a DTL and I would like to search the Cache Database for a Message with the Control ID on the ACK in the MSA segment.


Any help with this would be great.



0 11 503

Consider the below scenario:

1. HL7 Service -> Process

2. DTL makes a call to a webservice (Post) via a REST operation via SendRequestSync call.

        a. if the post is successful, end the DTL

        b. if the server that hosts the webservice is down, i would like to keep retrying with the same message and not lose any messages in the queue.

does a simple "quit 0" at the DTL will  rollback the message and will retry? please let me know how not to lose any messages if the webservice server is down.

Appreciate it.

1 8 311