2011-01-04 8 views
11

Ich mache einige Beratungsarbeit für einen kleinen Apothekendienstleister, der eine HL7-Schnittstellen-Engine benötigt, um eine Schnittstelle zu Produkten herzustellen, die auf dem LAMP-Stack laufen.HL7 Interface Engine Empfehlungen

Genauer gesagt, was ich suche, ist eine HL7-Engine, die auf * NIX läuft und Daten aus einer HL7 v2.X-Nachricht in eine MySQL-Datenbank einfügen kann. Die Daten, die eingefügt werden, sind Daten, die aus beliebigen Feldern entnommen werden, so dass sie Parsing durchführen müssen.

Ich habe versucht, Mirth zu verwenden, aber seine Fähigkeit, jede scheinbar einfache Aufgabe übermäßig komplex zu machen, und die extreme Langsamkeit seiner Client-Interface-/Reaktionszeiten haben uns sehr scharf darauf gemacht. Wenn ich eine einfache Aufgabe sage, meine ich, dass ich eine benutzerdefinierte ACK-Nachricht basierend auf ein paar Regeln zurücksende, zwinge ich dazu, 100 Zeilen Javascript zu schreiben und danach immer noch schreckliche Antwortzeiten.

Ich liebte Iguana und wollte es verwenden, aber sie zitierten uns zwischen $ 12k und $ 15k für eine einzelne Instanz davon auf einem einzigen Server. Es war ein gutes Stück Software, aber nicht so gut, um ein solches Preisschild zu rechtfertigen, und das ist weit mehr als das, was mein Kunde für eine einzige Software zahlt, die einen kleinen Teil ihres Geschäfts treibt.

Hat jemand irgendwelche Empfehlungen für Open Source und/oder proprietäre Software, die diese Bedürfnisse erfüllen?

+0

Während "Shoppingempfehlungen" interessant sind, passen sie doch nicht gut in ein Q & A-Format. Was Sie am Ende haben, ist eine Liste, sortiert nach allgemeiner Beliebtheit nach den Stimmen .. aber keine einzige technisch korrekte Antwort. –

Antwort

5

Die besten Open-Source-Optionen, die wir in unserem Geschäft verwenden sind Mirth und OpenESB. Welche Version von Mirth hast du benutzt? Ich denke, Sie wären von den Verbesserungen in 2.0 überrascht.

Eine weitere Option, die einen angemessenen Preis hat, ist Orion Rhapsody. Wir finden, dass dies am einfachsten für lizenzierte Motoren zum niedrigsten Preis zu verwenden ist. Es ist eine großartige Ergänzung für Gesundheitsorganisationen mit einem Budget. Wenn Sie einen Kontakt benötigen, um eine Demo zu erstellen, kann ich Ihnen dabei helfen.

+2

Jeff, Vielen Dank für die Empfehlungen. Ich benutzte Mirth 2.0 und es war einfach zu komplex, einfache Operationen wie das Senden einer benutzerdefinierten ACK durchzuführen. Ich bin sehr zögerlich, mit etwas von Orion gehen. Bei einem früheren Arbeitgeber habe ich ihre Symphonia-Mapping-Suite verwendet und es war schrecklich langsam (nahm etwa 95% der Zeit für eine Transaktion für eine einfache Karte) und persönlich erhielt schreckliche Unterstützung von der Firma zu diesem Thema. Meine Lösung war, den Perl HL7 Toolkit-Daemon für die Verwendung durch meinen Client zu ändern. Ich werde die Quelle dem Autor veröffentlichen, sobald unsere Tests abgeschlossen sind. – Khirok

1

Leider ist die Anbindung an das Gesundheitswesen nicht immer trivial oder billig. Mir sind keine Produkte bekannt, die Ihren Anforderungen hinsichtlich Preisgestaltung und Funktionen entsprechen. Wenn Sie irgendwelche finden, lassen Sie mich wissen ... :)

Wenn Ihre primären Anforderungen ist, Lizenzkosten zu senken und Sie Daten nur mit HL7 austauschen müssen, benötigen minimale Datenzuordnung und keine Nachrichtenmanipulation (seien Sie vorsichtig ... es ist immer schlimmer, als es zuerst aussieht), Sie könnten Ihre eigene Engine mit HAPI als Grundlage entwickeln. Es ist ein kostenloser HL7-Parser, aber seien Sie bereit, für die zusätzliche Entwicklungsarbeit zu bezahlen.

+1

Was wir getan haben, war die Erstellung einer Homebrew-Lösung in Perl mit dem Perl HL7 Toolkit mit seinem Daemon-Service. Es war das Einfachste, was wir tun konnten, da wir auf der Anwendungsebene überhaupt keine Zuordnung haben (alles in der Datenbank durch gespeicherte Procs oder durch eine nachgelagerte Anwendung). – Khirok

+0

Ich weiß nicht genug über Ihr Projekt, so dass es für Sie möglicherweise nicht erforderlich ist, aber als allgemeine Regel würde ich empfehlen, in Ihre Architektur eine Möglichkeit zur Anpassung Ihrer Schnittstelle aufzunehmen, ohne Ihren Code oder Ihre Datenbank ändern zu müssen. Wenn Sie Ihre Anwendung woanders bereitstellen müssen, ist es möglich, dass die ausgetauschten Daten und/oder der Nachrichtenfluss nicht auf die gleiche Weise organisiert werden. – jlmorin

1

Ich denke, Mirth ist immer noch die beste Option, weil openESB ist zu komplex und schwierig für einen "kleinen Apothekendienstleister" zu pflegen. Wenn Sie LLP verwenden, sollten Sie die Lösung nicht anpassen müssen.

+0

Leider funktioniert Mirth nicht für uns tun, um die Menge der Arbeit zu tun, um einfache Dinge wie ein benutzerdefiniertes ACK zu einem Client zu erstellen und Gesundheitsüberprüfungen auf Daten durchzuführen. Wir haben am Ende eine Homebrew-Lösung mit dem HL7-Toolkit von Perl entwickelt, die Mirth in Sachen Leistung wegbläst und mit etwas Perl-Wissen flexibler sein kann als Mirth im Vergleich mit sehr wenigen Kopfschmerzen. – Khirok

4

Wenn Sie über 100 Zeilen Javascript schreiben müssen, um eine benutzerdefinierte ACK zu senden, würde ich vorschlagen, dass Sie es falsch machen. Das eigentliche Senden der Bestätigung ist eine einzelne Codezeile, die die Funktion responseMap.put verwendet. Vielleicht eine Zusammenfassung von dem, was Sie versuchen zu tun und Ihrem bestehenden Code im Mirth Support-Forum; Es gibt viele Leute, einschließlich mir, die einen Blick darauf werfen können.

Es ist immer enttäuschend, ein schlechtes Feedback zu Mirth zu hören, da es meistens kein Mangel im Produkt ist, sondern in der Programmierung. Wie gesagt, ganz gerne helfen - einfach an der richtigen Stelle posten.

+0

Was ich versuchte, war ein ACK zu erstellen, das andere Daten in Feldern enthielt als das Standard-ACK, das von Mirth erstellt wurde. – Khirok

+0

Sorry für den ersten, hier ist der volle. Drücken Sie früh auf Enter. Was ich versuchte, war ein ACK zu erstellen, das andere Daten in den MSH-Feldern enthielt als das Standard-ACK, das von Mirth erstellt wurde. Leider wegen Mirth Corp Weigerung zu helfen, ohne eine große Zahlung für die Unterstützung (weit über $ 3k) sogar sicherzustellen, dass wir dies als Testlauf für ihre Software angegeben sowie warten über 2 Wochen für eine Antwort auf beiden Mirth Foren und hier für eine Antwort wählte mein Kunde, um mit einem anderen Produkt zu gehen, das extrem gut für unsere Zwecke arbeitet und VIEL einfacher zu verwenden ist als Mirth. – Khirok