This is a test message to test the length of the message box.
Login
ABAP Cloud Tabellen
Erstellt von Software-Heroes

ABAP Cloud - Tabellen

196

Wie sieht es eigentlich mit dem Zugriff auf Tabellen in ABAP Cloud aus? In diesem Artikel beleuchten wir die Strategie beim Finden von Alternativen.

Werbung


In diesem Artikel beleuchten wir die Nutzung von Tabellen in unserer Entwicklung. Was bisher als Standard galt, ist nun nicht mehr der Fall und wir müssen uns nach Alternativen umschauen.

 

Einleitung

Als ABAP Entwickler kennst du wahrscheinlich fast alle Tabellen in deinem Modul auswendig und kannst jedes Feld seinem Sinn und Zweck zuordnen. Auch wenn du vielleicht kein Deutsch kannst, so hast du dich an die unaussprechlichen Namen gewöhnt und diese gelernt. Schauen wir uns die Finanzbuchhaltung an, gibt es für den Kopf die Tabelle BKPF und die Positionen die BSEG. Ein wichtiges Element ist der BUKRS (Buchungskreis), welches im Schlüssel vorkommt und in der Tabelle T001 seine Heimat hat.

 

Core Data Services

Mit ABAP Cloud können wir noch einmal mit dem Lernen beginnen, da wir hier einen Wechsel von den bekannten Tabellen auf die neuen Core Data Services machen. Neben dem Lernen als Nachteil, bringt es auch einige Vorteile mit sich. So bekommen die Core Data Services nun neue und sprechende Langnamen, sodass wir diese besser ihrem Zweck und Modul zuordnen können. So wird aus der Tabelle T001 der Core Data Service I_CompanyCode.

Das virtuelle Datenmodell ermöglicht es nun einen Layer zu schaffen, den man leicht wiederverwenden kann und behält sich gleichzeitig die Möglichkeit die Tabellen darunter flexibel zu erweitern, anzupassen oder sogar auszutauschen.

 

Suche

Die Suche nach dem richtigen Core Data Service kann recht einfach ausfallen oder sehr schwer werden. Aktuell gibt es nicht zu jeder alten Tabelle den passenden Core Data Service.

 

Nachfolger

Der einfachste Weg ist der Blick in die eigentliche Tabelle, schauen wir uns zum Beispiel einmal die Buchungskreise (T001) an, findest du dort im View "Properties" im Reiter "API State" die entsprechenden Informationen im C1-Contract.

 

Der "Release State" sagt uns, dass das Objekt nicht freigegeben wird, es aber einen Nachfolger (I_CompanyCode) gibt. Über "Use in Cloud Development" sehen wird auch, dass wir den CDS View in der ABAP Cloud Entwicklung verwenden können.

 

Cloudification Repository

Nicht immer sind die Informationen so leicht abzuleiten, wie über die Eigenschaften des Objekts. Ist dein S/4 HANA Release zu niedrig, dann ist der Core Data Services vielleicht noch nicht freigegeben oder die Information im System fehlt. Damit du den vielleicht passenden View findest, gibt es auch das Cloudification Repository. Hierbei handelt es sich um ein Repository, in dem du die aktuellen Freigaben findest.

 

Im Repository findest du auch den Cloudification Repository Viewer von SAP, wo du nach den Nachfolgern suchen kannst. Alternativ kannst du auch unsere Variante verwenden.

 

ABAP Test Cockpit

Das Cloudification Repository kann genutzt werden, um in deinem ABAP Test Cockpit die Prüfung "Usage of Released APIs" zu aktivieren und die URL zu hinterlegen. Weitere Informationen dazu, findest du in diesem Artikel.

 

Feldmapping

Die letzte Herausforderung ist nun, das bekannte BUKRS auf das neue Feld zu mappen, denn neben den Langnamen für die Tabellen, sind nun auch neue und sprechende Langnamen in den Core Data Services vorhanden. Wie nun also an die entsprechenden Informationen kommen?

 

BSEG

Schauen wir als Beispiel einmal den CDS View "I_OperationalAcctgDocItem" an, der der Nachfolger der BSEG ist. Bis zur eigentlichen Tabelle sind es drei Ebenen. Steckt nun also unser BUKRS aus der Datenbank wirklich hinter dem Feld mit dem Namen CompanyCode? In diesem Beispiel ist es sehr wahrscheinlich, doch nicht immer ist ein Feld leicht zuordenbar.

 

CDS Feld Mapping

Wir möchten dir daher die neue Anwendung "CDS Feld Mapping" vorstellen. Hierbei handelt es sich um einen Auszug aus dem System, welcher die freigegebenen Core Data Services aus dem Cloudification Repository nimmt, die Hierarchie prüft und das aktuelle Core Data Service Feld auf das Datenbankfeld mappt. Dabei prüft die Auswertung jede Ebene und zeigt nur Felder an, die wirklich zugeordnet werden können. In dem Tool kannst du nach Entitäten und/oder Feldern suchen.

 

Felder, die nicht eindeutig zugeordnet werden können, werden leer gelassen und du findest nur das Feld aus dem Core Data Service. Das Mapping wird als JSON Datei im GitHub Repository abgelegt, dort findest du auch weiter Informationen zum Extraktor. Das Projekt würden wir noch einmal in einem zusätzlichen Artikel vorstellen.

 

Hinweis: Es handelt sich aktuell um eine Beta Version und der Extraktor kann noch kleinere Bugs haben, vor allem wenn es um CDS Funktionen in der Hierarchie geht. Dadurch bleiben mehr Felder leer, als eigentlich gemappt werden könnten.

 

Nutzung

In ABAP Cloud ist die Nutzung der Core Data Services für SAP Standard Tabellen Pflicht, da die klassischen Tabellen nicht mehr zum Lesen freigegeben werden. Aus den oben genannten Gründen werden deshalb Core Data Services verwendet. Ändernde Zugriffe auf Standardtabellen funktionieren nur noch über bereitgestellte RAP Objekte oder im Fall von TIER-2, über freigegebene BAPIs. Gleichzeitig werden mit CDS Views auch Berechtigungsprüfungen ausgeliefert, sodass du als Entwickler nicht mehr daran denken musst, eine Prüfung durchzuführen und der User nur das sieht, wofür er auch Berechtigungen hat.

Für kundeneigene Tabellen solltest du ebenfalls auf Core Data Services zurückgreifen, vor allem wenn du die Views per C1-Contract auch anderen Software Komponenten freigeben möchtest. Änderungen kannst du wie gewohnt direkt auf der Tabelle durchführen oder per RAP Objekt auf der Tabelle.

 

Fazit 

Bis wir nun wieder alle Core Data Services und Felder gelernt haben, helfen uns erst einmal die verschiedenen Tools wie die ABAP Development Tools, das Cloudification Repository oder das CDS Feld Mapping die passenden Objekte zu finden.


Enthaltene Themen:
ABAP CloudABAPTabellen
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


ABAP Cloud - ADT Bäume (Übersicht)

Kategorie - ABAP

Welchen Hilfen und Übersichten stehen dir in den ABAP Development Tools zur Verfügung, um dein Leben mit ABAP Cloud zu vereinfachen?

17.12.2024

ABAP Cloud - Relevante Objekte

Kategorie - ABAP

Welche Objekte sind in der ABAP Entwicklung eigentlich noch relevant und welche kannst du so langsam in die Mottenkiste packen? Hier erfährst du mehr.

19.11.2024

ABAP Cloud - Sperren

Kategorie - ABAP

Für was musst du Sperren setzen und wie kannst du das leicht in ABAP Cloud machen? In diesem Artikel schauen wir uns den Prozess im Detail an.

08.11.2024

ABAP Cloud - HTTP Client

Kategorie - ABAP

Wie sieht eigentlich der aktuelle HTTP Client in ABAP Cloud aus? Lasst uns einen Blick auf das neue Modell werfen.

01.11.2024

ABAP Cloud - Key User Apps

Kategorie - ABAP

Die Key User Extensibility ist ein Teil von ABAP Cloud, wenn es um die Erweiterung des Core geht, doch wie kannst du die Werkzeuge sinnvoll nutzen und wie ergänzen sie sich?

11.10.2024