Click here to load reader
Upload
dinhtruc
View
214
Download
2
Embed Size (px)
Citation preview
Salesforce-Integration mit SAP NetWeaver PI/PO
© cbs Corporate Business Solutions 1/5
cbs Whitepaper: Salesforce-Integration
Salesforce-Integration mit SAP NetWeaver PI/PO
Szenario Immer mehr Unternehmen setzen auf Software-as-a-Service (SaaS) und managen einen Teil
ihrer Geschäftsdaten und -anwendungen in der Cloud. Ein häufiger Anwendungsfall ist das
Kundenbeziehungsmanagement, wo sich insbesondere salesforce.com im Markt etabliert
hat.
Grundlegende Architektur
Um die betroffenen Geschäftsprozesse zu harmonisieren und die technische Lücke
zwischen SAP und Salesforce zu überbrücken, ist eine Prozess- und Datenintegration der
Cloud-Anwendung mit der bestehenden SAP-Systemlandschaft erforderlich. Die Salesforce-
Applikation hat dabei spezifische technische Anforderungen. Um diese Prozesse
bestmöglich zu automatisieren und die technischen Anforderungen wiederverwendbar
umzusetzen, sollte die Salesforce-Anbindung über eine Integrationsplattform stattfinden. In
einer SAP-zentrischen Systemlandschaft ist hier meist SAP NetWeaver Process Integration
(PI) oder dessen Nachfolger SAP NetWeaver Process Orchestration (PO) das Mittel der
Wahl. Wie Implementierungen in Referenzprojekten gezeigt haben, sind Anbindungen von
Cloud-basierten Lösungen bei entsprechender sauberer Architektur und Realisierung mit
SAP PI/PO effizient umzusetzen und zu betreiben. Bei falscher Herangehensweise kann die
Integration jedoch erhebliche Risiken und Kosten sowohl bei der Einführung als auch im
späteren Betrieb mit sich bringen.
Salesforce-Integration mit SAP NetWeaver PI/PO
© cbs Corporate Business Solutions 2/5
cbs Whitepaper: Salesforce-Integration
Integrationsansätze Salesforce bietet Anwendern unterschiedliche Integrationsmöglichkeiten an. Neben dem
klassischen, manuellen Daten-Upload über Dateien gibt es verschiedene Ansätze,
sogenannte Salesforce-APIs, um eine automatisierte Integration vorzunehmen. Für die
meisten Anwendungsfälle, insbesondere bei der Echtzeitintegration von Daten mit anderen
betriebswirtschaftlichen Anwendungen, stellt die Web-Service-basierte Integration den
präferierten Lösungsansatz dar.
Des Weiteren stehen noch Optionen für eine generische Datenübernahme sowie eine
Massendatenverarbeitung zur Verfügung. Der generische Ansatz wäre beispielweise bei
einer Datenmigration zu wählen. Da diese allerdings keine definierte Schnittstellenstruktur
(daher „generisch“) beinhaltet, ist sie für eine Geschäftsprozessintegration weniger
geeignet. Die Schnittstelle für Massendaten hingegen kann beim initialen oder
regelmäßigen Laden von großen Datenmengen verwendet werden. Da die Prozessierung in
einer asynchronen Hintergrundverarbeitung entkoppelt durchgeführt wird, ist auch dieser
Ansatz für eine prozess-orientierte Echtzeitintegration nicht verwendbar.
Hat man sich für die Salesforce-Integration mittels Web-Services entschieden, gilt es ein
technisches Designkonzept unter Berücksichtigung der Salesforce-spezifischen
Integrationsanforderungen zu erstellen.
Spezifische Integrationsanforderungen Bei der technischen Integration von Salesforce sind einige spezifische Anforderungen zu
berücksichtigen. Die technischen Besonderheiten bei der Schnittstellenimplementierung
sind hierbei Salesforce-spezifisch und unabhängig von der verwendeten
Integrationsplattform. Wesentliche Aspekte sind dabei:
› Die Authentifizierung an der Salesforce-Applikation basiert auf der sogenannten Session-Verarbeitung. Hierbei muss vor dem Web-Service-Request mit den eigentlichen Business-Daten ein vorgelagerter Login-Request ausgeführt werden. Um die zurückgelieferten Session-Informationen für mehrere Salesforce-Aufrufe wiederverwenden zu können, ist eine zusätzliche Persistierung der Login-Daten im Integration-Layer erforderlich.
› Ebenso gibt es Probleme mit der von Salesforce zur Verfügung gestellten Web-Service-Strukturdefinition, der sogenannten WSDL. Aufgrund der verwendeten Sprachkonstrukte kann diese nicht unmittelbar verwendet werden, so dass hier manuelle Anpassungen notwendig sind.
› Um weitere technische Gegebenheiten zu bedienen, kann je nach Kundenanforderung, eine Prozessorchestrierung mittels BPM notwendig sein (je nach PI/PO Release mit ccBPM respektive NetWeaver BPM). Ein Beispiel für den Einsatz von BPM-Funktionalität ist das Umsetzen von asynchronen, ausgehenden SAP-Nachrichten (IDoc, ABAP Proxy) auf den synchronen Web-Service-Aufruf.
Salesforce-Integration mit SAP NetWeaver PI/PO
© cbs Corporate Business Solutions 3/5
cbs Whitepaper: Salesforce-Integration
› Da die Web-Service-Schnittstellen nicht für Massendaten gedacht sind (siehe Alternativen oben), erlaubt Salesforce eine maximale Anzahl von 200 Einträgen (z.B. 200 Kunden) in einem Aufruf. Dies macht Sinn, um Massendaten zu unterbinden und die Daten in kleinere Pakete zu bündeln. Dadurch werden Performanceprobleme und lange Antwortzeiten auf Seiten von Salesforce verhindert. Dennoch kann man auch mit der Web-Service-Technologie große Datenmengen übertragen. Dies kann man in der Schnittstelle über eine entsprechende Paketierung der Datensätze umsetzen. Bevorzugt sollte dies bereits im SAP-Quellsystem vorgenommen werden, kann jedoch alternativ auch über PI/PO gesteuert werden.
› Im Rahmen des Designs muss definiert werden, wie mit Fehlerfällen umzugehen und wer für dessen Behebung verantwortlich ist. Dabei ist zu beachten, dass sich Salesforce bei seinen Fehlermeldungen i.d.R. auf die Salesforce-ID des zugehörigen Objekts bezieht, wodurch im SAP-Anwendungssystem oder auf Seiten der Integrationsplattform eine entsprechende Korrelation zu dem SAP-Objekt hergestellt werden muss.
Szenario: Create Account in Salesforce
Um diesen und anderen Anforderungen gerecht zu werden, empfiehlt es sich vor der
Implementierung ein Designkonzept zu erstellen und in einem wiederverwendbaren
Integrationsansatz umzusetzen.
Datenänderungen von Salesforce nach SAP übertragen Ein Web-Service stellt Funktionalität zur Verfügung, die hinter einer wohl-definierten
Schnittstelle gekapselt ist. Daher ist es die Natur eines Web-Service, dass dieser von außen
aufgerufen wird. Alle oben erwähnten Integrationsansätze basieren daher auf einem
Trigger auf Seiten der SAP-Anwendung. Wenn man nun Daten, z.B. einen Account, in
Salesforce ändert, will man diese Informationen ggf. zurück an das SAP-System übertragen.
Salesforce bietet hierfür einen Web-Service, um Daten auszulesen, der jedoch von SAP-
Seite aktiv angestoßen werden muss. Bei diesem Ansatz werden daher Änderungen in
Salesforce nicht unmittelbar übertragen. Die Übertragungslogik von Salesforce nach SAP
Salesforce-Integration mit SAP NetWeaver PI/PO
© cbs Corporate Business Solutions 4/5
cbs Whitepaper: Salesforce-Integration
kann zudem auf Grund der im vorherigen Abschnitt genannten und anwender-spezifischen
Anforderungen eine entsprechende BPM-Logik in PI/PO erfordern.
Alternativ kann man aus Salesforce sogenannte Outbound Messages senden. Dies ist aus
Integrationssicht der einfachere und schönere Weg, erfordert allerdings in Salesforce eine
anwender-spezifische Erweiterung. Insbesondere bei einer bidirektionalen und engen
Integration zwischen Salesforce und SAP bietet die Lösung des cbs-Partners Skyvva einen
eleganten und kosteneffizienten Implementierungsansatz. Skyvva erweitert die
Salesforce.com-Plattform um zusätzliche Funktionen zum automatischen Versenden von
Nachrichten nach SAP NetWeaver PI/PO, einem Nachrichtenmonitor, vorgefertigten
Integrationsszenarien und einer vereinfachten Erweiterung von Schnittstellenstrukturen
auf Seiten von Salesforce.
Integrationsarchitektur SKYVVA
Projektvorgehen und Ergebnis Auf Basis der definierten Geschäftsprozesse kommt zudem der Definition des führenden
Systems für das jeweilige Geschäftsobjekt und deren Pflegeberechtigungen in SAP und
Salesforce eine zentrale Rolle zu. Unter Berücksichtigung der Anforderung an
Echtzeitintegration und dem zu erwartenden Datenvolumen sollte vor Beginn der
technischen Integration eine Bewertung und Entscheidung in Bezug auf die
Gesamtarchitektur und dem Designansatz auf Schnittstellenebene erfolgen. Im Rahmen der
Implementierung ist es empfehlenswert, die ersten Schnittstellen als eine
wiederverwendbare Template-Lösung zu entwerfen. Mit diesem generischen Template-
Ansatz lassen sich die technische Hürden der Salesforce-Integration frühzeitig im Projekt
adressieren und bietet eine einheitliche Grundlage für die Implementierung weiterer
Schnittstellenanforderungen.
Salesforce-Integration mit SAP NetWeaver PI/PO
© cbs Corporate Business Solutions 5/5
cbs Whitepaper: Salesforce-Integration
Über cbs Die internationale cbs Corporate Business Solutions Unternehmensberatung GmbH bietet
hochwertige Management- und SAP-Beratung für globale SAP-Veränderungsprojekte. Zu
ihren Kunden zählen global tätige mittelständische und große Unternehmen der
Fertigungsindustrie sowie Großkonzerne verschiedener Branchen. Durch ihre langjährige
Expertise und breite Kundenbasis gehört die cbs zu den führenden deutschen
Beratungsunternehmen im Bereich SAP-Integration, SAP NetWeaver Process Integration
und SAP NetWeaver Process Orchestration. Im Bereich Salesforce-Integration berät cbs
verschiedene Kunden aus den Branchen Maschinen- und Anlagenbau, Hi-Tech und
Chemie/Pharma im Rahmen von Architektur, Design und Implementierung auf Basis von
SAP NetWeaver PI und SAP NetWeaver PO.
Kontakt cbs Corporate Business Solutions Unternehmensberatung GmbH
Die Unternehmensberatung der MATERNA Gruppe
Im Breitspiel 19 | 69126 Heidelberg - Germany
T +49 6221 3304-0 | F +49 6221 3304-200
E-Mail: [email protected]
Web: www.cbs-consulting.com