- Neu
E-Book, Deutsch, 733 Seiten
Reihe: SAP Press
Englbrecht / Pehnke SAP-Schnittstellenprogrammierung
5. Auflage 2025
ISBN: 978-3-367-10331-7
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
E-Book, Deutsch, 733 Seiten
Reihe: SAP Press
ISBN: 978-3-367-10331-7
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Sie wollen SAP- und externe Systeme oder Cloud- und On-Premise-Systeme verbinden? In diesem Buch lernen Sie alle Schnittstellentechnologien und Protokolle kennen. Sie erfahren, wie Sie die erforderlichen Komponenten der ABAP-Plattform konfigurieren und ansprechen. Mit zahlreichen Beispielen in ABAP, Java, C, C++ und C#.
Aus dem Inhalt:
- Schnittstellenprogrammierung auf der ABAP-Plattform und der SAP BTP
- Remote Function Call mit ABAP, Java, C/C++ und C#
- Business Application Programming Interface (BAPI)
- IDoc und ALE
- SOAP
- OData und SAP Gateway
- OData mit RAP und CAP
- ABAP Push und Message Channels
- SAP Business Accelerator Hub
- SAP Event Mesh
- SAP Integration Suite
Michael Englbrecht ist Portfolio Manager SAP und Business Manager SAP bei der eXXcellent solutions GmbH in Ulm. Er ist dort für das Leistungsportfolio der eXXcellent solutions GmbH im Bereich SAP verantwortlich. In seiner Rolle als Business Manager SAP ist er gesamtverantwortlich für die Umsetzung von Kundenprojekten sowie die langfristige Betreuung der Kunden. Zuvor war er als Principal Managing Consultant bei der eXXcellent solutions GmbH tätig. Zu seinen Schwerpunkten gehört die Beratung von Unternehmen bei der Integration und Umsetzung von SAP Fiori. Michael Englbrecht arbeitet an der Konzeption, dem Design und der Implementierung von SAP-Fiori- und SAPUI5-Anwendungen mit und berät Kunden bei der Umsetzung der neuen User Experience. Weiterhin gehören die Integration von Systemen in die SAP-Landschaft sowie die Planung und Implementierung serviceorientierter Infrastrukturen zu seinen Themen. Auch in der Beratung bei SAP-Enterprise-Portal-Projekten und im Bereich SAP NetWeaver Knowledge Management and Collaboration verfügt er über langjährige Erfahrung. Michael Englbrecht hat zahlreiche Trainings zu SAP Fiori, SAP User Experience, SAPUI5, ABAP und dem ABAP-Programmiermodell für SAP Fiori, Java-Programmierung, Portalprogrammierung sowie Knowledge Management und Collaboration entwickelt und hält regelmäßig Schulungen zu den Themen. Er studierte Informatik an der FH Augsburg und arbeitete anschließend als Softwareentwickler und Consultant für die MATHEMA AG. Von 2002 bis 2009 war er Senior Consultant bei der AddOn Software GmbH in Neu-Ulm, von 2010 bis 2017 Director NetWeaver Consulting bei der 10 point software GmbH in Dornstadt.
Autoren/Hrsg.
Weitere Infos & Material
Einleitung ... 17
TEIL I. Grundlagen ... 21 1. Grundlagen der SAP-Schnittstellenprogrammierung ... 23 1.1 ... Die ABAP-Plattform ... 23 1.2 ... Sicherheit ... 39 1.3 ... Programmierung auf der ABAP-Plattform ... 51 1.4 ... Überblick über die Schnittstellentechnologien von SAP ... 63 2. Grundlagen der Schnittstellenprogrammierung auf der SAP Business Technology Platform ... 87 2.1 ... Einführung in die SAP Business Technology Platform ... 87 2.2 ... Aufbau der Infrastruktur ... 97 2.3 ... Sicherheit ... 130 2.4 ... Entwicklungsinfrastruktur aufsetzen ... 141
TEIL II. Schnittstellenprogrammierung auf der ABAP-Plattform ... 149 3. Remote Function Call mit ABAP ... 151 3.1 ... RFC-Funktionsbausteine in ABAP ... 151 3.2 ... Transaktionaler RFC ... 162 3.3 ... Queued RFC ... 169 3.4 ... Background-RFC ... 176 3.5 ... Business-Objekte und BAPIs ... 184 4. Remote Function Call mit C/C++ ... 213 4.1 ... SAP NetWeaver RFC SDK ... 213 4.2 ... Einfache SAP-NetWeaver-RFC-Clients ... 221 4.3 ... Komplexe SAP-NetWeaver-RFC-Clients ... 235 4.4 ... SAP-NetWeaver-RFC-Server ... 250 5. Remote Function Call mit Java ... 269 5.1 ... SAP Java Connector ... 269 5.2 ... RFC-Server ... 290 6. Remote Function Call mit C# ... 301 6.1 ... SAP Connector for Microsoft .NET ... 301 6.2 ... Einfache RFC-Clients ... 304 6.3 ... Komplexe RFC-Clients ... 323 6.4 ... RFC-Server ... 345 7. IDocs und Application Link Enabling ... 363 7.1 ... IDocs ... 363 7.2 ... Application Link Enabling ... 376 7.3 ... IDoc-Programmierung mit dem SAP NetWeaver RFC SDK ... 387 7.4 ... IDoc-Programmierung mit Java und dem SAP Java Connector ... 391 7.5 ... IDoc-Programmierung mit dem SAP Connector for Microsoft .NET ... 401 8. SOAP-Webservices ... 405 8.1 ... Inside-Out-Webservices und -Webclients mit der ABAP-Plattform ... 405 8.2 ... Outside-In-Webservices und -Webclients mit der ABAP-Plattform ... 420 8.3 ... SOAP-Programmierung mit Java ... 432 8.4 ... SOAP-Programmierung mit C# ... 446 9. SAP Gateway und OData ... 451 9.1 ... SAP Gateway ... 451 9.2 ... OData-Protokoll ... 454 9.3 ... OData-Services entwickeln ... 460 9.4 ... OData-Services mit SAPUI5 konsumieren ... 484 9.5 ... OData-Services mit C# konsumieren ... 506 9.6 ... OData-Services mit Java konsumieren ... 514
10. SAP HANA und ABAP Core Data Services ... 525 10.1 ... Einführung in die Programmierung mit ABAP CDS ... 525 10.2 ... ABAP-CDS-Views implementieren ... 527 10.3 ... OData-Service registrieren und testen ... 538
11. ABAP RESTful Application Programming Model und OData ... 545 11.1 ... Einführung in das ABAP RESTful Application Programming Model ... 546 11.2 ... Design des virtuellen Datenmodells ... 548 11.3 ... Implementierung eines virtuellen Datenmodells ... 550 11.4 ... Business Services implementieren ... 556 11.5 ... OData-Services mit SAP Fiori Elements konsumieren ... 571
12. ABAP Channels ... 587 12.1 ... ABAP Push Channels ... 588 12.2 ... ABAP Message Channels ... 593 12.3 ... Kollaborationsszenario mit ABAP Channels ... 599 12.4 ... ABAP-Plattform als Push-Channel-Client ... 605
TEIL III. SAP-Schnittstellenprogrammierung in der Cloud ... 613
13. SAP Cloud Application Programming Model und OData ... 615 13.1 ... Einführung in das SAP Cloud Application Programming Model ... 615 13.2 ... Eine CAP-Anwendung mit OData-Service entwickeln ... 620 13.3 ... Deployment einer CAP-Anwendung ... 643
14. SAP Business Accelerator Hub ... 657 14.1 ... Einführung in den SAP Business Accelerator Hub ... 657 14.2 ... Mit dem SAP Business Accelerator Hub arbeiten ... 660 14.3 ... Services konsumieren ... 667 14.4 ... Nutzung des Service Centers im SAP Business Application Studio ... 680
15. Echtzeitkommunikation mit Event-driven Architecture ... 693 15.1 ... SAP Event Mesh ... 694 15.2 ... Eine ereignisbasierte Architektur mit SAP Event Mesh einrichten ... 695 15.3 ... SAP Integration Suite ... 705 15.4 ... Ausblick ... 715 Literaturhinweise ... 717 Die Autoren ... 719 Index ... 721
Einleitung
In dieser fünften, aktualisierten und erweiterten Auflage unseres Handbuchs zur SAP-Schnittstellenprogrammierung finden Sie detaillierte technische Informationen darüber, wie SAP-Systeme untereinander und mit externen Systemen kommunizieren können. Diese Informationen werden mit lauffähigen und ausprogrammierten Programmierbeispielen illustriert, die Ihnen die Umsetzung in der Praxis erleichtern. Hier lassen wir unsere Erfahrungen als Trainer und Schnittstellenentwickler einfließen. Dabei berücksichtigen wir die fünf wichtigen Programmiersprachen ABAP, C/C++, Java, C# und JavaScript.
Dieses Buch wendet sich an Entwickler, die ihre Programme mit SAP-Systemen integrieren möchten, an technische Berater, die ihren Kunden Integrationsmöglichkeiten empfehlen möchten, und an SAP-Kunden, die einen fundierten Einblick in die Integrationsprogrammierung wünschen.
Der Aufbau des Buchs ist wie folgt:
-
Kapitel 1, »Grundlagen der SAP-Schnittstellenprogrammierung«, beginnt mit einem Überblick über die gesamte Thematik und führt die Beispielanwendung ein, die uns während des ganzen Buchs begleiten wird. Mit dieser Beispielanwendung werden Bestellungen von Buchhändlern an Großhändler und von Großhändlern an Verlage verwaltet.
-
In Kapitel 2, »Grundlagen der Schnittstellenprogrammierung auf der SAP Business Technology Platform«, führen wir in die SAP Business Technology Platform (SAP BTP) ein. Wir gehen auf deren Positionierung und Konzepte sowie auf die Themen Sicherheit und Integration ein.
-
In Kapitel 3 bis Kapitel 6 geht es dann um Remote Function Calls (RFCs). Dies ist eine SAP-Schnittstellentechnologie, mit der Funktionsbausteine in anderen Systemen aufgerufen werden können. Kapitel 3, »Remote Function Call mit ABAP«, beleuchtet das Thema aus der Perspektive von ABAP, Kapitel 4, »Remote Function Call mit C/C++«, erläutert die Programmierung mit C, Kapitel 5, »Remote Function Call mit Java«, die Programmierung mit Java und Kapitel 6, »Remote Function Call mit C#«, die Programmierung mit C# und dem SAP Connector for Microsoft .NET. Auch die Entwicklung und Verwendung von Business Application Programming Interfaces (BAPIs) werden in diesen Kapiteln erklärt.
-
Kapitel 7, »IDocs und Application Link Enabling«, erläutert das Application Link Enabling (ALE). Diese SAP-Technologie erlaubt es Anwendungen, Informationen in Form von Intermediate Documents (IDocs) auszutauschen. Sie baut selbst wieder auf RFC auf.
-
Nach den SAP-Technologien RFC und ALE wendet sich Kapitel 8, »SOAP-Webservices«, dem Protokoll SOAP zu. Dieser offene Webstandard ermöglicht es Anwendungen, Informationen in Form von XML-Dokumenten über HTTP oder andere Protokolle auszutauschen, und wird heutzutage von nahezu allen Entwicklungsplattformen unterstützt, wie wir am Beispiel von Java und C# zeigen werden. Neben dem Inside-Out-Ansatz, der von vorhandenen Funktionsbausteinen ausgeht, erläutern wir auch den Outside-In-Ansatz. Bei diesem Ansatz beschreiben Sie zuerst die Schnittstellen, generieren dann aus der Schnittstellenbeschreibung heraus die Klassen, die die technische Kommunikation realisieren, und nutzen dann diese Klassen bei der Implementierung der Anwendung.
-
In Kapitel 9, »SAP Gateway und OData«, erläutern wir die Entwicklung von OData-Services mit ABAP und deren Verwendung mit SAPUI5 und C#. Das OData-Protokoll ermöglicht den Austausch von Informationen über HTTP in Form von JSON- oder XML-Dokumenten.
-
In Kapitel 10, »SAP HANA und ABAP Core Data Services«, beschreiben wir das als ABAP-Programmiermodell für SAP Fiori bekannte Programmiermodell und dessen Bezug zu SAP HANA. Wir erläutern die Bereitstellung von OData-Services über Core-Data-Service-(CDS-)Views.
-
Neu in dieser Auflage ist Kapitel 11, »ABAP RESTful Application Programming Model und OData«. In diesem Kapitel führen wir in das derzeit von SAP für SAP S/4HANA empfohlene Programmiermodell ein. Dieses Modell ist zukunftsweisend für die Implementierung von OData-Services auf SAP S/4HANA. Wir implementieren in diesem Kapitel einen OData-Service mit lesenden und ändernden Operationen.
-
In Kapitel 12, »ABAP Channels«, geht es um Kommunikationskanäle, mit denen die ABAP-Plattform Push-Nachrichten an Clients schicken kann. Hier zeigen wir Ihnen, wie Sie in ABAP das WebSocket Protocol nutzen können, um Nachrichten an einen Webclient zu schicken.
-
Mit dem ebenfalls neuen Kapitel 13, »SAP Cloud Application Programming Model und OData«, beschreiben wir erstmalig die Entwicklung von OData-Diensten für die SAP BTP. Wir zeigen, wie man mit diesem Programmiermodell OData-Dienste implementiert und diese auf der SAP BTP zur Verfügung stellt.
-
Ein weiteres neues Kapitel ist Kapitel 14, »SAP Business Accelerator Hub«. Hier geben wir Ihnen einen Überblick über diese für Integrationsszenarien wichtige Webanwendung. Wir zeigen Ihnen, wie man mit dem SAP Business Accelerator Hub arbeitet und welche Möglichkeiten er bietet, um investitionssichere Integrationsszenarien zu implementieren.
-
Den Abschluss des Buchs bildet das neue Kapitel 15, »Echtzeitkommunikation mit Event-driven Architecture«, in dem wir SAP Event Mesh und die SAP Integration Suite als wegweisende neue Werkzeuge für die Integration vorstellen. Wir zeigen, wie Sie mit diesen Werkzeugen eine Event-driven Architecture (EDA) aufbauen können, und erläutern dies anhand von Programmbeispielen in JavaScript.
Für diese fünfte Auflage haben wir den gesamten Text und alle Programmierbeispiele überarbeitet und auf den neuesten Stand gebracht.
Wichtige Hinweise und Zusatzinformationen werden in Form von Infokästen gesondert hervorgehoben. Diese Kästen haben unterschiedliche Schwerpunkte und sind mit verschiedenen Symbolen markiert:
-
Seien Sie bei der Durchführung einer Aufgabe oder eines Schritts, der mit einem Ausrufezeichen markiert ist, besonders vorsichtig.
-
Wird das besprochene Thema erläutert und vertieft, macht ein Doppelpfeil Sie darauf aufmerksam.
-
Nützliche Tipps, die Ihnen die Arbeit erleichtern, sind mit einem Pluszeichen gekennzeichnet.
Das Buch eignet sich sowohl als Nachschlagewerk als auch als Lehrbuch bei der Programmierung von Schnittstellen zwischen SAP- und Nicht-SAP-Systemen. Es stellt grundlegende Techniken der Schnittstellenprogrammierung vor und erläutert sie praxisnah. Die jeweiligen Systemvoraussetzungen für die Installation der benötigten Software entnehmen Sie den entsprechenden Download-Seiten der einzelnen Produkte in der SAP Community (https://community.sap.com/).
-
Die ABAP-Beispiele wurden in einem SAP-S/4HANA-System 2022 implementiert.
-
Um die Stand-alone-Java-Beispiele nachzuvollziehen, können Sie jede Java-Entwicklungsumgebung verwenden. Die Programmierbeispiele liegen im Download-Material jedoch als Eclipse- und IntelliJ-Projekte vor, sodass sich die Verwendung dieser IDEs anbietet.
-
Für die C#- und C/C++-Beispiele haben wir Microsoft Visual Studio 2022 in der frei verfügbaren Community Edition verwendet.
-
Für die JavaScript-Beispiele kam das SAP Business Application Studio zum Einsatz.
Alle Codebeispiele können Sie sich auf der Verlagshomepage unter http://www.sap-press.de/5955 herunterladen.
Danksagung
Dieses Buch beruht auf vielen öffentlich zugänglichen Quellen von SAP: der Online-Hilfe auf http://help.sap.com sowie den Blogs, Diskussionsforen und White Papers der SAP Community. Ein herzliches Dankeschön geht an dieser Stelle an die SAP SE für die großartige Software und an alle Menschen, die sie entwickelt oder dabei geholfen haben. Ebenfalls möchten wir unseren herzlichen Dank Michael Wegelin aussprechen, der in den...