8 Followers · 510 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

Announcement James Schultz · May 7, 2018

Hi Community!

Join us at the FHIR event of the year in the US: the HL7 FHIR Dev Days 2018!
A unique chance to meet 400 colleagues and discuss all topics relating to your field.

InterSystems is proud to be the Host Sponsorof HL7 FHIR Dev Days for its first U.S. edition, Boston, June 19 – 21st! We support the HL7 FHIR standard as it is critical for rapid innovation. FHIR can be used as an accelerant to bring all the information that matters for a patent into a unified health record. 

0
0 517
Question Duncan Priest · May 1, 2018

Hi Community

I've just started developing for a new client and noticed that the View Raw Contents link isn't displayed when inspecting HL7 message contents in the Management Portal. Is the link missing due to:

1) a configuration setting?

2) a security setting?

3) a difference between installation on Unix Vs Windows?

And is there a way to turn it on?

I've trawled through the doco but haven't been able to find anything on this.

Thanks in advance for any help you can give

Duncan

2
0 309
Article Steven LeBlanc · Jan 28, 2016 1m read

This is a sample Ensemble/Health Connect production which demonstrates how to receive an HL7 order (ORM) inbound from a file, extract fields (in this case, basic demographic information), and insert those into a table in an external SQL database via ODBC.  

Included in the zip file:

  • Exported code
  • Sample ORM message
  • 'How to configure' doc 
3
0 1720
Question Scott Roth · Mar 13, 2018

We have a case where a vendor can send us more information in the DICOM message rather than in the HL7 result message. In theory it should be possible to take a DICOM and convert it to HL7, stupid question is has anyone done it before? Does anyone have any good examples of a DTL they did to show me how to setup the message structures and translation?

Thanks

Scott Roth

The Ohio State University Wexner Medical Center

Scott.Roth@osumc.edu

2
0 1183
Announcement Mike Morrissey · Mar 7, 2018

The InterSystems FHIR® Sandbox is a virtual testing environment that combines HealthShare technology with synthetic patient data and open source and commercial SMART on FHIR apps, to allow users to play with FHIR functionality.

The sandbox is designed to enable developers and innovators to connect and test their own DSTU2 apps to multi-source health records hosted by the latest version of HealthShare.   Share your experience with others or ask questions here in the FHIR Implementers Group

Click here to access the InterSystems FHIR® Sandbox.

0
0 721
Question Antonio Garcia Martinez · Feb 14, 2018

Hi,

I am afraid I am stuck again. I have ensemble connected with a MsSQL database and I have a service that calls a store procedure. All is working, and I can get strings from the database in the service. The problem is that the data the store procedure returns is suppose to be an HL7 message so I need to convert the string into HL7 format. I have been using the ##class(EnsLib.HL7.Message).ImportFromString  method but although I have a valid HL7 message from the string received from the DB...apparently the content of the message is being modified.

I guess, is something to be with the struc

3
0 1595
Question Enric Moya Sánchez · Feb 16, 2018

Hi everybody,

I love the integration of HL7 v2.x in Ensemble, it's really easy to use.

I would love to see the same about using CDA on Ensemble. I know it's a complicated standard, but it would be more easy for developers in Europe if we could use it like any other type of message instead of using at XML level and xsl transformations.

Any experiences dealing with CDA on Ensemble?

1
0 585
Question Scott Roth · Jan 24, 2018

Is it possible to have a, b, c, d, e, and f as a counter instead of the counter being numeric? See below...Epic would like us to set OBX.4 using a alpha numeric combination.

OBX|4|ST|69548-6^Genetic Variant Assessment|1.a|Mutation IDH1:Not Detected||||||F

OBX|5|ST|69548-6^Genetic Variant Assessment|1.b|Mutation IDH2:Not Detected||||||F

OBX|6|ST|69548-6^Genetic Variant Assessment|1.c|Mutation NPM1:Not Detected||||||F

OBX|7|ST|69548-6^Genetic Variant Assessment|1.d|Mutation RUNX1:Detected||||||F

OBX|8|ST|69548-6^Genetic Variant Assessment|1.e|Mutation TET2:Detected||||||F

OBX|9
3
0 412
Question Scott Roth · Nov 18, 2016

I am trying to come up with a way to decode the Base64 we receive in an HL7 message into a PDF file and save it in a directory on our AIX machine. I thought I had the following working at one time but I am having issues. Has anyone done this before?

ClassMethod DecodeBase64HL7ToFile(base64 As %Stream, Ancillary As %String) As %Boolean
{
set Oref = ##class(%FileBinaryStream).%New()
set Oref.Filename = Ancillary
Do base64.Rewind()
While 'base64.AtEnd {
    set ln=base64.ReadLine()
    set lnDecoded=$system.Encryption.Base64Decode(ln)
do Oref.Write(lnDecoded)
}
Do Oref.%Save()
quit 1
}

Thanks

Scott

5
2 4621
Question Scott Roth · Jan 18, 2018

I have an interface that does not send me specific ID's, so I am scanning the AIL3.2 (Text) field for certain characters. The Routing rule is getting pretty big with all the OR statements. Is there a way that I can define what I am searching for in the data lookup table, and not have to scan the whole field that it does by default? Is there a way that I can simplify this?

<rule name="Provation" disabled="false"><constraint name="source" value="CaseSched949502Normalization"></constraint><constraint name="docCategory" value="SIUOSU"></constraint><constraint name="docName" value="SIU_S1
3
0 934
Question Jessica Ting Wing Yuen · Oct 12, 2017

Hi everyone,

I started working on Ensemble this year so maybe I am not implementing the right way. I'm trying to connect a Welch Allyn monitor to TrakCare. The workflow is the following:

- User scans patient number with the monitor.

- The monitor sends a QBP_Q22  message to request patient information

- Ensemble (or TrakCare) sends back a synchronous RSP_K22 containing the patient data (name, dob, sex)

- The user checks the patient's information displayed on the monitor, takes vital signs and sends them to TrakCare (via Ensemble)

I designed a DTL to build the RSP_K22 message using a query that retr

2
0 697
Question Anthony Filaski · Nov 8, 2017

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?

6
0 4203
Question Jenna Makin · Nov 7, 2017

Hi-

Please excuse my rather limited knowledge of HL7.

In Ensemble, I have a HL7 message that contains several Z segments.  I have created a custom schema to represent the new Z segments along with the new DocType Structure and Message Structure

How does Ensemble/Health Connect know which custom schema to use?  I believe it has to be indicated in the MSH segment somewhere, but not sure where exactly that would be.   Is the version simply updated with the new schema name or is there some other field?

TIA

Ken

1
0 557
Question Stuart Byrne · Oct 15, 2017

Dear All,

I'm to create a HL7 business operation that uses the Enslib.Email.OutboundAdapter  to create and use AttachStream() to create a file attachment of the HL7 contents, using the RawContent property of a Enslib.HL7.Message.

The class compiles okay, however   when I send a message to the class I get the following error:

Event Log

')+'

';
content += '';
return content;
},
"modalShow": function() {
// add ensExceptionModalGroup to class for floating div
var modalGroup = EnsException.modalGroup;
if (modalGroup) {
var div = modalGroup.


8
0 1118
Question Vimal nambiar · Sep 6, 2017

For a HL7 production, How will I be able to use two different segment level transformation (sub transform) in the main transform.

For Ex: Few mappings from source PID --> target ZAX segment (subtransform 1) Few mappings from source PV1 --> target ZAX segment (subtransfrom 2),

In the main mappings, I have used subtransform 1 followed by subtransform 2. It doesn't seem working fine.

Any suggestions please. Thanks:)

2
0 643
Question Joao Palma · Jul 5, 2017

Hi

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.

Tks.

11
0 817
Question Surya Sekhar Yerram · Mar 17, 2017

Hello Greetings-

I am exploring on converting HL7 to FHIR.

1. I saw there are built in DTLs “FHIR.FromSDA” and “FHIR.ToSDA” to convert SDA -> FHIR and FHIR -> SDA. Similarly Do Intersystems have DTLs for HL7 -> FHIR and FHIR -> HL7?

2. The reason why I am asking is, I see in HSLIB namespace HS->GateWay->HL7->HL7toSDA3 and HS->GateWay->SDA3->SDA3toHL7 DTLs. Like-wise I am trying to locate HL7 -> FHIR and FHIR -> HL7. Please help me to locate them

3. If there are no built-in DTLs for converting HL7 -> FHIR and FHIR -> HL7, what is the process to achieve this?

Thanks much in-advance.

Thanks,

Surya

3
2 2304
Question Murillo Braga · Jul 17, 2017

Hello mates,

When turning on the “Archive IO” option within the business operations, it provides us the capability of seeing the input and output communication with external systems. For instance, watching the messages sent out + ACK message sent back .

Our production has got a scheduled task that runs daily (by default I guess, as many others) and is in charge of purging “Errors and log files”. And this is likely to be linked to the “Archive IO” feature, right?

The thing is, after tweaking the variable to keep it for 7 days, it doesn't seem to be working, as messages older than 1 day will be van

2
0 640
Question Brian Schoen · Aug 30, 2016

Ensemble 2015.  Working on an a way to send NACK'd HL7 messages to a flat file for external review/troubleshooting. (Similar to the way BadMessageHandler deals with validation errors.)

I think I have the Alert piece down, but need assistance with the exact syntax to do an SQL query in the DTL (or a custom function) to pull the HL7 message Raw Content into the Alert, based on the SessionID.

(Also, anything special to write alerts to the File Operation?)

Thanks,  Brian

3
0 976
Question Gigi La Course · Jun 27, 2017

Hello,

I have been struggling and could use some help as I think I'm burnt.  I am trying to change a Textual 2.5.1 OBX;5 with multiple iterations to a simple non-iterating outbound result.  I have played around with $piece but can't seem to get it to work.  The outcome I would like is for OBX;5 to look like this: |Positive| and currently it looks like this: |Positive~_~_~_~_~|.  Any suggestions would be appreciated.

3
0 558
Question Kevin Brown · Mar 31, 2017

Is there a way to use a HL7 field value as part of the File Naming in the Business Operation FileOperation class.  I know we can do this in a custom class, but I was wondering if it could be done the default FileOperation class?

Example:

MSH-4 contains the value 12345

We would like to name the file 12345_YYYYMMDDHHMMSS.HL7

MSH.4 value here_%Y%m%d%H%M%S.HL7

It may not be possible, but I just want to see if anyone has any information

Thanks,

Kevin Brown

3
0 933
Article Michael Brady · May 4, 2017 4m read

Hi Everyone,

Link to webinar recording: https://learning.intersystems.com/course/view.php?id=623

Thank you for your interest in this webinar!

Please submit questions about the content of the webinar as comments below this article.

The webinar covers two topics: monitoring message activity and volume and monitoring disk space. I summarize and motivate the topics in the following two sections. The information in this webinar and post applies to the Ensemble, Health Connect, and HealthShare products. For simplicity, I am only going to refer to Ensemble in this post.

1) Monitoring Message Activity and

2
1 677
Question Randy Stewart · May 8, 2017

Suppose I have an image and need to convert that image into a PDF for inclusion in an HL7.

I know that Zen Reports can display an image in a PDF but I do not want to view the image in a web page. I just need to convert the image to PDF in a Process and then include that PDF in an HL7. The  workflow would be like this:

Get image -> Convert image into PDF -> Include PDF in HL7 OBX.

I know how to do the last part to include PDF in HL7 OBX. Just need ideas on the first part.

2
0 1345
Question Andre Cerri · Apr 24, 2017

Folks

1) What's the correct way to check for an existence of a segment?  So far I have been doing this by checking to see if a required field is non-null, and this seems to work but is a bit clumsy. In this case, it’s an X12 message being checked in an IF action in BPL:

              request.GetValueAt("NTE(1):Description")'=""

Or in a DTL, to see if a Z segment exists:

              source.{ZEF:Counter}=1

2) I have a case where I need to change from an external date format (YYYYMMDD) to internal (+$H) for a DTL to create a new object (and then persist it later). I am using:  +..ConvertDateTime(sou

3
0 1681