ITC-Connect (Zusatzmodul)

<< Klicken Sie, um das Inhaltsverzeichnis anzuzeigen >>

Navigation:  Schnittstellen >

ITC-Connect (Zusatzmodul)

ITC-Connect gehört nicht zum Standardlieferumfang von EMIL und muss als Zusatzlizenz über ITC erworben werden. Ohne Aktivierung über einen gültigen Lizenzode arbeitet die Schnittstelle nicht auf dem Server, kann aber dennoch konfiguriert und manuell getestet werden. Die Konfiguration von ITC-Connect geschieht über den Schnittstellendialog unter Administration|Schnittstellen.

ITC-Connect ist ein Zusatzprodukt zu EMIL, das die Verbindung mit Klinikinformationssystemen und Kliniklabors über HL7, HCM und xDT ermöglicht und folgende Verbindungstechniken zur Verfügung stellt:

Dateibasierte Übertragung

Übertragung per MLLP (Minimum Link Layer Protokoll, im HL7 Umfeld üblich) im Netzwerk

Es können Eingangskanäle definiert werden, die folgende Protokolle unterstützen:

HL7 (V2 (ORU und ADT)

HCM (z.B. SAP ISH*)

xDT (z.B. BDT, LDT, GDT) für Sonderfälle

Daneben können Ausgangskanäle definiert werden.

HL7 MDM Übertragung freigegebener Artbriefe als embedded PDFs (Base64 kodiert) an das Archiv

Sie finden die Einstellungen zu ITC-Connect in EMIL unter Administration|Schnittstellen:

clip0615

Unter dem ITC-Connect-Tab (1) findet sich die Liste aller definierten Kommunikationskanäle (4). Mit den Buttons unter (5) können Kanäle hinzugefügt, geändert und auch gelöscht werden.

Über den Parameter (2) können Sie festlegen, wie viele Tage ITC-Connect eingelesene Nachrichten aufhebt, bis sie verworfen werden. Hintergrund dieser EInstellung ist, dass ITC-Connect eingehende Nachrichten zunächst aus dem Quellformat (HL7, HCM oder xDT) in ein Zwischenformat übersetzt und in der Datenbank puffert, sobald diese empfangen werden. Dadurch können ohne Verzögerung Daten empfangen werden.

Anschließend erfolgt asynchron dazu die Verarbeitung der gepufferten Nachrichten über die definierten Kanal-Scripte. Diese Scripte löschen gepufferte Nachrichten automatisch aus dem Puffer, wenn diese korrekt verarbeitet werden konnten. Ist eine Verarbeitung nicht möglich, beispielsweise, weil Stammdaten zu einem Patienten aktualisiert werden sollen, der gerade geöffnet ist oder Befunde keinem Patienten zugeordnet werden können, bricht die Verarbeitung ab und belässt die Nachricht im Puffer. So können Befunde auch Patienten zugeordnet werden, wenn dieser erst nach Eintreffen der Befundnachrichten angelegt wird.

Nachrichten, die länger als die unter (2) angegebene Zeit im Puffer sind, werden automatisch beseitigt. Eine Angabe von 0 schaltet diesen Mechanismus aus (nicht empfohlen).

Unter (3) können Sie bestimmen, nach wie vielen Tagen Patientenakten in EMIL gelöscht werden, die von ITC-Connect angelegt wurden und in denen manuell keinerlei Änderungen oder Ergänzungen vorgenommen wurden. Dies hat sich bewährt, da in vielen Installationen der Sender der HL7 oder HCM Nachrichten nicht genau das Patientenkollektiv von Interesse ausfiltern und liefern, und statt dessen auch Patienten über die Schnittstelle transferriert werden. So enstehen in EMIL eine Menge Patientenakten, die nie geöffnet werden. Durch die Angabe eines sinnvollen Zeitrahmens (Vorgabe sind 30 Tage) werden diese dann wieder entfernt, wenn in diesem Zeitraum keine Eintragungen oder Änderungen über den  EMIL-Client vorgenommen wurden.

Die Verarbeitung von Eingangskanälen erfolgt über Scripts, da es trotz recht exakter Definition der Standards HL7 und HCM, in der Realität sehr viele einrichtungsspezifische Konfigurationen und Erweiterungen bis hin zur kompletten semantischen Redefinition von Feldern in manchen Kliniken gibt. Bei Einrichtung eines Eingangskanals wird ein Vorgabescript geladen, der die meisten Fälle abdeckt und der für die Verarbeitung von Erweiterungen und speziellen Konfigurationen angepasst werden kann. Zur Definition von Kanälen siehe nächster Abschnitt.

clip0354

Die Grundeinstellungen zum Kanal befinden sich im oberen Teil des Kanaleditors. Man sollte jedem Kanal einen entsprechenden Namen (1) geben, über den er in der Liste der Kanäle leicht identifizierbar ist.

Unter (2) wird der Kanaltyp gewählt. Inbound-Kanäle lesen Daten aus externen Quellen in die EMIL-Datenbank ein, zum Beispiel HL7 Daten aus KIS oder Labors. Outbound-Kanäle dienen dazu, Daten aus EMIL an externe Programme zu übergeben, beispielsweise freigegebene Briefe als MDM Nachricht an das Klinikarchiv.

Bei HL7 Inbound Nachrichten unterstützt ITC-Connect

ADT Nachrichten

ORU Nachrichten für Zahlen- und Textbefunde

Bei HL7 Outbound-Nachrichten unterstützt ITC-Connect

MDM Nachricht mit Base64 eingebettetem PDF Dokument

Grundsätzlich muss unter (4) entschieden werden, ob die Daten auf diesem Kanal in Form von Dateien oder via Netzwerk übertragen werden. Abhängig davon wird unter (3) entweder ein Dateipfad oder eine Adresse mit Port eingegeben.

Unter (5) können Sie den Kanal aktivieren und auch das Dateiformat zwischen ANSI und UTF8 umschalten. Bei MLLP Übertragung können Sie wählen, ob Nachrichten auf diesem Kanal mit einer normalen MLLP-Acknowledge-Sequenz oder einer HL7-Acknowledge-Nachricht quittiert werden. Diese Informationen erhalten Sie aus der Konfiguration der Gegenstelle.

Ausgabe freigegebener Dokumente

Wenn die Übertragung ins Klinikarchiv in der Textverarbeitung konfiguriert ist, werden freigegebene Dokumente auf allen definierten MDM Ausgabekanälen ausgegeben!

Die MDM Nachrichten T02 (Versenden eines Dokuments ans Archiv) und T11 (Storno eines bereits versendeten Dokuments bei Rücknahme der Freigabe) werden basierend auf einem Template erstellt. Dieses enthält einen direkt nutzbaren Standard, kann aber komplett an eigene Bedürfnisse angepasst werden. Dabei werden in das Template einfach feste Texte (z.B. Quelle und Ziel im MSH-Segment) oder Variablen eingefügt.

Folgende Variablen stehen zur Verfügung:

Variable

Inhalt

$(now)

Zeitpunkt der Nachrichtenerstellung im Format <Jahr vierstellig><Monat zweistellig><Tag zweistellig><Stunde (24h), zweistellig><Minute zweistellig><Sekunde zweistellig>.

$(msgid)

Eindeutige Nachrichten-ID.

$(pid)

KIS Patientennummer des Patienten [leer, wenn keine im Stammdatenblatt angegeben!].

$(lastname)

Nachname des Patienten [leer, wenn keiner im Stammdatenblatt angegeben!].

$(firstname)

Vorname des Patienten [leer, wenn keiner im Stammdatenblatt angegeben!].

$(birthdate)

Geburtsdatum im Format  <Jahr vierstellig><Monat zweistellig><Tag zweistellig>

$(gender)

Weiblich=F, Männlich=M, Divers=O, Unbekannt=U, Unbestimmt=A

$(casenum)

Fallnummer des Visit, zu dem das Dokument erzeugt wurde [leer, wenn keiner angegeben!].

$(dockind)

Dokumentenart, wie in EMIL definiert, dient üblicherweise als Weiche im Archiv, um z.B. Befundbriefe und Bescheinigungen in verschiedene Archivbereiche abzulegen.

$(visitdate)

Zeitpunkt des Visits, zu dem das Dokument angelegt wurde. Format siehe $(now).

$(docdate)

Erzeugungsdatum des Dokuments. Format siehe $(now). [Nur für T02 verfügbar!]

$(docid)

Dokumentennummer. Diese besteht aus der EMIL-Dokumentnummer und der Version, damit sie bei jeder freigegebenen Version eindeutig ist.

$(docfilename)

Dokumentdateiname, gebidet aus <EMIL> + $(docid) + ".pdf"

$(content)

Inhalt des PDF Dokuments in Base64-Kodierung

 

Fortgeschrittene Definition von Eingangskanälen durch Scripting

EMIL-Plus kann an vielen Stellen durch Scripting stark individualisiert und funktionell erweitert werden, das gilt auch für die Eingangskanäle. Wie man diese Scripte erstellt finden Sie unter EMIL Plattform Scripting, die im ITC-Connect Zusatzmodul verfügbaren Funktionen unter ITC-Connect Funktionsreferenz.

Im unteren Teil des Kanaleditors befindet sich eine Entwicklungsumgebung für den Script. Dieser Script ist das Zwischenglied zwischen der vorverarbeiteten Nachricht und der EMIL-Patientenakte. Wenn das Kliniksystem und -Labor sich sauber an den HL7 Standard halten, muss der Script für die korrekte Verarbeitung nicht angepasst werden. Für die Anpassung sind allerdings gewisse Programmierfähigkeiten in der Sprache Pascal erforderlich. Ein fehlerhafter Script führt natürlich zu einer Fehl- oder Nichtfunktion des Kanals. In komplexen Fällen können Sie den ITC-Service beauftragen, die Anpassungen durchzuführen.

clip0355

Unter (1) findet sich der Script-Editor. In (2) wird der Inhalt einer vorverarbeiteten HL7 oder HCM Nachricht angezeigt. Unter (3) erfolgt die Ausgabe des Scripts. Mit (4) können Beispielnachrichten in Dateiform eingelesen werden, um damit den Script zu testen. (5) führt den Script aus und gibt dabei auftretenden Fehler (Kompilierung bzw. Ausführung) in der Konsole (3) aus. mit (6) kann der um jeweiligen Format passende Vorgabescript geladen werden, was alle Änderungen gegenüber dem Standard rückgängig macht. Die Funktion (7) leert die Konsole.

Grundsätzlich sind Nachrichten in sogenannte Segmente unterteilt, die zum Teil auch mehrfach vorkommen können und abhängig vom Nachrichtenformat bestimmte Bezeichnungen und Inhalte haben. Die Verarbeitung der Nachricht geschieht segmentweise mit der Funktion NextSegment. Innerhalb eines Segments können Werte bestimmter Positionen gelesen mit GetData werden, die bei HL7 (2) folgenden Aufbau haben:

Feldposition - Wiederholung - Subfeldposition - SubSubfeldposition, z.B. 3-1-2-1

Um die Scripterstellung zu vereinfachen, können Sie aus den Beispieldaten (2) per Ziehen und Ablegen passende GetData Kommandos in den Script ziehen.

Bei HCM Format sind die Positionsbezeichnungen mit den Feldnamen identisch. Da das HCM-Format starr ist, führen dort Erweiterungen zwangsläufig dazu, dass die Vorverarbeitung fehlschlägt, da sich durch das Einfügen eigener Informationen in das Format alle nachfolgenden Informationen verschieben und HCM fest mit genauen Positionen arbeitet. Wenn Ihr HCM Format erweitert oder angepasst wurde, finden Sie unter (8) bei HCM einen Editor, in dem Sie eigene Felddefinitionen einfügen können.

clip0356