Skip to content
Microservices Certification

SAP Details Hub Einlesen von csv Dateien und Nutzung des DQM Microservices

certification

SAP Details Hub ist ein Instrument womit z.B. externe Prozesse, Resources und andere Systeme sehr intestine orchestriert werden können. Eine Selection ist es bsp. externe Dienste anzubinden. In meinem Beispiel möchte ich die Adressvalidierung auf der SAP Cloud Plattform verwenden. Diese nennt sich “DQM Microservice! also ein Details Good quality Administration Microservice. Damit kann male Adressen an die CP schicken und erhält validierte Adressen zurück. In diesem Beispiel verwende ich Adressen aus einer selbst erstellten csv Datei, die ich mit dem Microservice validiere und das Ergebnis speichere.

Als Foundation verwende ich SAP Facts Hub in der aktuellsten Variation 2.6

In meinem Slide habe ich eine CAL Landschaft verwendet. Als Kunde muss natürlich sichergestellt werden, dass Details Hub auf Information Expert services zugreifen kann (über das Netzwerk). Über einen Ping und Portscanner kann das zuerst überprüft werden um sicher zu gehen, dass diese Kommunikation auch funktionieren wird.

DQM Microservice:

SAP bietet mehrere Möglichkeiten Adressen zu validieren bzw. anzureichern mit Geolokationsdaten. Eine Variante davon sind die Microservices certification. Hier liegen die Adressreferenzdaten der einzelnen Länder und die entsprechenden Längen- und Breitengraddaten der Adressen in der SAP Cloud System und werden regelmäßig aktualisiert, sodass ein Kunde immer auf die aktuellsten Daten zugreifen kann.

Mehr Informationen dazu in folgendem Web site: https://blogs.sap.com/2017/03/19/sap-info-top quality-management-microservices certification-frequently-accessible-to-consumers/

Zuerst müssen wir eine Datei, welche lokal auf meinem Rechner liegt, in die CAL Umgebung uploaden. Zum aktuellen Zeitpunkt ist dies (für mich) die schnellste Möglichkeit eine einzelne Datei einzulesen und zu verwenden. Eine andere Option wäre es, die Datei in eine Cloudumgebung zu übertragen (AWS, HDFS, …) und dann einzulesen.

Hierzu starten wir das Program Management des Data Hub und starten das System Management:

Anschließend muss “Files” selektiert werden:

Dann legen wir einen Ordner an, sodass wir eine Datei darin speichern können und importieren die Datei, die lokal auf dem Rechner liegt:


Die Datei selbst ist eine simple Datei im CSV Format mit einigen Beispiel Adressdaten.

Wenn gentleman über die rechte Maustaste nun auf die Datei auf den Eintrag “View” klickt, kann male den Dateiinhalt sehen:

Nun schaue ich noch im Unionview, ob die Datei auch von überall verfügbar ist:

Damit ist der Upload realisiert und wir wenden uns dem Modeler zu um die Datei einzulesen:

Ich habe mir zuerst einen neuen Graph erstellt, mit Hilfe des DQM Microservice Template Graphs, wobei ich hier den ersten Operator rausgenommen habe:

So sieht der Common aus:

Den “Message Generator” Operator habe ich gelöscht und einige Operatoren (Multiplexer, Wiretab, Terminal, Converter) eingebunden:

Zuerst habe ich ein Study file Operator eingebunden. Dieser liest die Datei ein. Hier muss ich auch die Quelldatei definieren:

Nachdem die Datei definiert ist, müssen wir die Datei konvertieren zu einem JSON Structure, denn der Microservice verlangt ein JSON Format. Dazu gibt es den Format Converter, der genau das übernimmt.

Ich habe ihn eingebunden und folgendermaßen konfiguriert:

Manuell habe ich die einzelnen Felder, wie ich sie im CSV habe, in das Feld “Fields” geschrieben.

Zusätzlich braucht guy noch den “toblob_converter”, denn der Structure Converter benötigt ein Blob…

Das sieht dann so aus:

Anschließend gehe ich in die SCP und definiere mir eine Konfiguration um die Adressen zu validieren:

Ich wähle zuerst aus den “Services” den “Data Excellent Service” aus:

Dort wähle ich dann die “Configuration” aus:

Ich habe natürlich schon eine Konfiguration erstellt, habe das aber durch die obere rechte Style neu angelegt:

Hier habe ich genau die Felder als input definiert, wie ich sie auch im JSON Converter definiert habe. Bei mir wurde actual die identische Schreibweise (auch Groß- und Kleinschreibung!) kontrolliert, bzw. angemeckert. Hier also penibel darauf achten.

Als Output, kann guy unten links definieren, wie die validierten Adressen zurückgeschickt werden sollen. Auch kann gentleman Längen-und Breitengrad involvieren:

So nun muss male noch die Information im Operator für den DQM Microservice eingeben:

Hier nochmals die Config auf der rechten Seite im Element. Hier muss male eigentlich nur den ConfigurationName eintragen und ob person eine “Suggestion List” möchte oder nicht.

Als kleiner Tipp: Ich habe noch mit Multiplexer Wiretabs, bzw. Terminals eingebunden um zu sehen, was aus den einzelnen Operatoren als Ergebnis kommt. Das muss guy nicht tun, bietet sich zum take a look at aber immer gut an.

Im DQM Customer Operator gibt male nun die Verbindungsdaten an:

Die Werte habe ich aus dem SCP Übernommen, bzw. angelegt:

Dort habe ich zuerst die Application URL gesucht:

Hierbei habe ich das “https://” und den Schluss “/dq” weggelassen.

Anschließend bin ich zurück auf die OAuth…