Transport Management System: TMS Auftragsmonitor

Die Übersicht über SAP Transportaufträge im Transport Management System zu behalten, ist ohne ChaRM nicht einfach. In welche Systeme, welche Aufträge importiert sind, wird häufig manuell und fehleranfällig über eine Schattenbuchhaltung in Excel realisiert. In diesem Beitrag implementieren wir einen TMS Auftragsmonitor, der uns die Übersicht über die Importe liefert. Damit wird kein Auftrag mehr„Transport Management System: TMS Auftragsmonitor“ weiterlesen

Ranorex Testautomatisierung mit SAP Funktionsbausteinen

Ranorex ist primär ein Werkzeug für den Test auf Ebene von User Interfaces (UI). SAP lässt sich mit Ranorex analog zu Web und Windows Anwendungen auf dieser Ebene testen. Eine bessere Alternative zum Test auf UI-Ebene ist der Test auf Serviceebene gemäß der Test Pyramide. Vorteile sind die bessere Wartbarkeit der Testfälle sowie die schnellere„Ranorex Testautomatisierung mit SAP Funktionsbausteinen“ weiterlesen

Transport Management System: Transport von Kopien Erzeuger

Eine typische Situation bei der ABAP Entwicklung ist, dass ein IT-Test wegen fehlender Testdaten nicht im Entwicklungssystem, sondern nur im Testsystem möglich ist. Steht ChaRM zur Verfügung, ist das schnell gemacht: ChaRM transportiert die Entwicklung als Transport von Kopien mit dem Transport Management System. Wenn nun aber kein ChaRM verfügbar ist, muss man den Transport„Transport Management System: Transport von Kopien Erzeuger“ weiterlesen

SAP BOPF: EPM Datengenerator

Beim Schreiben der beiden Blogs zum SAP BOPF API ( Teil 1, Teil 2 ) hatte ich zufällig gesehen, dass es den EPM Datengenerator  zum Füllen der EPM BOPF-Tabellen für Salesorder, Business Partner, Product etc. mit Demodaten gibt. /BOBF/EPM_DATA_GENERATOR ist ein ausführbares Programm und es gibt ein Problem: Das Programm bricht mit einem Laufzeitfehler ab.„SAP BOPF: EPM Datengenerator“ weiterlesen

SAP BOPF API Teil 2

Nachdem wir uns im 1. Teil im Allgemeinen mit der SAP BOPF API und im speziellen mit der Implementierung der CRUDQ-Operationen Create, Read und Update beschäftigt haben, folgt nun der 2. Teil mit den restlichen Operationen Delete und Query. Weitere Themen bei der Implementierung gegen die SAP BOPF API sind Assoziationen, Actions (entspricht OData Function„SAP BOPF API Teil 2“ weiterlesen

SAP BOPF API Teil 1

Das Business Object Processing Framework (BOPF) ist ein Teil des ABAP Programming Model for SAP Fiori. BOPF steckt hinter den ObjectModel Annotations einer CDS View. BOPF gibt einer CDS View die Fähigkeit, nicht nur Daten zu lesen, sondern auch zu schreiben. In diesem Blog beschäftigen wir uns mit der SAP BOPF API. Wir implementieren CRUDQ„SAP BOPF API Teil 1“ weiterlesen

OData ABAP Unit Test

Testautomatisierung von OData Services in Zeiten von Continuous Integration und Continuous Delivery ist essentiell. Die Gründe sind, dass eigenentwickelte SAPUI5 Apps zunehmend geschäftskritische Funktionalitäten implementieren und der manuelle Test zu aufwendig ist. Das ABAP OData Framework ist mit dem ABAP Unit Test Framework integriert. OData ABAP Unit Test wird in der Online Doku SAP Gateway„OData ABAP Unit Test“ weiterlesen

OData ABAP Entwicklung: Lesen Domänenfestwerte

Eine häufige Anforderung bei der SAPUI5 Entwicklung ist der Umgang mit den zahlreichen Schlüsseln, die im ERP Backend verwendet werden. Zu so einem Schlüssel muss durch die SAPUI5 App die Bedeutung angezeigt werden. In diesem Blog-Artikel entwickeln wir einen Function Import, welcher die NameValue-Paare für Dömänenfestwerte an die SAPUI5 App zurückliefert. Domänenfestwerte im SAP DDIC„OData ABAP Entwicklung: Lesen Domänenfestwerte“ weiterlesen

Performanzoptimierung des ABAP OData $Expand

Ein häufig anzutreffendes Performanzproblem bei der klassischen OData Entwicklung in ABAP ohne Nutzung von SADL ist das Lesen von Entitäten mitsamt assozierter Entitäten mittels $expand. Ein Beispiel ist eine SAPUI5 Worklist App, welche zu den angezeigten SalesOrders weitere Informationen aus dem zugehörigen Business Partner und den SalesOrderItems anzeigt. Das Performanzproblem kann man gut an dem„Performanzoptimierung des ABAP OData $Expand“ weiterlesen

SEGW-Projekt (OData Service) mitsamt Implementierung kopieren

Der Gateway Service Builder (Transaktion SEGW) ist das allseits bekannte Werkzeug zur Implementierung eines OData Service auf einem SAP ABAP-System. Der Service Builder bietet die Funktion ein SEGW-Projekt zu kopieren. Das Kopieren kann notwendig sein, wenn man eine neue Version eines vorhandenen Service parallel zur existierenden Version erstellen will man mit einem von SAP ausgelieferten„SEGW-Projekt (OData Service) mitsamt Implementierung kopieren“ weiterlesen

Wiederverwendbarer modaler Auswahldialog in ABAP mit CL_SALV_TABLE

In einer typischen ABAP Dynproanwendung benötigt man irgendwann die Funktionalität, Daten dem Benutzer in einem Popup zu präsentieren und die  Auswahl zu prüfen. Häufig wird so ein Dialog manuell implementiert, obwohl es funktional immer das Gleiche ist. Was ist CL_SALV_TABLE? Mit dem Funktionsbaustein REUSE_ALV_GRID_DISPLAY gibt es eine Standardfunktionalität zur Implementierung eines Dialogs als auch zur„Wiederverwendbarer modaler Auswahldialog in ABAP mit CL_SALV_TABLE“ weiterlesen

Fiori Master/Detail App mit Gateway-Anbindung über Cloud Connector

Mach mal eben schnell! Um mal schnell eine Fiori-App zu implementieren, bietet die Web IDE in der SAP Cloud Platform die Möglichkeit, eine Fiori Master/Detail-App zu generieren. Diese Fiori App benötigt einen OData-Service, über welche die Daten aus dem Backend gelesen bzw. zurückgeschrieben werden. In häufig anzutreffenden Szenarien sind dies Services aus dem SAP ERP, die„Fiori Master/Detail App mit Gateway-Anbindung über Cloud Connector“ weiterlesen