Nenne 2 Haltepunkte fürs Debuggen
Breakpoint, Watchpoints
Mit welcher Schleife können Anweiseungen geschrieben werden, bei der nur die Durchläufe angegeben werden
DO 15 TIMES. WHILE <<BEDINGUNG>> ENDO.
Nenne 4 Oberfläche Elemente eines SAP dralog von GUI Printen
Button, Checkbox, Rahmen, Container
Wie heißt das Oberflächen-Element über das wir ALV-Grid anwenden können?
Custom Container
Wie lautet die Systemtabelle, über die wir eine dynamische Modifikation unserer Oberfläche z.B. in PBO Modul sicherstellen können?
SCREEN TABELLE
Nenne zwei Features/Besonderheiten von SAP ABAP
Zentrales Data Dictionary (Zentrale Verwaltung von Struktur und Definition von Datenobjekten)
OPEN SQL für Datenbankzugriffe (Datenbankunabhängige Methode für strukturierte Datenbankzugriffe, die nahtlos in ABAP integriert ist, gibt Entwicklern Flexibilität SQL-Anweisungen dynamisch zu erstellen)
Wie nennt man in ABAP eine Variable, die meherere Datensätze auf einmal z.B. beim Lesen aus einer Datenbanktabelle aufnehmen kann?
Interne Tabelle
Aus welchen drei Systemen besteht üblicherweise eine SAP Systemlandschaft und in welcher Reihenfolge durchlaufen Softwaretransporte die Systeme im Normalfall?
Entwicklungssystem (DEV), Testsystem (QM), Produktivsystem (PRD)
Erst entwickeln, dann testen und wenn alles läuft -> Transport ins Produktivsystem
Datentypen in ABAP lassen sich grundsätzlich in elementare, eindimensionale und mehrdimensionale Typen einteilen. Nennen Sie je ein Beispieö für einen solchen Datentyp
Elementare Typen: I, F, C (Integer, Float, Character)
eindimensionale Typen: Struktur/Feldleiste/Zeilentyp
mehrdimensionale Typ: interne Tabelle
Nenne die 4 Spaltennamen einer Range-Tabelle
SIGN: Spalte gibt an, ob Bereich Inklusive (I) oder Exklusive (E) interpretiert werden soll
OPTION: Welche Art von Vergleich für den Bereich durchgeführt werden soll (EQ (gleich), NE (ungleich), GT (größer als), LT (kleiner als)….
LOW: Untere Wert des Bereichs
HIGH: Oberer Wert des Bereichs
(Der Bereich erstreckt sich von LOW bis HIGH)
Nenne die 3 wesentlichen Status, die ein Entwicklungsobjekt in der ABAP-Workbench annehmen kann
Neu, aktiv, inaktiv (und inaktiv “überarbeitet”)
Welche beiden Möglichkiten kennen Sie, um den User Eingabemöglichkeiten innerhalb eines Report-Programmes anzubieten (ABAP-Schlüsselworte). Worin unterscheiden sich diese?
PARAMETERS: Einzelner Wert
SELECT-OPTION: Mehrere Werte
Mit welchen der aufgeführten Programmnamen darf ein SAP-Kunde einen selbst entwickelten Report bezeichnen?
AUSWERTUNG
XAUSWERTUNG
YAUSWERTUNG
ZAUSWERTUNG
Grundsätzlich nur im Z und Y Namensraum wird entwickelt, da andere Präfixe SAP gehören. Alles was nicht mit Z&Y anfängt geht nicht
Begründe, wovor der SAP-Kunde durch den so genannten Kundennamensraum geschützt wird
Überschreiben kundeneigener Programme durch nachträgliche installierte SAP-Releases
Beschreibe das zweistufige Typkonzept des Data Dictionary und bennene und erläutere die grundlegenden Bestandteile. Gehe dabei auch aif die Vorteile des zweistufigen Typkonzepts des DDIC ein
Stufe “Semantik”: Datenelemente
Stufe “Technik”: Domäne
Zu diedem Konzept gehören Domänen und Datenelemente
Domänen beschreiben dabei einen Datentyp aus technischer Sicht
Datenelemnte beschreiben ein Datentyp aus semantischer Sicht
Ein Datemelement kann sich auf eine Domäne beziehen
Eine Domäne kann in vielen Datenelementen verwendet werden (Wiederverwendbarkeit)
Änderungen an einer Domäne wirken sich auf alle ihr zugeordneten Datenelemente aus
In welchem Umfang werden Datenelemente in einem SELECT * Statement aus der Datenbank gelesen, wenn in der WHERE Klausel mittels IN Anweiseung auf eine Range Tabelle verwiesen wird und diese leer ist
Es wird alles gelesen
Entschlüssel die beiden Abkürzungen PBO und PAI und erkläre die Bedeutung dieser beiden Begriffe und in welchem Rahmen sie zur Anwendung kommen
PBO: Process Before Output, PAI: Process After Input
Sind Teile der DynPro-Ablauflogik und bennen die Bewegungsrichtung der im DynPro dargestellten Daten
Der PBO beinhaltet Module, die für die Datenübernahme vom Backend ins Frontend zuständig sind
Der PAI beinhaltet Module, die für die Datenübernahme vom Frontend ins Backend zuständig sind
Der PAI behandelt die in SY-UCOMM bezeichnete Benutzerinteraktion
(SY-UCOM: Es handelt sich dabei um eine Systemvariable, die den aktuellen Benutzerbefehl (User Command) enthält, der während der Interaktion des Benutzers mit einer SAP-Anwendung ausgelöst wurde.)
Nenne die beiden grundsätzlichen Sperrmodi in SAP ABAP
Erläuter den Ablauf wie ABAP mit Hilfe von Sperrobjekten/Sperrbausteinen eine Konsistenz der Datenbank sicherstellt. Gehe dabei auf den Prozess und die Reihenfolge ein wie Sperren gesetzt und abgefragt werden und unter welchen Bedingungen Sperren wie entfernt werden
Schreibsperre E und Lesesperre S
E: Verhidnert, dass andere Benutzer gleichzeitig auf dasselbe Datenbankobjekt schreibend zugreifen können
S: Ermöglicht es mehreren Benutzern, gleichzeitig lesenden Zugriff auf dasselbe Datenbankobjekt zu haben.
Programm fordert Sperre an und Prüfung gegen Sperrtabelle
Rückmeldung Sperre gesetzt/abgewiesen
Sperre gesetzt und SPerreintrag geschrieben
Sperre gelöscht, wenn Programm beendet oder im Coding aufgehoben
(Sperrmodi für Steuerung der Zugriffe auf Datenbankobjekte. Exklusive Lock oder Shared Lock)
Welche Möglichkeiten in ABAP kennen sie um Verzweigungen im Programmcode aufgrund von Bedingungen abzubilden? Worin unterscheiden sich diese Möglichkeiten grundsätzlich?
CASE: Folgeverarbeitung abhängig von Inhalt einer Variable
IF: Folgeverarbeitung abhängig vom Inhalt mehrerer Veriablen
Welche Anweisung empfiehlt sich, wennn in einem PAI Modul dynamisch auf die in der Variable sy-ucomm gespeicherte Usereingabe reagiert werden soll?
CASE-Anweisung, da Inhalt einer Variablen
Implementieren Sie eine mittels Anweisung eine Programmlogik, die es innerhalb eines DynPros ermöglicht für die User Commands „BACK“ und „ENDE“ zum vorherigen Screen zurückzukehren bzw. das Programm zu verlassen.
CASE sy-ucomm.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'ENDE'.
LEAVE PROGRAMM.
ENDCASE.
Es ist die Klasse Z_ARTIKEL_C gegeben mit der internen Standard-Tabelle MT_ARTIKEL als privates instanzspezifisches Attribut und dem Rumpf der instanzspezifischen Methode GET_FIRST. Die interne Tabelle MT_ARTIKEL hat den Zeilentyp Z_ARTIKEL. Füllen Sie die Methode mit ABAP-Programmcode, so dass bei leerer MT_ARTIKEL der Parameter EX_ARTIKEL explizit geleert wird. Bei gefüllter MT_ARTIKEL soll der erste Datensatz daraus in EX_ARTIKEL an den Aufrufer geliefert werden.
* Folgende Signatur der Methode GET_FIRST ist gegeben:
* EXPORTING
* ex_artikel TYPE z_artikel
READ TABLE mt_artikel INTO ex_artikel INDEX 1.
IF sy-subrc <> 0.
CLEAR ex_artikel.
ENDIF.
In einer Klasse ist die Schnittstelle der Methode „Artikelstammsätze lesen“ vorgegeben. Programmieren Sie mit Sprachmitteln des OPEN-SQL in ABAP die Selektion alles passenden Artikelstammsätze aus der Datenbanktabelle ZW599_ARTIKEL. Diese Datenbanktabelle besitzt das Primärschlüsselfeld ARTNR „Artikelnummer“ und einen INDEX auf ihr Feld KUERZ „Artikelkürzel“.
Verwenden Sie bei der Selektion alle Schnittstellenparameter der Methode.
Die Schnittstelle der Methode ist folgendermaßen definiert:
METHOD db_select
* IMPORTING
* im_art_nr_rt TYPE zw599_artnr_rt // Range mit Artikelnummern
* im_art_kuerz_rt TYPE zw599_kuerz_rt // Range mit Artikelkürzeln
* ext_artikel TYPE zw599_artikel_t // Interne Tabelle mit Zeilentyp ZW599_ARTIKEL
METHOD db_select.
SELECT * FROM zw599_artikel INTO TABLE ext_artikel
WHERE artnr IN im_art_nr_rt
AND kuerz IN im_art_kuerz_rt.
CLEAR ext_artikel.
ENDMETHOD.
Ergänzen Sie folgenden Programmteil an den vorgezeichneten vier Stellen, so dass ein ALV-Grid-Control die Artikelstammsätze der bereits im TOP-Include deklarierten internen Standard-Tabelle GT_ARTIKEL anzeigt.
Die interne Tabelle GT_ARTIKEL hat als Zeilentyp die Struktur der Datenbanktabelle ZW599_ARTIKEL
Der Custom Container für das ALV-Grid-Control hat den Namen ARTIKELUEBERSICHT im Dynpro.
MODULE status_0100 OUTPUT.
IF g_container IS INITIAL.
CREATE OBJECT g_container
EXPORTING
container_name = _____.
CREATE OBJECT g_alv
iparent = _____.
g_alv->set_table_for_first_display(
i_structure_name = _____
CHANGING
it_outtab = _____).
ENDMODULE.
container_name = 'ARTIKELUEBERSICHT'.
i_parent = g_container.
i_structure_name = 'ZW599_ARTIKEL'
it_outtab = 'GT_ARTIKEL' ).
Nennen Sie zwei Vorteile für den Benutzer, wenn ein Feld auf DynPro´s mit Bezug zum Data Dictionary definiert wird?
Bzw. Nennen Sie zwei Gründe, warum man Dynpro bevorzugt in einer Funktionsgruppe kapselt.
Kapselung
Wiederverwendbarkeit
Einfache Änderung
DIe ABAP-Syntax kennt keinen bool`schen Datentyp. Welches Datenelement von SAP ist eine brauchbare Alternative?
Eine Alternative für den bool`schen Datentyp ist das XFELD. Dieses ist ein Festwert und ist vom Datentyp “char”
X=true, leer=false
Nenne die 3 Schichten einer typischen SAP Architektur
Präsentationsschicht (SAP GUI)
Anwendungsschicht (ABAP)
Datenbank (RDBMS)
Nenne 3 ABAP Programmtypen, die über eine Transaktion gestartet werden können
Methode zu Klasse
Dialogprogramm
Reports
Mit welcher Anweisung kann man zur dynamischen Bildmodifikation alle Felder eines DynPros durchlaufen und unter anderem deren Eingabebereitschaft ein- und ausschalten?
SCREEN AT LOOP
SCREEN Tabelle
Mit SCREEN-REQUIRED =“1“
(1=aktiv, 0=ausschalten)
Nenne Gründe, warum ein MODUL einer DynPro-Ablauflogik entgegen seinem Namen nicht als Modularisierungstechnik eingesetzt werden sollte?
Es besteht keine Schnittstelle zum Datenaustausch
Sie möchten vom Benutzer im Selektionsbild eines Reports eine einzelne Flugnummer und ein Datum bzw. mehrere Daten, oder einen bestimmten Zaitraum erfragen. Welche Möglichkeiten für das Selektionsbild bietet ABAP hierfür? Nennen Sie die Schlüsselwörter mittels derer sie Eingabefelder für Flugnummer bzw. die Daten definieren und ordnen sie diese der Flugnummer bzw. dem Datum/der Daten zu
PARAMTERS: Flugnummer, da nur ein Feld möglich ist
SELECT-OPTIONS: Datum/Daten
Welche Datenbanken unterstützt SAP
Relationale Datenbanken (RDBMS)
Für was stehen die Kürzel ABAP
Advanced Business Application Programmierung
Nenne die Modularisierungstechniken
Prozedur: Unterprogramme, Funktionsbausteine und Methoden
Quelltextmodul: Include-Programme und Makros
Zwei grundsätzliche Bausteine von DynPros
Layout und Abluaflogik
Auf welche beiden Arten können wir Strukturen miteinander verschachteln
Flach und tief
Zuletzt geändertvor einem Jahr