8 Followers · 515 Posts

Health Level-7 or HL7 refers to a set of international standards for the transfer of clinical and administrative data between software applications used by various healthcare providers

Learn more

Question Patty Aguirre-Romero · Jan 4, 2022

We will receive an ORM message in Business Service in Iris. From that ORM, an ADT^A31 message will be generated and sent out to the EMR before the ORM message is sent out. The ORM message has to wait until Iris receives an acknowledgement from the EMR indicating the ADT message was received. Then, the ORM message will be sent to the EMR. What do I need to set up to hold the ORM message until the acknowledgement is received? 

Thank you!

Patty Aguirre-Romero

11
0 882
Article Aya Heshmat · Oct 11, 2022 3m read

Watch the session here: HealthShare Health Connect: Tips & Tricks

Enhanced HL7 V2 Productions

1. Review of Interface Settings: Ensure these are set purposefully! (Documentation linked)

 

Review of Recent Product Features 

(Documentation Linked)

1. HL7 V2 Schema Editor

  • Drag & Drop tooling for faster schema editing!
  • Note: Add-on segments may be made optional if starting from a generic schema.

2.

0
0 324
Question Lionel Woods · Sep 12, 2022

Am trying to create a custom ACK to return to sending system as it does not accept standard 2.3:ACK, want to send the below:

 

Set pResponse=##class(EnsLib.HL7.Message).%New()
Set pResponse.DocType="2.4:ACK"
Set MSHStr="MSH|^~\&|EnsembleHL7|ISC|ARiM Server|ROWA|"_$REPLACE($REPLACE($ZDATETIME($HOROLOG,8,1),":",""), " ","")_"||ACK|"_pRequest.GetValueAt("MSH:10")_"|P|2.3"
Set MSHSeg=##class(EnsLib.HL7.Segment).ImportFromString(MSHStr,.tSC,pRequest.Separators)
Set MSAStr="MSA|AA|"_pRequest.GetValueAt("MSH:10")
Set MSASeg=##class(EnsLib.HL7.Segment).ImportFromString(MSAStr,.tSC,pRequest.

9
2 642
Question Julian Matthews · Sep 28, 2022

Hi all.

I have setup a HL7 Operation using the HTTP adapter, and I'm getting what seems to me as an unusual response. When sending a sample message to the operation, I am getting a nested ACK. For example:

MSH|^~\&|||xxx|xxx|202209230806||ACK^HTTP^200|00|D|2.1|1
MSA|AA|RWSD7V5iuEC5F6zscDWz|HTTP ACK 'HTTP/1.1 200 OK' : MSH|^~\&|yyy|yyyy|xxx|xxx|20220923080633||ACK^A01|1663916793965||2.3||||||
MSA|CR|RWSD7V5iuEC5F6zscDWz|Error Message Goes Here. 

The adapter is spotting the positive ACK in the first part of the message, but the second part is the actual response I need the adapter to be evaluating.

1
0 235
Question Lionel Woods · Sep 27, 2022

I am trying to split a HL7 message (RDE O11) into several messages depending on how many RXC segments there are in the message (Two RXC segments would need to two separate HL7 messages)

I have seen a couple of posts regarding this but am struggling with my BP using ObjectScript, the idea is to take the receiving message and split this before passing it onto another BP

Here is my code so far 

 

Class BDROWA.Transform.OVMO Extends Ens.BusinessProcess [ ClassType = persistent ]


{ Method OnRequest(pRequest As EnsLib.HL7.Message, Output pResponse As Ens.Response) As %Status


{ Set RXCCount = pRequest.

2
0 681
Question Andrew Neilson · Sep 12, 2022

I'm trying to get an ACK routed to a different process in our Test environment and here is the router setup:

I have a rule in the target router to send to an operation.

 

 

The problem I'm running into is that the HL7 ACK coming back is marked as "Discarded", so it's not even getting to the second router.

This is the ACK message:

I've tried everything I can think of, but once the ACK hits the router, it gets marked as discarded and then things just stop.

4
0 420
Announcement Anastasia Dyubaylo · Sep 10, 2022

Hey Community, 

In this demonstration you will see the building blocks of an integration in InterSystems IRIS for Health and HealthShare and see how messages are received, processed, and sent—including messages in the HL7 format:

⏯ Overview of Basic Components for InterSystems Integration Solutions

0
0 243
Job Spencer Frey · Aug 31, 2022

Hi everyone!

I am recruiting on a fully remote Intersystems Developer.  This role will be a long term contract to begin with high likelihood of extensions or conversion permanent.  Please check out the job description down below and feel free to send me an email with your resume: Spencer.Frey@insightglobal.com 

The Healthcare Integration Developer is responsible for designing, developing, and deploying the complex near real-time and real-time data interoperability solutions using Healthcare industry-standard data formats/specifications (HL7, FHIR, EDI, etc.).

1
0 427
Question Kurro Lopez · Dec 19, 2016

Hi all,

I'm trying to convert a HL7 section to a XML or JSON string.

We need to save the content of PID section into a SQL Column, therefore we need to convert it into a XML o JSON string

is there any easy way to convert it?

I've tried to convert it directly into a DTL, but all my attempts have been unsuccessful

Best regards,

Francisco Lopez

6
0 1610
Question Jimmy Christian · May 18, 2022

Hello,

I want to access the HL7 Router settings from within the HL7 rule. Goal is to create a New class by extending  "EnsLib.HL7.MsgRouter.RoutingEngine".

Then create a PARAMETER ProcessMessage which can be set to an integer value for the HL7 Router.

Create a Rule class and based on the value of this setting ProcessMessage
process/not process the messages.

 

Class XYZRules Extends Ens.Rule.Definition [ CompileAfter = CUSTOM.Util.Rules.FunctionSet ]
{ Parameter RuleAssistClass = "EnsLib.HL7.MsgRouter.RuleAssist"; XData RuleDefinition [ XMLNamespace = "http://www.intersystems.

15
0 561
Question Ciaran Mooney · Jun 10, 2022

Hi ,

We have inbound HL7 message we want to transform. Is it possible to copy inbound NTE segments at ORC level to PID group level in the transformed messages? I see functions  for insert / append / set etc but they appear to be related to specific properties / fields of segments as iodised to the entire segment.

thanks

6
2 1100
Question Thomas Schroyen · Jun 2, 2022

Hi my fellows camrades,

I have a question that seems really simple but it's quite a pain in my ass right now.
I had to rename (take a file from a directory and move it to another) which is a .hl7. Whenever this file has been displaced, I have to change the extension from .hl7 to .OK without using the rename method. Maybe using the attribut?

Do you have any ideas how I could do it?

This should follow the step i have explained right before.

I have a service to take the file but i need an operation to rename it then change his name.

Thanks in advance for your help,

Thomas

2
0 598
Question Scott Roth · Jun 3, 2022

I noticed today that when we are creating a message from one doc type to another doc type, that the message type categories are not necessarily set. This is causing some issues with routing rules when we try to reference the Message Type Categories. Is there a way to make sure the Message Type Categories are being set within a DTL to make sure this doesn't cause problems down the road?

Thanks

Scott

7
0 491
Question Scott Roth · Jun 1, 2022

I would like to capture any NACK's that is sent back to the Operation. The Operation is already setup to "Save Replies/IndexNotOK's", but I would like to see if we can query Cache and pull those NACK's into an extract.

Is this possible?

Thanks

Scott

4
0 373
Question Federico Raimondo · Jan 20, 2020

Hi everyone, 

I am currently performing a patient merge thorug ADT^40 HL7 messages. In order to do that, I am following this guide which I found on the ducumentation: http://10.41.11.210:57772/csp/docbook/DocBook.UI.Page.cls?KEY=HESUP_ch_IHE#HESUP_IHE_configuring_registry_PIX
My main issue regards the fact that I can't update the PatientID and the SourcePatientID of the HS_Registry.Document table of the prior patient, wheras, I find only the new anagraphic on the HS_Registry.Patient table.

1
0 1226
Question John Klahn · Apr 28, 2022

Good afternoon,

I'm trying to take an unformatted social security number and insert the dashes into it.  I'm getting a value in PID-19 like this:  "123456789" and would like to use a data transformation to set the value in PID-19 to "123-45-6789". 

I can't find any insert or append functions and I can't find anything in the Intersystems doc repository that would do this.  Can someone help point the way for me please?  I would like to keep this as a "set" action in my DT.  I'm a little new to calling classes so it would be helpful if you included some syntax that would go in the "Value" field.

12
0 800
Question Scott Roth · Apr 13, 2022

I have been struggling trying to understand "Response From" and "Response Target Config Names" as I am trying to track down Orphaned messages.  I have noticed that when a Business Rule, or Business Process sends to a File Based Operation, there is always a NULL value response being returned. I am thinking these NULL values are causing some of the orphaned message problems we are seeing.

 

If the Business Operation is a File based operation, how do I prevent the NULL value from being sent back? Is this because our "Response From" and "Response Target Config Names" is blank?

2
0 527
Question Vitaly Furman · Apr 5, 2022

Hello,

I am working on the new USCDI Requirement to store LOINC Codes/Descriptions for various types of Clinical Notes in the SDA.

According to all of the documentation I had been able to find, in order to store a coded value for Document Type, I have to use Custom Pairs:

#; Code System
        do ..write(cr_"<CustomPairs")
        do ..write(cr_"<NVPair>")
        do ..write(cr_"<Name>DocumentNameCodingStandard</Name>")
        do ..write(cr_"<Value>LN</Value>")
        do ..write(cr_"</NVPair>")
        #; Code
        do ..write(cr_"<NVPair>")
      

3
0 441
Question Scott Roth · Mar 22, 2022

I am still trying to track down orphaned messages and have noticed that when we have Business Rules that send to a Business Process that some times there is an orphaned message that is generated as result of that send. 

  • So my question is, is there an issue with the way that we have setup our Business Processes as they are setup with a request class of Ens.Request, and a response class of Ens.Response when the message is truly an HL7 message?
  • Shouldn't the request class and response class be EnsLib.HL7.Message?
6
0 617