This is a test message to test the length of the message box.
Login
BTP ATC Genehmigung in Steampunk
Erstellt von Software-Heroes

BTP - ATC Genehmigung in Steampunk

67

Wie kannst du eigentlich eine ATC Befreiung im SAP BTP ABAP Environment durchführen? Wir führen dich einmal Schritt für Schritt durch den Prozess.

Werbung


In diesem Artikel schauen wir uns den Genehmigungsprozess im ABAP Environment an und wieso dieser etwas unterschiedlich ist, als zum Standardprozess des Central ATC.

 

Einleitung

Vor einer Weile hatten wir dir gezeigt, wie du das Central ATC in der BTP aufsetzen kannst. Dabei kannst du verschiedene Vorteile nutzen, wenn du das zentrale Szenario verwendest, wie die aktuellen Prüfungen, zentrale Governance über die Systeme und Sicherheitsprüfungen (CVA), die keine zusätzlichen Lizenzen benötigen. Dabei hatten wir auch gezeigt, dass das Central ATC aktuell ein Steampunk System nicht unterstützt.

 

 

Grundsätzlich kannst du die gleiche Variante verwenden, wie du auch für die On-Prem Prüfungen verwendest und als Standard definieren. Allerdings werden Befreiungen durch Entwickler anders gehandhabt und nicht über die zentrale Fiori Anwendung prozessiert. Das liegt auch daran, dass der Prozess zuerst im System definiert wurde, bevor die Idee des zentralen ATC seinen Weg in die Produktion gefunden hat.

 

Beispiel 

Zuerst benötigen wir erst einmal etwas, was durch ATC prüfen können und was eine Meldung erzeugt. Grundsätzlich stehen uns dazu einige Themen zur Verfügung, die oft Probleme bereiten, wie ein nicht übersetzbarer Text oder die vergessene Sortierung nach der Selektion aus einer Tabelle. Dazu das kleine Beispiel, hier verwenden wir eine Tabelle aus unseren CDS Tutorials.

CLASS zcl_bs_demo_atc_approve DEFINITION
  PUBLIC FINAL
  CREATE PUBLIC.

  PUBLIC SECTION.
    INTERFACES if_oo_adt_classrun.
ENDCLASS.


CLASS zcl_bs_demo_atc_approve IMPLEMENTATION.
  METHOD if_oo_adt_classrun~main.
    SELECT FROM zbs_dmo_partner
      FIELDS *
      INTO TABLE @FINAL(partners).

    LOOP AT partners INTO DATA(partner) FROM 1 TO 3.
      partner-name = 'No clean Text'.
      out->write( partner ).
    ENDLOOP.
  ENDMETHOD.
ENDCLASS.

 

Um die Prüfung nun auszuführen, kannst du die Tastenkombination STRG + SHIFT + F2 im Objekt verwenden oder du gehst über die Aktion/Kontextmenü des Objekts.

 

Führen wir nun in dem Beispiel unseren ATC Check aus, sollten wir nun ein Ergebnis erhalten. Hier solltest du schauen, mit welcher Variante du die Prüfung ausführst. Grundsätzlich ist in der Prüfvariante "FUNCTIONAL_DB" auch die Prüfung enthalten, wenn du eine Standardvariante verwenden willst.

 

Antrag

Um nun eine Ausnahme zu beantragen, musst du nur in den Ergebnissen Rechts-Klick auf ein Finding machen. Neben verschiedenen anderen Aktionen, wie die Quick Fixes, findest du auch die Anträge über die Option "Request Exemption".

 

Damit startest du den klassischen Wizard, den du auch in einem On-Prem System findest. Im ersten Bild definieren wir, für was wir die Befreiung beantragen wollen. Hier können wir auch die Gültigkeit der Freigabe beantragen, ob es temporär sein soll (kurzer Zeitraum) oder wir das Finding für immer befreien wollen.

 

Im nächsten Schritt wählen wir einen Grund und haben noch einen Freitext, um das Problem oder die Begründung weiter zu beschreiben. 

 

Haben wir einen Transport gewählt, wird zum Abschluss der Befreiungsantrag (CHKE) angezeigt. Hierbei handelt es sich um eine transportierbare Ausnahme, die sich nun in unserem Transport befindet.

 

Befreiung

Grundsätzlich kannst du nun deinem Kollegen den Link zum Antrag schicken. Dazu gehst du auf die Teilen Funktion des Objekts und lässt dir den Link generieren. Auf der anderen Seite kann dein Kollege aber auch einfach regelmäßig im System prüfen, ob neue Freigaben vorhanden sind. Wird können über das Menü unter "Window -> Show View -> Others ..." oder STRG + 3 nach dem View "ATC Exemptions (ABAP)" suchen.

 

Dort findest du alle Systeme aufgelistet und auch die entsprechenden Anträge. Grundsätzlich kannst du pro System nach einem spezifischen User filtern oder per "*" nach allen Einträgen des Systems schauen. Im Bereich Open sollten wir nun die offenen Einträge des Systems finden.

 

Per Doppelklick auf den Eintrag öffnest du die Befreiung und landest wieder im entsprechenden Dialog. Da wir hier mit dem 4-Augen-Prinzip arbeiten, kannst du deine eigenen Anträge nicht genehmigen. In diesem Beispiel haben wir einen Antrag von einem Kollegen. Erst wenn wir die Begründung befüllen, werden die Buttons zur Genehmigung aktiv geschaltet und wir können den Antrag genehmigen oder ablehnen.

 

Der Antrag wird dann ebenfalls auf einem Transportauftrag aufgezeichnet. Zu diesem Zeitpunkt am besten den gleichen Transport nutzen, wie für die Beantragung. Damit wäre der Freigabeprozess abgeschlossen und wir können normal transportieren.

 

Berechtigung

Damit du Anträge im System freigeben kannst, benötigst du die passenden Berechtigungen. Über den Business Catalog SAP_A4C_BC_DEV_CHKE_APR_PC (Quality Management - ABAP Test Cockpit Exemption Approval) bekommst du alles, was du für den Prozess brauchst.

 

Fazit

Aktuell weicht der Prozess im ABAP Environment noch komplett von dem des Central ATC ab und wir können aktuell nur die lokale Variante nutzen. SAP plant aber sicherlich auch für die Zukunft, dass System zentral anbindbar zu machen, um alles über ein System zu prozessieren und ein zentrales System zu verwenden.


Enthaltene Themen:
BTPABAP EnvironmentATCGenehmigung
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und 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.


BTP - Pages und Spaces (ADT)

Kategorie - ABAP

Kannst du eigentlich auch das Launchpad mit den Pages und Spaces über die ABAP Development Tools konfigurieren? In diesem Artikel schauen wir uns die aktuellen Möglichkeiten an.

08.08.2025

RAP - Generator (from Scratch)

Kategorie - ABAP

Deine Entwicklung mit RAP fühlt sich manchmal sehr langsam an? Generatoren nehmen dir die Arbeit ab, um den eigentlich Stack aufzubauen und wiederkehrende Arbeit abzunehmen.

05.08.2025

RAP - Aktion (Verarbeitungsoptionen)

Kategorie - ABAP

Wie aktivierst du eigentlich den Multi-Select in RAP und steuerst die verschiedenen Verarbeitungsoptionen? Hier schauen wir uns die verschiedenen Möglichkeiten im Framework an.

01.08.2025

RAP - Custom Entity mit Aktion

Kategorie - ABAP

Wie kannst du eigentlich in einer Custom Entity eine Action sauber implementieren, um am Ende auch das UI zu aktualisieren? Schauen wir uns die verschiedenen Schritte im Detail an.

29.07.2025

BTP - Pages und Spaces (Apps)

Kategorie - ABAP

Wie bringst du eigentlich in das Launchpad deines ABAP Environments mehr Struktur in deine Anwendungen? In diesem Artikel schauen wir uns die Konfiguration im System an.

25.07.2025