Erweiterte Unterstützung für Codierungen
Standardmäßig unterstützt die HL7-Empfangspipeline BTAHL72X nur die ASCII-Codierung. Dies bedeutet, dass alle Zeichen in einer Eingabenachricht mit einem Äquivalentwert größer als 127 durch "?" ersetzt werden. Dies liegt daran, dass Zeichen mit einem gleichwertigen Wert größer als 127 im ASCII-Zeichensatz nicht dargestellt werden.
BizTalk Accelerator for HL7 (BTAHL7) bietet Unterstützung für zwei neue Codierungen:
Westeuropäer
UTF-8
Sie erstellen und erstellen eine benutzerdefinierte Pipelinekomponente, um erweiterte Codierungsunterstützung zu implementieren. Die benutzerdefinierte Pipelinekomponente verwendet den BTAHL7 2.X Disassembler. Sie erstellen einen Empfangsspeicherort, der die benutzerdefinierte Pipeline zum Verarbeiten von Nachrichten verwendet. Um den Empfangsspeicherort und die benutzerdefinierte Pipeline zu testen, erstellen Sie einen Sendeport, der die BTAHL7 2.XSendPipeline verwendet.
So erstellen Sie eine benutzerdefinierte Pipeline
Fügen Sie in Visual Studio 2013 ein neues Leeres BizTalk Server-Projekt hinzu.
Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf das neue Projekt, klicken Sie auf Hinzufügen und dann auf Neues Element.
Fügen Sie im Dialogfeld Neues Element hinzufügen eine neue Empfangspipeline hinzu.
Ziehen Sie aus der Pipeline-Toolbox den BTAHL7 2.X Disassembler in den Pipeline-Editor, und legen Sie ihn auf das Ziel "Drop Here" der Disassemble-Phase ab.
Hinweis
Wenn sich der BTAHL7 2.7 Disassembler nicht in der Toolbox befindet, klicken Sie mit der rechten Maustaste in die Toolbox, und klicken Sie auf Elemente auswählen. Aktivieren Sie im Dialogfeld Toolboxelemente auswählen auf der Registerkarte BizTalk-Pipelinekomponente das Kontrollkästchen BTAHL7 2.X Disassembler , und klicken Sie dann auf OK.
Wählen Sie im Bereich Eigenschaften für den BTAHL7 2.X-Disassembler in der Dropdownliste Codierungszeichen die Option Westeuropäische oder UTF8-Codierung aus.
Hinweis
HL7 unterstützt nur ASCII (Standard), Westeuropäische und UTF8-Codierung. Wählen Sie die anderen Codierungsoptionen nicht aus, da HL7 sie nicht unterstützt.
Klicken Sie im Menü Datei auf Alle speichern.
Stellen Sie das Projekt bereit.
Erstellen Sie einen neuen Empfangsspeicherort, um fortzufahren.
So erstellen Sie einen Empfangsspeicherort, der die benutzerdefinierte Pipeline verwendet
Klicken Sie im Menü Start auf Programme, zeigen Sie auf BizTalk Server, und klicken Sie dann auf BizTalk Server Verwaltung.
Erweitern Sie in der BizTalk Server Verwaltungskonsole BizTalk ServerAdministration, Erweitern Sie BizTalk-Gruppe, Anwendungen, erweitern Sie die Anwendung, die Sie für Ihre Pipelineassembly festgelegt haben (standardmäßig BizTalk-Anwendung 1), klicken Sie mit der rechten Maustaste auf Empfangsspeicherorte, zeigen Sie auf Neu, und klicken Sie dann auf Unidirektionale Empfangsspeicherort.
Wählen Sie im Dialogfeld Eigenschaften des Empfangsspeicherorts in der Dropdownliste Empfangspipeline den Namen der benutzerdefinierten Pipeline aus, die Sie erstellt haben. (Dies ist der Name des benutzerdefinierten Pipelineobjekts, nicht der BTAHL7 2X-Pipeline.)
So erstellen Sie einen Sendeport zum Testen des Empfangsspeicherorts und der Pipeline
Klicken Sie im Menü Start auf Programme, zeigen Sie auf BizTalk Server, und klicken Sie dann auf BizTalk Server Verwaltung.
Erweitern Sie in der BizTalk Server Verwaltungskonsole BizTalk ServerAdministration, erweitern Sie BizTalk-Gruppe, Erweitern Sie Anwendungen, erweitern Sie die Anwendung, die Sie für Ihre Pipelineassembly (standardmäßig BizTalk-Anwendung 1) festgelegt haben, klicken Sie mit der rechten Maustaste auf Ports senden, zeigen Sie auf Neu, und klicken Sie dann auf Statischer unidirektionalen Sendeport.
Wählen Sie im Dialogfeld Porteigenschaften senden in der Dropdownliste Pipeline senden die Option BTAHL72XSendPipeline aus.
So testen Sie den Empfangsspeicherort und die Pipeline
Löschen Sie eine Datei, die Sonderzeichen enthält und mit derselben Codierung gespeichert wird, die Sie in der benutzerdefinierten Pipeline angegeben haben, an dem Speicherort, der im Empfangsspeicherort festgelegt ist. Die Datei am Ausgabespeicherort sollte die Sonderzeichen beibehalten.
Hinweis
Wenn Sie versuchen, eine Datei zu verarbeiten, die eine nicht unterstützte Codierung verwendet (denken Sie daran, dass nur ASCII, Westeuropäisch und UTF8 unterstützt werden), wird ein Fehler in der Anwendungs-Ereignisanzeige mit der Fehler-ID 5633 protokolliert.
Hinweis
Wenn Sie eine benutzerdefinierte Pipeline testen, die für die UTF8-Codierung konfiguriert ist, sollten Sie der übergebenen Nachricht Byte Order Mark (BOM) Zeichen anfügen. Wenn Sie eine benutzerdefinierte Pipeline testen, die für die westeuropäische Codierung konfiguriert ist, fügen Sie keine Stücklistenzeichen an.