GenericHL7Input-Knoten

Mit einem GenericHL7Input-Knoten können Sie Nachrichten von Clients empfangen, die über das Protokoll MLLP über TCP/IP eine Verbindung mit dem Integrationsknoten herstellen.

Anmerkung: Aus Gründen der Kompatibilität mit Anwendungen, die in IBM® WebSphere Message Broker Connectivity Pack for Healthcare entwickelt wurden, wird der GenericHL7Input-Knoten unterstützt. In IBM WebSphere Message Broker Connectivity Pack for Healthcare Version 8.0 wurde jedoch eine aktualisierte Version dieses Knotens (HL7DFDLInput) bereitgestellt. Dieser Knoten führt dieselben Funktionen aus wie der GenericHL7Input-Knoten, allerdings verwendet er das DFDL-Nachrichtenmodell anstelle der ursprünglichen Nachrichtengruppe 'HL7v25P'.

Falls möglich, sollten Sie für neue und aktualisierte Anwendungen jedoch den HL7DFDLInput-Knoten verwenden, da das DFDL-Nachrichtenmodell die folgenden Vorteile bietet:

  • DFDL ist ein auf offenen Standards basierendes Format, während MRM und die Nachrichtengruppe 'HL7v25P' Eigentum von IBM Integration Bus sind.
  • Der DFDL-Editor stellt einfachere Tools zum Entwickeln und Testen von Erweiterungen des HL7-Schemas als MRM und Nachrichtengruppe 'HL7v25P' bereit.
  • Das DFDL-Nachrichtenmodell unterstützt HL7 Versionen 2.7, 2.6, 2.5.1 und früher, während MRM und the Nachrichtengruppe 'HL7v25P' nur HL7 Version 2.5.1 und früher unterstützen.

Weitere Informationen zum HL7DFDLInputknoten finden Sie unter HL7DFDLInput-Knoten.

Zweck

Der GenericHL7Input-Knoten ist an einem Port empfangsbereit, und sobald ein Client-Socket eine Verbindung zum Port aufbaut, stellt das Server-Socket eine Verbindung für den Client her. Ist eine Verbindung geöffnet, wird ein Datensatz empfangen, wobei das Ende des Datensatzes am Vorhandensein eines konfigurierbaren Begrenzers erkannt wird. Wenn beim Lesen von Daten ein Fehler auftritt, z. B. eine Zeitlimitüberschreitung beim Warten auf Daten oder das Schließen einer Verbindung beim Warten auf den vollständigen Datensatz, werden die Daten an das Fehlerterminal gesendet. Besteht keine Verbindung zum Fehlerterminal, wird eine Ausnahmebedingung ausgelöst. Wenn die Eigenschaft Wiederholungsmechanismus für den Knoten nicht auf Fehler gesetzt ist, wiederholt der Knoten den Vorgang so lange, bis die Daten erfolgreich empfangen werden oder die Anzahl Wiederholungsversuche, die durch die Eigenschaft Wiederholungsschwellenwert festgelegt ist, erreicht wird.

Der GenericHL7Input-Knoten erfordert Nachrichten, die das Protokoll MLLP über TCP/IP verwenden. Wenn die führenden MLLP-Bytes nicht vorhanden sind, wird die Nachricht an das Fehlerterminal gesendet.

Der GenericHL7Input-Knoten verarbeitet Nachrichten, die in der MRM-Domäne definiert sind. Zum Parsen der Nachrichten wird das HL7-Nachrichtenformat in der Nachrichtengruppe Nachrichtengruppe 'HL7v25P' verwendet. Wenn ein Parsing-Fehler auftritt oder obligatorische MSH-Felder nicht vorhanden sind, wird die Nachricht an das Fehlerterminal übergeben. Informationen zu Nachrichtengruppen finden Sie unter Nachrichtensätze - Übersicht in der IBM Integration Bus-Produktdokumentation.

Sie können den GenericHL7Input-Knoten so konfigurieren, dass er eine Prüfung auf Duplikate durchführt. Jede ankommende HL7-Nachricht enthält im MSH-Headersegment ein MessageControlID-Feld, das den Datensatz identifiziert. Wenn die Eigenschaft Duplikate prüfen ausgewählt ist, werden alle IDs zusammen mit der Bestätigung, die an den Sender zurückgegeben wurde, in der Warteschlange für Duplikate gespeichert. Die ID einer ankommenden Nachricht wird gegen die gespeicherten IDs abgeglichen, um festzustellen, ob es sich um ein Duplikat handelt. Wird ein Duplikat erkannt, wird es nicht verarbeitet, sondern es wird dieselbe Bestätigung, die mit der ersten Nachricht gesendet wurde, an den Sender zurückgegeben. Die Warteschlange für Duplikate wird als Knoteneigenschaft angegeben.

IDs werden für die Dauer in der Warteschlange für Duplikate gespeichert, die durch die Eigenschaft Duplikatzeitraum angegeben ist. Nach Ablauf dieses Zeitraums werden die IDs gelöscht und Nachrichten mit derselben ID nicht mehr als Duplikate behandelt. Sie müssen die Größe der Warteschlange für Duplikate so festlegen, dass sie die maximale Anzahl Nachrichten-IDs, die im angegebenen Zeitraum erwartet wird, aufnehmen kann.

Wenn eine ankommende Nachricht kein Duplikat ist, wird sie zur weiteren Verarbeitung an das Ausgangsterminal des GenericHL7Input-Knotens übergeben. Wird ein Duplikat erkannt, gibt der GenericHL7Input-Knoten eine Bestätigung an den Anforderer zurück. Wenn die Duplikatberichterstellung aktiviert ist und ein Duplikat erkannt wird, wird die Nachricht an das Fehlerterminal übergeben.

Die Verarbeitung der Nachrichten unterliegt einer transaktionsorientierten Steuerung. Wenn der Nachrichtenfluss rückgängig gemacht wird, werden die Duplikat-IDs, die zur Warteschlange für Duplikat-IDs hinzugefügt wurden, entfernt. Dies stellt sicher, dass eine Nachricht, die erneut gesendet wird, nicht als Duplikat identifiziert, sondern als neue Nachricht verarbeitet wird.

Wenn beim Lesen von Daten ein Fehler auftritt, einschließlich einer Zeitlimitüberschreitung beim Warten auf Daten oder dem Schließen einer Verbindung beim Warten auf den vollständigen Datensatz, werden die Daten an das Fehlerterminal gesendet. Besteht keine Verbindung zum Fehlerterminal, wird eine Ausnahmebedingung ausgelöst. Wenn die Eigenschaft Wiederholungsmechanismus für den Knoten nicht auf Fehler gesetzt ist, wiederholt der Knoten den Vorgang so lange, bis die Daten erfolgreich empfangen werden oder die Anzahl Wiederholungsversuche, die durch die Eigenschaft Wiederholungsschwellenwert festgelegt ist, erreicht wird.

Informationen zu HL7 finden Sie unter Health Level Seven International.

Der GenericHL7Input-Knoten befindet sich im Ablagefach Healthcare der Nachrichtenflussknotenpalette und wird in IBM Integration Toolkit durch folgendes Symbol dargestellt:

Symbol für GenericHL7Input-Knoten

Verwendung dieses Knotens in einem Nachrichtenfluss

Wenn ein GenericHL7Input-Knoten in einem Nachrichtenfluss verwendet wird, enthalten Nachrichten, die an das Ausgangsterminal übergeben werden, vom Parser analysierte HL7-Nachrichten, aus denen die führenden und abschließenden MLLP-Bytes entfernt wurden. Die Nachrichtenbaumstruktur enthält MQMD- und MQRFH2-Header, sodass die Nachricht bei Bedarf direkt in eine Warteschlange geschrieben werden kann. Der Nachrichtentext enthält eine HL7-Nachricht in der MRM-Domäne. Der Nachrichtenfluss ist dafür verantwortlich, dass eine Bestätigung an den Anforderer zurückgegeben wird.

Der GenericHL7Input-Knoten arbeitet transaktionsorientiert. Wenn der Nachrichtenfluss, in dem sich der Knoten befindet, erfolgreich endet, werden alle innerhalb der Transaktion geschriebenen Nachrichten festgeschrieben, einschließlich der Nachricht an die Warteschlange, in der bei Duplikaterkennungen die Duplikat-IDs gespeichert werden.

Wenn im GenericHL7Input-Knoten ein Fehler auftritt, wird die Nachricht an das Fehlerterminal übergeben. LocalEnvironment.HL7 enthält die Felder, die in der folgenden Umgebungstabelle aufgeführt sind. Mithilfe der Informationen in diesen Feldern wird eine negative Rückmeldung oder eine Fehlernachricht erstellt.

Feld Beschreibung
FlowMilestoneReached Gibt die Aktion an, die beim Auftreten des Fehlers ausgeführt wird.
SendNACK Es wird eine negative Bestätigungsantwort gesendet.
EndConnection YES: Verbindung schließen

NO: Verbindung nicht schließen

HL7RC HL7-Rückgabecode
ErrorCondition Fehlertext, der in die negative Bestätigung eingeschlossen wird.
Wenn das Feld SendNACK auf YES gesetzt ist, wird eine negative Bestätigung an den Anforderer zurückgegeben. Das Feld SendNACK wird auf NO gesetzt, wenn eine der folgenden Bedingungen zutrifft:
  • Die ankommende Nachricht enthielt nicht die richtigen MLLP-Begrenzer; deshalb wird davon ausgegangen, dass das MLLP-Protokoll nicht unterstützt wird.
  • Die Nachricht ist ein Duplikat und der GenericHL7Input-Knoten hat die negative Bestätigung zurückgegeben.

Wenn EndConnection auf YES gesetzt ist, muss die Verbindung geschlossen werden. Diese Aktion wird ausgeführt, wenn die ankommende Nachricht nicht die richtigen MLLP-Begrenzer enthielt und deshalb davon ausgegangen wird, dass das MLLP-Protokoll nicht unterstützt wird.

Die Felder HL7RC (HL7-Rückgabecode) und ErrorCondition (Fehlerbedingung) dienen dazu, Informationen in der negativen Bestätigung bereitzustellen, die an den Anforderer zurückgegeben wird.

In der folgenden Fehlertabelle sind die möglichen Fehlercodes aufgeführt.
Erreichter Nachrichtenflussmeilenstein Rückkehrcode Fehlertext
DETECTDUPLICATE AR Error checking duplicates
PARSE AE Input message MSH parsing or validation error
BUILDACK AR Error while building ACK message

(Dieser Fehler tritt auf, wenn eine Bestätigung zurückgegeben wird, weil die Nachricht ein Duplikat ist).

SENDACK AR Error while building ACK message

(Dieser Fehler tritt auf, wenn eine Bestätigung zurückgegeben wird, weil die Nachricht ein Duplikat ist).

DUPLICATEERROR AR Failure during duplicate detection. Duplicate queue is full.

Failure during duplicate detection. Message processing failed.

SAVINGDUPDATA AR Error while saving duplicate data
DUPLICATE RECORD AR Duplicate record detected

Der GenericHL7Input-Knoten arbeitet transaktionsorientiert. Wenn der Nachrichtenfluss, in dem sich der Knoten befindet, erfolgreich endet, werden alle innerhalb der Transaktion geschriebenen Nachrichten festgeschrieben. Endet die Nachricht mit einer Ausnahmebedingung, die nicht abgefangen wird, werden alle innerhalb der Transaktion geschriebenen Nachrichten rückgängig gemacht, einschließlich der Nachricht selbst. Diese Aktion schließt die Nachricht an die Warteschlange ein, in der bei Duplikaterkennungen die Duplikat-IDs gespeichert werden. Sie müssen bestimmen, welche Nachrichten unter diesen Bedingungen rückgängig gemacht werden sollen, und sicherstellen, dass andere Nachrichten, z. B. Fehlernachrichten, nicht innerhalb der Transaktion geschrieben werden.

GenericHL7Input-Knoten konfigurieren

Nachdem Sie eine Instanz eines GenericHL7Input-Knotens in einem Nachrichtenfluss hinzugefügt haben, können Sie ihn konfigurieren.

Alle obligatorischen Eigenschaften, für die Sie einen Wert eingeben müssen (d. h. Eigenschaften ohne definierten Standardwert), sind mit einem Stern markiert.

Terminals und Eigenschaften

Die GenericHL7Input-Knotenterminals werden in der folgenden Tabelle beschrieben.
Terminal Beschreibung
Fehlerterminal Das Ausgabeterminal, an das eine Nachricht weitergeleitet wird, wenn ein Fehler auftritt.
Ausgangsterminal Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn sie erfolgreich von einer externen Ressource abgerufen wurde.
Catch-Terminal Das Ausgabeterminal, an das die Nachricht weitergeleitet wird, wenn nachgeschaltet eine Ausnahmebedingung ausgelöst und von diesem Knoten abgefangen wurde. Ausnahmebedingungen werden nur abgefangen, wenn dieses Terminal angeschlossen ist.

In den folgenden Tabellen werden die Knoteneigenschaften beschrieben. Die Spalte O zeigt an, ob die Eigenschaft obligatorisch ist (markiert mit einem Sternchen, wenn ein Wert eingegeben werden muss, weil kein Standardwert definiert ist). Die Spalte K zeigt an, ob die Eigenschaft konfigurierbar ist (Wert kann geändert werden, wenn der Nachrichtenfluss zur BAR-Datei hinzugefügt wird, um ihn einzusetzen).

In der folgenden Tabelle werden die Beschreibungseigenschaften für den GenericHL7Input-Knoten beschrieben.
Eigenschaft O K Standardwert Beschreibung
Knotenname Ja Nein GenericHL7Input Der Name des Knotens.
Kurzbeschreibung Nein Nein   Eine Kurzbeschreibung des Knotens.
Ausführliche Beschreibung Nein Nein   Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt.
In der folgenden Tabelle werden die HL7-Verarbeitungseigenschaften für den GenericHL7Input-Knoten beschrieben.
Eigenschaft O K Standardwert Beschreibung
Duplikate prüfen Ja Nein Ausgewählt Gibt an, ob Duplikate (doppelte Nachrichten) erkannt werden, wie durch die eindeutige Nachrichten-ID im HL7-MSH-Header festgelegt.
Bei Erkennung eines Duplikats wird folgende Aktion ausgeführt:
  • Wird die Nachricht innerhalb des Zeitlimitintervalls empfangen, wird die Nachricht nicht verarbeitet, sondern es wird dieselbe Bestätigung, die für die Originalnachricht gesendet wurde, an den Sender zurückgegeben.
  • Nach Ablauf des Zeitlimitintervalls werden Duplikate normal verarbeitet.
Duplikate melden Ja Ja Ausgewählt Gibt an, ob Duplikate, die innerhalb der angegebenen Zeit eintreffen, eine Fehlernachricht generieren.
Duplikatzeitraum Nein Ja 86400 Gibt den Zeitraum (in Sekunden) bis zum Verfall gespeicherter Duplikat-IDs an. Nach Ablauf dieses Zeitraums werden Duplikate nicht erkannt und normal verarbeitet. Der Standardwert (86400) entspricht 24 Stunden.

Diese Eigenschaft ist obligatorisch, wenn Duplikate prüfen ausgewählt ist.

Duplikat-ID-Warteschlange Nein Nein   Gibt die Warteschlange mit der Liste der aktuellen Duplikat-IDs an, gegen die ankommende Nachrichten abgeglichen werden.

Diese Eigenschaft ist obligatorisch, wenn Duplikate prüfen ausgewählt ist.

Führende MLLP-Bytes Ja Nein 0B Gibt das führende Byte an, das Teil des MLLP-Protokolls ist und das entfernt wird, bevor die Nachricht geparst und verarbeitet wird.
Duplikate bestätigen Ja Ja Ausgewählt Gibt an, ob bei der Erkennung von Duplikaten Bestätigungsnachrichten gesendet werden.
In der folgenden Tabelle werden die grundlegenden Eigenschaften für den GenericHL7Input-Knoten beschrieben.
Eigenschaft O K Standardwert Beschreibung
Verbindungsdetails Ja Ja 1111 Die TCP/IP-Verbindung für die Quellenanwendung im Format Hostname:Port.
Zeitlimitüberschreitung bei Warten auf Datensatz (Sekunden) Ja Ja 60 Gibt an, wie lange der Knoten an einer Verbindung auf weitere Daten wartet, nachdem das erste Datenbyte eingegangen ist. Sie können einen beliebigen Zeitwert in Sekunden angeben. Der Standardwert beträgt 60 Sekunden. Sobald die festgelegte Zeitspanne überschritten wird, werden alle verfügbaren Daten an das Fehlerterminal gesendet.
In der folgenden Tabelle werden die Datensatzerkennungseigenschaften für den GenericHL7Input-Knoten beschrieben.
Eigenschaft O K Standardwert Beschreibung
Begrenzer Ja Nein Angepasster Begrenzer Diese Eigenschaft ist nicht bearbeitbar.
Abschließende MLLP-Bytes Ja Ja 1C0D Die abschließenden MLLP-Bytes werden als HL7-Datensatzbegrenzer verwendet. Sie werden vom GenericHL7Input-Knoten entfernt.
In der folgenden Tabelle werden die Wiederholungseigenschaften für den GenericHL7Input-Knoten beschrieben.
Eigenschaft O K Standardwert Beschreibung
Wiederholungsmechanismus Ja Nein Kurzes Wiederholungsintervall (Sekunden) Gibt an, wie der Knoten einen Nachrichtenflussfehler handhabt. Gültige Optionen:
  • Fehler
  • Kurzes Wiederholungsintervall (Sekunden)
  • Kurze und lange Wiederholungszeit
Kurzes Wiederholungsintervall (Sekunden) Ja Ja 0 Das Intervall in Sekunden zwischen den Wiederholungen, wenn der Wiederholungsschwellenwert ungleich null ist.
Wiederholungsschwellenwert Ja Ja 0 Gibt an, wie oft die Flusstransaktion wiederholt werden soll, wenn Wiederholungsmechanismus auf Kurzes Wiederholungsintervall (Sekunden) gesetzt ist.
Langes Wiederholungsintervall (Sekunden) Ja Ja 300 Das Intervall zwischen Wiederholungen, wenn Wiederholungsmechanismus auf Kurze und lange Wiederholungszeit gesetzt ist und der Wiederholungsschwellenwert erreicht ist.
Copyright IBM Corporation 2011, 2015Copyright IBM Corporation 2011, 2015.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: : 2015-06-23 08:47:30


ReferenzthemaReferenzthema | Version 4.0.0.0 | ha00150