Filter zur Auswahl von Messages
Mit dieser Funktion definieren Sie Filter zur Auswahl von Messages, die nicht sofort, sondern erst zu einem späteren Ereignis verarbeitet werden sollen.
In Verbindung mit den Funktionen zur Definition der benötigten Sender und Empfänger sowie von entsprechenden Verarbeitungsjobs bietet Ihnen diese Funktion die Möglichkeit einer ereignisgesteuerten Message-Verarbeitung. Sie können so bestimmte Messages anhalten und deren Verarbeitung auf ein späteres Ereignis verschieben.
Sie haben im Menü Integration Engine den Eintrag Konfiguration → Ereignisgesteuerte Message-Verarbeitung konfigurieren gewählt und befinden sich in der Definition von Message-Filtern.
Ein Message-Filter besteht aus mehreren Auswahlkriterien und kann an folgenden Stellen zum Einsatz kommen:
· Integration Engine (Sendersystem)
· Integration Server (Eingang)
Hier kommen nur Messages mit Zustellungsart EO (Exactly Once) in Betracht, da an dieser Stelle noch keine Empfänger bekannt sind.
· Integration Server (Ausgang)
Hier können Sie auch Messages ausfiltern, die nicht einzeln, sondern in Paketen verarbeitet werden sollen. Bei dem Empfänger solcher Pakete muss es sich um einen IDoc-Empfänger handeln, die Messages müssen also vom IDoc-Adapter verarbeitet werden.

Ist der Empfänger eines Message-Pakets kein IDoc-Empfänger, kann dies zu unvorhersehbaren Ergebnissen führen.
· Integration Engine (Empfängersystem)
An dem gewählten Einsatzort werden alle Messages überprüft, ob sie den Kriterien des Message-Filters entsprechen. Wenn ja, wird ihre Verarbeitung zunächst gestoppt.
Welcher Einsatzort gewählt werden kann, hängt davon ab, ob der Mandant, in dem Sie sich befinden, als Business-System oder als Integration Server konfiguriert ist.
Neben den im folgenden aufgeführten Aktivitäten können Sie einen Message-Filter auch (de)aktivieren, löschen, aktualisieren und zurücksetzen.
Neue Filter werden immer an die Liste der bereits existierenden Filter angehängt, stehen also in der Reihenfolge ganz hinten.
Die angebbaren Filterkriterien unterscheiden sind je nach Einsatzort des Filters:
· Sender und/oder Empfänger
Sender und/oder Empfänger müssen angegeben werden und müssen definierte Sender/Empfänger-IDs besitzen. Dann können sie über die Eingabehilfe ausgewählt werden.
· Job-ID
Die Job-ID muss angegeben werden. Sie wird für die Definition eines Jobs benötigt, mit dem Sie die Verarbeitung der Messages einplanen und anstoßen können. Hierbei spielt es zunächst keine Rolle, ob dieser Job bereits existiert, oder ob Sie ihn noch definieren müssen.
· Größe der Message
Die Angabe der Message-Größe ist optional. Geben Sie eine Message-Größe an, können Sie im Feld Kleiner/Größer auswählen, ob Sie Messages filtern möchten, die kleiner oder größer sind als die angegebene Größe.
· Paketgröße
Möchten Sie Messages der Zustellungsart EO (Exactly Once) in Paketen verarbeiten, müssen Sie eine Paketgröße angeben. Diese gibt die Anzahl an Messages an, ab der ein Paket zur Verarbeitung eingeplant werden soll.
Ist die angegebene Paketgröße erreicht, kann ein Paket auch sofort verarbeitet werden. Ist dies gewünscht, markieren Sie das entsprechende Feld.

Message-Pakete können nur an einen eindeutigen Empfänger geschickt werden. Hierbei muss es sich entweder um einen Empfänger von IDocs handeln, oder um ein IDoc-System als Empfänger von ALE-Audits, die als Acknowledgments von einem IDoc-Empfänger zurückgegeben werden.

Da sich aus Gründen der Performance eine paketweise Verarbeitung von Messages nur bei kleineren Messages anbietet, sollten Sie auch eine entsprechende Message-Größe angeben.
· Message-Queue
Möchten Sie Messages der Zustellungsart EOIO (Exactly Once In Order) ausfiltern, müssen Sie den Namen der Queue angeben, durch die die gewünschten Messages identifiziert werden. Sie können hier auch einen Asterisk (*) angeben, und zwar allein stehend oder in der Form ABC*. Die entsprechenden Message-Queues werden dann angehalten und die darin befindlichen Messages werden nicht weiterverarbeitet.
Im Änderungsmodus können Sie alles ändern außer dem Einsatzort des Filters.
Um einen Filter zu ändern, müssen Sie ihn zunächst deaktivieren und nach der Änderung wieder aktivieren. Aktive Message-Filter können nicht geändert werden.
Aufgrund generischer Filterangaben kann es vorkommen, dass eine Message potentiell von mehreren Filtern aussortiert wird. Sie können deshalb eine Reihenfolge (Sequenz) der definierten Filter festlegen, um zu gewährleisten, dass der gewünschte Filter zur Anwendung kommt. Verwenden Sie hierzu die Funktionen Markieren und Verschieben nach.
Mit der Funktion Test-Message eingeben können Sie eine eingehende Message simulieren, um zu testen, ob ein Filter wie gewünscht funktioniert. Hierbei wird immer der Filter ermittelt, der als erster in der Reihenfolge der Filter die Kriterien der simulierten Message erfüllt. Wird die Message von einem anderen als dem gewünschten Filter aussortiert, müssen Sie die Reihenfolge der Filter entsprechend ändern.
Auf dem Integration Server steht Ihnen bei der Eingabe der Message-Daten eine Eingabehilfe mit den normalisierten Adressdaten (Identifikatoren) zur Verfügung. Sie können aber auch die alternativen Adressdaten aus dem Integration Directory verwenden. Für IDocs müssen Sie die alternativen Identifikatoren verwenden, da keine normalisierten Daten zur Verfügung stehen.
Auf einer Integration Engine steht Ihnen keine Eingabehilfe zur Verfügung. Hier müssen Sie die im Integration Directory spezifizierten Daten zum Kommunikationskanal manuell eingeben.
Siehe auch: Kommunikationsprofil.
Mit dieser Funktion können Sie eine minimale Paketgröße vorgeben, und zwar prozentual zum Wert der maximalen, filterspezifischen Paketgröße.
Die minimale Paketgröße wird nur bei sofortiger Paketverarbeitung ausgewertet. Die job-gesteuerte Paketverarbeitung bleibt davon unberührt.
Erreicht die Anzahl der vorhandenen Messages die maximale Paketgröße, kommt es zur Paketbildung mit der maximal möglichen Anzahl von Messages. Ein Rest von Messages kann hierbei übrig bleiben. Ist dieser Rest gleich oder größer der minimalen Paketgröße, werden diese Messages sofort paketiert. In der Zwischenzeit können jedoch weitere Messages eingehen, die dann bis zur nächsten Paketbildung stehen bleiben.

Die minimale Paketgröße kann auch über den Konfigurationsparameter MIN_PACK_SIZE der Kategorie TUNING gesetzt werden.
Mit dieser Funktion können Sie die Message-Pakete eines Filters auflösen und auf Einzelverarbeitung umstellen. Die Messages werden dann einzeln verarbeitet.
Markieren Sie hierzu den entsprechenden Filter und wählen Sie Pakete auflösen.
Message-Pakete können auch per Job aufgelöst werden. Verwenden Sie das Programm SXMS_UNPACK_MESSAGES, um den entsprechenden Job einzuplanen.
Dies ist nur in Erwartung einer Fehlersituationen zu empfehlen, zum Beispiel, wenn Pakete nicht wie gewünscht verarbeitet werden.