Question

I am looking for a way to pull information from EMRs using HL7. I need to get scheduling information from existing EMRs. All the information I need is inside of SIU messages. However, to my understanding, these are only notifications and provide a feed of new information. I need a way to trigger an SIU-12 for every existing scheduling record in order to pull all scheduling dates/times. Is there a way I can achieve this with HL7?

Thanks!

Was it helpful?

Solution

From my experience, each vendor is going to implement this differently and there will be no consistent way to get all of the existing scheduling messages. Your best bet is to work with each vendor independently and determine the best approach to getting this data. Not every vendor is going to be friendly/helpful here, so expect some mixed responses.

If you are looking to go at it without the help of a vendor, here are a couple of different approaches that I have seen:

  1. Set a hard start date where there will be no information prior to go-live. Since HL7 is event based, this is the most commonly supported workflow, as it really does not require any change from the EMR side. The big downside here is that you are going to be missing out on pre-existing information. The upshot is that it should work for every vendor.
  2. Have the EMR staff touch or trigger all scheduling from their system. Having this performed will vary depending on the vendor. For some systems, getting that bulk export will be easy and for others it may be a manual process.
  3. Pull the data from the vendor's data store and do a bulk import. This is going to probably be the trickiest of the bunch, as each vendor will use a different technology (SQL Server, Cache, etc.), store data differently, and so on.

OTHER TIPS

There's only 1 way to really do it without "hacking" the vendor's database. The Scheduling system has to:

1) Be HL7 compliant. Do they even support HL7 at all. If they don't then give up on HL7 with them, it's not going to happen.

2) If they DO support HL7 then do they export the schedule messages at all. If they don't then again, you're done. It's not going to happen with HL7.

3) If you get this far THEN you need to get their OUTBOUND HL7 implementation guide (they might call it an "HL7 Spec", etc). You will also want to get EXAMPLE HL7 messages for their scheduling interface. If you're in luck they're using SIU messages and have tried to at least stay close to the HL7 Standard. If you're not in luck (say you're doing this with Misys Tiger) then you're in for a rather unpleasant shock at how badly some vendors abuse the HL7 standards.

4) Once you've had a look at their samples and their document (you will be unpleasantly surprised at how often they do not match up exactly). Then you're ready to actually set up the HL7 feeds and you're off to the races.

A few tips.

1) Don't expect any of this to be free. Expect that your customer (the person who owns the license for the system that is to produce the SIU messages) will have to pay their vendor to set this up for them. Average cost of an HL7 interface in the USA is about $5000.00

2) It's not quite as bad as it sounds. Just design your HL7 interface to be modular. Remember that you're not designing an HL7 interface FOR a customer you're designing an interface TO a particular vendor's system. Once completed, you should be able to pull it off the shelf and reuse it for ANY customer that uses that system, so (if possible) interface to the more popular systems first. As you create more and more modules, you'll find that they get easier and easier to do and you WILL find different vendors who have the same implementation. So that your SystemA interface can become your SystemA AND SystemG interface.

Hope this helps.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top