Berechnungs- und Statistikdaten sind einem Berechungsursprung zugeordnet.
Vor dem Start müssen Sie Folgendes beachten:
Zur vollständigen Ausführung dieser Task muss die folgende Task abgeschlossen worden sein:
Wenn Sie eine Unterstützung des Berechnungsursprungs bei der Erfassung von Berechnungs- und Statistikdaten von Nachrichtenflüssen im Befehl mqsichangeflowstats anfordern,
müssen Sie auch Ihre Nachrichtenflüsse so konfigurieren, dass die richtigen Identifikationswerte bereit gestellt werden, die anzeigen, zu was die Daten zugeordnet sind. Sie können für jeden Nachrichtenfluss, für den Daten erfasst werden, einen anderen Wert festlegen oder denselben Wert für eine Gruppe von Nachrichtenflüssen verwenden (beispielsweise für Nachrichtenflüsse in einer einzelnen Ausführungsgruppe oder die einem bestimmten Client, einer Abteilung oder Anwendungssuite zugeordnet sind).
Die Einstellung des Berechnungsursprungs wird erst dann verwendet, wenn Sie den Nachrichtenfluss (oder die Nachrichtenflüsse) in den Brokern implementieren, in denen sie ausgeführt werden sollen.
Sie können die Datenerfassung aktivieren oder sie so ändern, dass eine Unterstützung des Berechnungsursprungs vor oder nach der Implementierung des Nachrichtenflusses angefordert wird. Wenn Sie einen Nachrichtenfluss implementieren, der den Berechnungsursprung ändert, muss die Datenerfassung nicht gestoppt werden.
So konfigurieren Sie einen Nachrichtenfluss so, dass er einen bestimmten Berechungsursprung angibt:
- Wechseln Sie zur Ansicht 'Brokeranwendungsentwicklung'.
- Öffnen Sie den Nachrichtenfluss, mit dem Sie arbeiten möchten.
- Klicken Sie über der Knotenpalette auf Auswahl.
- Klicken Sie in der Editoransicht mit der rechten Maustaste auf einen Rechen-, Datenbank- oder Filterknoten, und klicken Sie dann auf die Option ESQL öffnen. Die verknüpfte ESQL-Datei wird in der Editoransicht geöffnet, und der Cursor wird an den Anfang des richtigen Moduls positioniert. Sie können die erforderliche ESQL in jeden dieser Knoten miteinschließen. Überlegen Sie daher, welcher Knoten in jedem Nachrichtenfluss sich am besten für diese Aktion eignet.
Wenn Sie die Unterstützung des Berechnungsursprungs nutzen möchten, müssen Sie einen dieser Knoten in jeden Nachrichtenfluss miteinschließen, für den Sie einen bestimmten Ursprungssatz wünschen. Wenn Sie nicht einen dieser drei Knoten im Nachrichtenfluss konfiguriert haben, müssen Sie einen Knoten an einer geeigneten Stelle hinzufügen (beispielsweise direkt nach dem Empfangsknoten) und ihn mit anderen Knoten im Nachrichtenfluss verbinden.
Ausführliche Informationen zu diesen Knoten und ihrer Konfiguration finden Sie unter Rechenknoten, Datenbankknoten und Filterknoten.
In den Knotenthemen werden auch das verknüpfte ESQL-Modul und die ESQL-Datei, in der das Modul existiert, sowie die Aktion, die der Knoten unternimmt, wenn das Modul und/oder die Datei nicht vorhanden sind, behandelt.
- Aktualisieren Sie die ESQL im Knotenmodul, um einen Berechungsursprung festzulegen. Der Broker verwendet die Ursprungskennung, die in der Umgebungsbaumstruktur festgelegt ist. Sie müssen einen Wert im Feld mit dem Korrelationsnamen Environment.Broker.Accounting.Origin angeben.
Dieses Feld wird nicht automatisch in der Umgebungsbaumstruktur erstellt, wenn die Nachricht erstmals im Broker empfangen wird, sondern nur dann, wenn Sie es in einem ESQL-Modul festlegen, das einem Knoten im Nachrichtenfluss zugeordnet ist.
Wenn Sie keinen Wert im Nachrichtenfluss festlegen, wird der Standardwert Anonym für alle Ausgaben verwendet. Wenn Sie einen Wert an mehreren Stellen im Nachrichtenfluss festlegen, wird der Wert in den Ausgabedaten verwendet, den Sie unmittelbar vor Beendigung des Nachrichtenflusses festgelegt haben.
Der Code, den Sie hinzufügen müssen, sieht wie folgt aus:
SET Environment.Broker.Accounting.Origin = "Wert";
Sie können die Kennung bei Bedarf auf einen festen Wert festlegen (siehe oben) oder ihren Wert auf einem dynamischen Wert basieren, der nur bei Ausführungszeit bekannt ist. Beispiel: Sie können den Wert auf den Inhalt eines bestimmten Feldes in der Nachricht festlegen, die verarbeitet wird (wenn Sie ESQL für einen Rechenknoten codieren, müssen Sie den Korrelationsnamen 'InputBody' (Eingabekörper) anstelle von 'Body' (Körper) in folgendem Beispiel verwenden):
IF Body.DepartmentName <> NULL THEN
SET Environment.Broker.Accounting.Origin = Body.DepartmentName;
END IF;
Der Wert muss aus Zeichendaten bestehen und darf maximal eine Größe von 32 Byte haben.
- Nachdem Sie die erforderlichen Änderungen am ESQL-Modul vorgenommen haben, speichern Sie es und stellen Sie sicher, dass keine Fehler vorliegen.
- Speichern Sie den Nachrichtenfluss, und überprüfen Sie ihn erneut auf Fehler.
Jetzt können Sie den aktualisierten Nachrichtenfluss implementieren. Die Berechnungs- und Statistikdatensätze, die nach der Implementierung des Nachrichtenflusses erfasst werden, enthalten die von Ihnen festgelegte Ursprungskennung.