HL7Input Help

One Star

HL7Input Help

Hello,
I am having a few issues importing a HL7 file into my database. I am using the tHL7Input component and I have defined the schema for each segment that I want want to import. I am able to view each segment using tLogRow, but I am not sure how to import the file into my table with the needed identifiers. I would like to combine data from the message header with the results so that I can tie everything together, but each segment has a different schema. Is it possible to combine the the message header with different segments of the message? I tried using tMap but it will only let me map 1 segment or row to it.
Hopefully that all makes sense, basically I just need to find a way to combine one schema with another from the component. I have attached an image of what I have so far.
Any help would be much appreciated. Thanks.
Community Manager

Re: HL7Input Help

Hi
tMap is the best component for combining the message header with different parts. Can you show us an example of segments and what are your expected result?
Best regards
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
One Star

Re: HL7Input Help

Here is a sample HL7 message:
MSH|^~\&|1100|PO|XXXX|TE123456|201106090936||ORU^R01|0416|P|2.3
PID|1|U3WD|12499412480|U3WD|LASTNAME2^TIM^Q||19910719|M|||8378 EVERYWHERE STREET^^BURLINGTON^NC^27215-||(555)436-4678|||||74320000^^^03^^F^Y|304786204
ORC|RE|12499412480^LAB|12499412480^LAB||||||201105040000|||576E6Q^HEALER^M^^^^^U
OBR|1|12499412480^LAB|12499412480^LAB|005009^CBC With Differential/Platelet^L|||201105041536|||||||201105041521||||0420966744||12499412480||201105041558|||F
OBX|1|NM|005025^WBC^L||40.0|x10E3/uL|4.0-10.5|HH||N|F|20081208||201105041523|01
OBX|2|NM|005033^RBC^L||2.54|x10E6/uL|4.10-5.60|LL||N|F|||201105041523|02
OBX|3|NM|005041^Hemoglobin^L||22.5|g/dL|12.5-17.0|>||N|F|20081208||201105041523|03
OBX|4|NM|005058^Hematocrit^L||65.4|%|36.0-50.0|>||N|F|20081208||201105041523|04
OBX|5|CE|015065^MCV^L||TNP|fL||A||N|X|20081208||201105041523|04
NTE|1|L|Duplicate determinations did not agree. Specimen quantity
NTE|2|L|insufficient to repeat.
OBX|6|NM|015073^MCH^L||30.0|pg|27.0-34.0|||N|F|20081208||201105041523|04
OBX|7|NM|015081^MCHC^L||30.1|g/dL|32.0-36.0|L||N|F|20081208||201105041523|04
OBX|8|NM|105007^RDW^L||17.7|%|11.7-15.0|H||N|F|20081208||201105041523|04
OBX|9|NM|015172^Platelets^L||29|x10E3/uL|140-415|<||N|F|20090522||201105041523|04
OBX|10|NM|015107^Neutrophils^L||82|%|40-74|H||N|F|20081208||201105041523|04
OBX|11|NM|015123^Lymphs^L||14|%|14-46|||N|F|20081208||201105041523|04
OBX|12|NM|015131^Monocytes^L||4|%|4-13|||N|F|20081208||201105041523|04
OBX|13|NM|015149^Eos^L||0|%|0-7|||N|F|20081208||201105041523|04
OBX|14|NM|015156^Basos^L||0|%|0-3|||N|F|20010402||201105041523|04
OBX|15|NM|015909^Neutrophils (Absolute)^L||13.4|x10E3/uL|1.8-7.8|H||N|F|20081208||201105041523|04
OBX|16|NM|015917^Lymphs (Absolute)^L||2.3|x10E3/uL|0.7-4.5|||N|F|20081208||201105041523|04
OBX|17|NM|015925^Monocytes(Absolute)^L||0.7|x10E3/uL|0.1-1.0|||N|F|20081208||201105041523|04
OBX|18|NM|015933^Eos (Absolute)^L||0.0|x10E3/uL|0.0-0.4|||N|F|20081208||201105041523|04
OBX|19|NM|015941^Baso (Absolute)^L||0.0|x10E3/uL|0.0-0.2|||N|F|20081208||201105041523|04
OBX|20|NM|015108^Immature Granulocytes^L||0|%|0-1|||N|F|20110523||201105041523|04
NTE|1|L| **Please note reference interval change**
OBX|21|NM|015911^Immature Grans (Abs)^L||0.0|x10E3/uL|0.0-0.1|||N|F|20100405||201105041523|04
OBX|22|NM|015945^NRBC^L||0|%|0 - 0|||N|F|20100201||201105041523|04
OBX|23|TX|015180^Hematology Comments:^L|||||||N|X|||201105041523|04
ZPS|1|01|Testing ISO Programming|309 E Davis St^^Burlington^NC^272150000|8003345161||^Testing Dept^M Atkins
ZPS|2|02|EDI Testing Lab|555 Anywhere Street^^Anywhere^NC^272150000|3365550001||MD^Pathologist^Testing^^^^MD
ZPS|3|03|LabCorp Read Blvd Stat Lab|10000 I 10 Service Road Read Blvd^^New Orleans^LA^701270000|5042450985||MD^Sartin^Barry^W^^^MD
ZPS|4|04|LabCorp Burlington|1447 York Court Testing^^Burlington^NC^272150000|3365845171||VP^Doe^John^^^^VP
A simple example of what I want is to take the date/time the message was sent from the MSH segment, the patient first name, last name etc. from the PID segment, and then combine these values to each OBX segment when I import these into a MSSQL table. I can then using this information to match the data to a patient once it is imported.
I tried using tMap, but I do not seem to be able to join more than 1 segment from the HL7Input to the the component at one time. I have even tried using multiple tMap components (picture attached) but it still does not work.
I know that it is something simple that I am doing wrong, but I am stumped. Thanks.
One Star

Re: HL7Input Help

Anyone have any ideas? I simply need to import the HL7 file into a table, but I just need a way to link each segment back to the message header since each one is inserted as a separate row.
One Star

Re: HL7Input Help

Hi stewart
were you able to resolve this? i am also stuck attempting to import hl7 messages into a sql server database. appreciate your feedback.
thanks
One Star

Re: HL7Input Help

Hi rppablo,
I never was able to figure out how to do it using the Talend connector. I ended up using another open source tool called Mirth Connect (http://www.mirthcorp.com/community/mirth-connect). I was able to setup an interface to monitor a folder for new HL7 files, then parse the files using a custom transformer written in Javascript. Here is an example: http://www.mirthcorp.com/community/wiki/display/mirth/Mapping+Multiple+Segments+to+a+Database
It takes a few days to get the hang of the Mirth software, but it works really well. Let me know if you have any questions getting started and I will try to point you in the right direction.
One Star

Re: HL7Input Help

how to consume multiple OBX using Talend ETL. 
Community Manager

Re: HL7Input Help

how to consume multiple OBX using Talend ETL. 

Hi
This topic was a little old, can you please report a new topic for your question with details.
Best regards
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
Four Stars

Re: HL7Input Help

Hi,
I want to load the HL7 messages into MySQL database using talend.
Here i need to load 1000 messages that belongs to different patients.
From these messages i have to extract the demographics like name, dob, gender etc,, put it in a table and take the admit details alone and put them in a seperate table.
Can any one help me with this. I have been trying but couldn't get the desired output.
One Star

Re: HL7Input Help

Hi,
I want to load the HL7 messages into MySQL database using talend.
Here i need to load 1000 messages that belongs to different patients.
From these messages i have to extract the demographics like name, dob, gender etc,, put it in a table and take the admit details alone and put them in a seperate table.
Can any one help me with this. I have been trying but couldn't get the desired output.