Don’t Call Us, We’ll Call You!

Autor: Said Moshref | Veröffentlicht: 03.04.2020

Auf diesem einfachen, aber sehr nützlichen Paradigma „Don’t Call Us, We’ll Call You!“ basiert der Event Notification Service des Cloud for Customers (Cloud Service, Sales Service). Vormals übernahm das oData Event Notification diese Aufgabe, was allerdings seit jüngster Zeit auf veraltet gesetzt worden ist.

Mittels des Event Notification Service ist man in der Lage, einen oData Webservice in Abhängigkeiten von Events von Geschäftsobjekten (Entitäten) an ein externes System zu verschicken. Das externe System muss natürlich mit REST oData Calls umgehen können, bzw. zumindest diese fehlerfrei annehmen können.

Über: Administrator => Allgemeine Einstellungen => Ereignisbenachrichtigung gelangt man in das zugrunde liegende Menü.

cx_blog_sap_event_notification_menue
cx_blog_sap_event_notification_menue_2

SAP bietet darüber hinaus auch ein Monitoring an, mit dem die ausgehenden Events betrachten werden können.

cx_blog_sap_event_notification_monitoring

Für die Ereignisbenachrichtigung muss man zunächst einen Consumer einstellen (wir beschränken uns hier nur auf Externe Consumer).

cx_blog_sap_event_notification_external_consumer
  • Typ
    • Externer Consumer (beliebiger Server)
    • SAP Cloud Platform Extension Factory (Service der SCP)
  • Name
    • Name des Consumers
  • Endpunkt
    • Ziel Adresse, welche getriggert wird

Nachdem der Eintrag erstellt worden ist, muss man die Art und Weise der Legitimation festlegen. Es stehen drei Möglichkeiten zu Auswahl:

  1. Keine
  2. SSL-Client-Zertifikat
  3. Benutzerkennung und Kennwort

In unserem Fall verbinden wir uns zu der SCPI (SAP Cloud Platform Integration). Bei der SCPI sind die C4C Client Zertifikate eingestellt, so dass SSL ausgewählt werden kann (Empfehlung der SAP).

cx_blog_sap_event_notification_external_consumer_SCPI

Als nächstes muss man ein Abonnement erstellen. Hier wählt man aus der Vielzahl von Geschäftsobjekten das passende aus und bestimmt, auf welchen Knoten das zugehörige Event reagieren soll.

In C4C basiert das Objektmodell auf einer Nodestruktur. Das heißt, dass an einem Kunden z.B. diverse Beziehungen, wie Steuerdaten, Marketing Informationen oder Adressen hängen, die als Node mit dem Kunden verknüpft sind. Daraus ergibt sich dann eine Baumstruktur. Hier ist nun auszuwählen, an welcher Stelle des Baumes und auf welche Art von Event (anlegen, löschen, aktualisieren, oder Änderung an einem definierten Feld) reagiert werden soll.

In unserem Fall wählen wir den Kunden und den Root Knoten aus und reagieren nur auf „aktualisiert“ d.h. wir reagieren auf sämtlichen Änderungen der Kopfinformation des Kunden (z.B. bei Namensänderung oder Status Änderungen des Kunden).

cx_blog_sap_event_notification_abo_bearbeiten

Als nächstes sichern wir die Einstellungen und aktiveren den Consumer.

cx_blog_sap_event_notification_consumer_aktivieren

Nun testen wir noch unsere Konfiguration. Wir wechseln zu einem Kunden und aktualisieren testweise den Namen.

Im Monitoring der Ereignisbenachrichtigung sehen wir anschließend den erfolgreichen Versand der Nachricht an den von uns definierten Endpunkt.

cx_blog_sap_event_notification_monitoring

Hierbei sendet C4C folgende Daten zur Schnittstelle:

  • Event-Type: Root.Updated
  • Event-Type Version: V1
  • Event-ID: 00163e82-xx-xx-xx-yyy
  • Event-Time: 2020-02-20T09:33:18Z
  • Data
    • Root-Entity (ID des Root Elements)
    • Entity-ID (ID des Nodes, die wir abonniert haben)

Oberflächlich betrachtet sind es wenig Informationen für das externe System.

Wenn man die Informationen allerdings genauer betrachtet, sind es eigentlich die entschiedensten Informationen, die man für eine weitere Bearbeitung benötigt.

Anhand der Root-Eintity ID oder der Entity ID, kann man weitere Calls in dem C4C System tätigen, um mehr Informationen über das Geschäftsobjekt zu erhalten.

Die folgende Übersicht von SAP mit diversen oData Services aus dem C4C kann helfen, die entsprechende Datenstruktur besser zu verstehen.

Fazit

In der SAP Landschaft wird oData zukünftig eine immer wichtigere Rolle spielen. Mit diesem Notification Service erhält man die Basis für eine eigenständige Replikation (Verteilung) der Daten in beliebige Subsysteme. SAP bietet damit einen Weg, um Herausforderungen beim Kunden in heterogenen Systemlandschaften zu meistern.

Der Blog hat Ihnen gefallen und Sie wollen gerne direkt per E-Mail benachrichtigt werden, wenn der nächste Artikel erscheint? Gerne geben wir Ihnen Bescheid!

Profilbild_Ansprechpartner-CX-Clog_Managing-Consultant-SAP-CX_Wolfgang-Baldt

Haben Sie Fragen?

Unser Managing Consultant SAP CX, Wolfgang Baldt, ist Ihr Ansprechpartner zu allen Themen rund um den Blog. Treten Sie in Kontakt mit ihm.

Profilbild_Ansprechpartner-CX-Clog_Managing-Consultant-SAP-CX_Wolfgang-Baldt

Haben Sie Fragen?

Unser Managing Consultant SAP CX, Wolfgang Baldt, ist Ihr Ansprechpartner zu allen Themen rund um den Blog. Treten Sie in Kontakt mit ihm.