This is a test message to test the length of the message box.
Login
BTP Business Configuration
Erstellt von Software-Heroes

BTP - Business Configuration (Anlage)

69

In diesem Artikel geht es um die Anlage von Pflegeviews im ABAP Environment zur Pflege von Daten und zum späteren Transport der Einstellungen.

Werbung


Wie pflegt man eigentlich Einstellungen und Tabellen, wenn es keine SAP GUI und damit keine SM30 gibt? In diesem Artikel werden wir etwas genauer auf die Anlage von Pflegeobjekten eingehen.

 

Einleitung

Die Pflege und Verteilung von Customizing ist im SAP Ökosystem schon immer zentraler Bestandteil der Pflege und Erweiterung des Systems. Um sicher zu stellen, dass nur Einstellungen ins Produktionssystem kommen, die bereits auch getestet wurden, werden die Einstellungen über Transporte verteilt. Dazu verwenden wir im System Pflegeviews, damit wir über die Transaktion SM30 oder eine eigene Transaktion, die Daten ändern und aufzeichnen können.

Im ABAP Environment gibt es dafür die neue Funktionalität der Business Configuration (BC). Hierbei wird auf einer Tabelle ein RAP Modell erstellt, um die Daten über eine Fiori App pflegbar zu machen. In diesem Zusammenhang gibt es eine Reihe von neuen Objekten, auf die wir in diesem Artikel näher eingehen wollen.

 

Tabelle

Dazu definieren wir uns im ersten Schritt eine Tabelle, für die wir eine Pflege anlegen möchten. Über die ABAP Development Tools legen wir nun auf dem Paket die neue Tabelle an. Per Rechts-Klick das Paket und über "New -> Other Repository Object" starten wir die Anlage und suchen nach "Database table".

 

Nun befüllen wir den Namen und die Beschreibung und lassen uns die Tabellen anlegen.

 

Diese Tabelle besitzt einen eigenen Schlüssel und einige Felder für die Pflege.

@EndUserText.label : 'Business Configuration'
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
@AbapCatalog.tableCategory : #TRANSPARENT
@AbapCatalog.deliveryClass : #C
@AbapCatalog.dataMaintenance : #ALLOWED
define table zbs_dmo_bc {
  key client            : abap.clnt not null;
  key config_id         : zbs_dmo_config_id not null;
  description           : abap.char(60);
  is_used               : abap_boolean;
  is_mandatory          : abap_boolean;
  processes             : abap.int1;
  working_class         : abap.char(32);
  configdeprecationcode : config_deprecation_code;
  last_changed_at       : abp_lastchange_tstmpl;
  local_last_changed_at : abp_locinst_lastchange_tstmpl;
}

 

Folgende Anforderungen gibt es an die Tabelle, bevor der Generator die entsprechenden Objekte generieren kann:

  • dataMaintenance - Attribut muss auf #ALLOWED stehen, damit die Pflege der Daten möglich ist.
  • Felder - Schlüsselfeld muss mit Datenelement und Domäne ausgestattet werden. Weiterhin werden einige Felder benötigt, die als technische Grundlage dienen (LAST_CHANGED_AT, LOCAL_LAST_CHANGED_AT).

 

Generierung

Ähnlich wie beim RAP Generator, können wir uns nun alle relevanten Objekte generieren lassen. Dazu wählen wir über das Kontextmenü der Tabelle die Option "Generate ABAP Repository Objects...".

 

Im nächsten Schritt startet nun der Wizard, wo wir auch die anderen Generatoren für die RAP Objekte finden. Da wir die Business Configuration erzeugen wollen, wählen wir den Generator für "Maintenance Object" und bestätigen die Auswahl.

 

Es werden nun die einzelnen Schritte angezeigt, wo du noch die Möglichkeit hast, die Namen und Beschriftungen der Objekte anzupassen. Bei "Scenario Options" können Optionen gewählt werden, ob zum Beispiel die Kopieren-Aktion angeboten wird, ob Konsistenzchecks generiert werden. Hier wird auch der Name der abstrakten Entität zum Kopieren geändert.

 

Im Abschnitt "BC Maintenance" wir der Name des Transport-Objekts und des Maintenance-Objekts angegeben, diese können ebenfalls angepasst werden.

 

Der Abschnitt "Data Model" umfasst die Hauptobjekte des Datenmodells, im unteren Abschnitt befindet sich aktuell die gewählte Tabelle, hier können aber weitere Tabellen angegeben werden. Hier werden weitere Informationen zu Draft Objekten und Texten gepflegt.

 

Im Abschnitt "Behavior Implementations" werden die Klassen definiert, in denen später die Logik, wie Ermittlungen und Validierungen, entwickelt werden können.

 

Im letzten Abschnitt "Business Service" wir der Name des Service Bindung und der Service Definition hinterlegt. Diese stellen den Zugriff nach Außen als API zur Verfügung.

 

Zum Abschluss erhalten wir noch eine Liste der Objekte, die generiert werden soll und können die verschiedenen Objekte einmal prüfen, bevor sie dann im System angelegt werden.

 

 

Maintenance Object

Bei diesem Objekt handelt es sich um ein neues Objekt, welches die Funktionen der BC steuert. Hier können die unterschiedlichen Dinge eingestellt und konfiguriert werden. 

 

Die Möglichkeiten der Konfiguration sind recht umfangreich, sodass wir diese in einem späteren Artikel durchgehen werden. Im Moment müssen wir hier keine Einstellungen vornehmen, der Generator hat bereits die wichtigsten Punkte für uns erledigt.

 

Transport Object

The Transport is a new object with the configuration from the transport settings. Actual the object is only visible via JSON view in Eclipse and only some settings can be changed.

 

Berechtigung

Bevor wir allerdings mit der Business Configuration arbeiten können, müssen wir uns entsprechende Berechtigungen erstellen, ansonsten können die Einstellungen nicht gepflegt werden.

 

IAM App

Dazu legen wir uns im ersten Schritt eine IAM App an und verwenden dabei den Typ mit der Endung MBC.

 

Im nächsten Schritt ordnen wir im Reiter "Service" den erstellten Service von der Business Configuration zu. Der Service wir immer als OData v4 und UI Service angelegt.

 

Nach der Zuordnung ist der Service entsprechend im Reiter sichtbar.

 

Im nächsten Schritt benötigen wir noch die Berechtigungen zum Zugriff auf die Daten, diese ordnen wir im Reiter "Authorizations" zu. Dabei weisen wir zwei Einträge zu. Wir benötigen Berechtigungen zum Lesen der Änderungsdokumente der Tabelle, da hier auch die Änderungsbelege gespeichert werden. Und Anzeige, sowie Bearbeitung, für Tabelle und den Core Data Service, der nach außen freigegeben wird.

 

Business Catalog

Im nächsten Schritt benötigen wir einen Business Catalog, die eigentliche Rolle, die wir dann dem Anwender zuordnen können. Entsprechend geben wir dem Katalog einen Namen und eine Beschreibung.

 

Im Reiter "Apps" ordnen wir die IAM App mit der Endung MBC zu. Hier nicht vergessen über "Publish Locally" den Katalog im System freizugeben, um ihn dann einer Rolle zuordnen zu können. 

 

Nutzung

Wir können wir nun die Daten in unserer Tabelle pflegen? Dazu gehen wir in die App "Custom Business Configurations" (F4579), diese finden wir im Business Catalog "Customizing - Business Configuration" (SAP_CA_BC_IC_LND_PC).

 

Dort finden wir alle BC Objekt, wofür wir auch Berechtigungen haben. Über die Suche können wir die Objekte einschränken, um unsere Pflege/Tabelle zu finden.

 

Wenn wir unser Objekt wählen, gelangen wir in die Anzeige der Tabelle und können per "Edit" Button die Bearbeitung in der App starten. Sollte der Button nicht klickbar sein, fehlen sehr wahrscheinlich noch die passenden Berechtigungen.

 

Die ersten Prüfungen sind bereits in der App aktiv und weisen uns auf Fehler oder fehlende Informationen hin.

 

Fazit

Mit der Anlage der Tabelle und einigen Informationen erhalten wir bereits eine einfache Pflegeoberfläche für unsere Tabelle. Wir sparen uns damit die Anlage einer eigenen UI über eine App und erhalten weitere Komfortfunktionen für die Arbeit mit den Daten.


Enthaltene Themen:
BTPABAP EnvironmentBusiness Configuration
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.


RAP - Custom Entity Wertehilfe (Deep Dive)

Kategorie - ABAP

Mit der Custom Entity hast du in RAP die meisten Freiheiten in der Entwicklung von ABAP Cloud Anwendungen, doch wie sieht es mit potentiellen Fehlern aus?

12.07.2024

BTP - Business Configuration (Einstellungen)

Kategorie - ABAP

Schauen wir uns im ABAP Environment einmal die Einstellungen des Maintanance Objects an und welche Auswirkungen sie auf die Pflege haben.

31.05.2024

RAP - Deep Action in OData v4

Kategorie - ABAP

In diesem Artikel schauen wir uns einmal Aktionen mit tiefen Strukturen an, wie wir sie erzeugen und Daten an einen API Endpunkt übergeben können.

24.05.2024

BTP - Business Configuration (Anpassung)

Kategorie - ABAP

Wie sieht es eigentlich mit Anpassungen des RAP Business Objekts im Kontext der Business Configuration aus? Mehr Informationen in diesem Artikel.

17.05.2024

BTP - Business Configuration (ohne Transport)

Kategorie - ABAP

Wie nutzt man eigentlich die Business Configuration ohne die Transportaufzeichnung? In diesem Artikel klären wir, ob es möglich ist.

07.05.2024