Alles Flashcards

(64 cards)

1
Q

Was ist zur Kompatibilität von ABAP zu sagen?

A

Ist abwärtskompatibel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist mit Mehrsprachigkeit von ABAP zu sagen?

A

Wird unterstützt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was ist mit SQL und ABAP?

A

SQL ist in ABAP eingebettet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wonach ist ABAP stark ausgerichtet?

A

Ist ABAP Plattform- und Datenbankunabhängig?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie sieht es hinsichtlich der Kompilierung bei ABAP aus?

A

bei erster Ausführung kompiliert –> Liegt auch als Quelltext vor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Welche drei Ebenen gibt es bei der Kompilierung von ABAP-Code?

A

Präsentation (SAP GUI) –> Application (Application Server) –> Database (Databaseserver) (–> Quellcode/ Kompiliertes Programm)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist bei mandantenunabhängig und was ist mandantenabhängig?

A

unabhängig: Repository (Tabellen, Programme, Funktionsbausteine…)

abhängig: Anwendungs- und Benutzerdaten, mandantenabhängiges customizing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was wird benötigt, um mit ABAP zu entwickeln?

A
1. System mit Repository-Zugriff oder
Entwicklungsmandant
2. User mit Entwicklerrechten und
Entwicklerschlüssel
3. Gegebenenfalls ein eigenes Paket oder
einen Transportauftrag
4. Verwendung des Namensraums YZ für
Eigenentwicklungen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Welche Stufen gibt es bei der Einführung eines Programms?

A

DEV (Development) –> QAS (Quality Assurance) –> PROD (Production)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie ist die Hieriachie bei der Entwicklung eines Entwicklungs”projekts”?

A

Projekt 1 — n Transportauftrag 1 – n Aufgabe 1 – 1 Mitarbeiter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wodurch wird “Code weitergeschoben” in die nächste Stufe?

A

Über Transportaufträge im Repository

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was muss getan werden, um Aufträge freizugeben?

A

Erst Aufgaben freigaben

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Worüber sind Function- und Class-Builder erreichbar?

A

Werkzeuge - ABAP Workbench - Entwicklung (SE37/24)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Nenne die sechs grundlegenden Konzepte

A
  • Datentypen und deren Deklaration
  • Wichtige Befehle und Kontrollstrukturen
  • Interne Tabellen
  • Datentypen im Data Dictionary
  • Lokale Modularisierung
  • Hintergrundverarbeitung
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Nenne vordefinierte Datentypen

A
d - Date
t - Time
i - Integer
c - String
String - String
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Nenne benutzerdefinierte, strukturierte Datentypen

A

Feldleisten, Tabellen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Wie kann
DATA a TYPE c.
DATA b TYPE i.

alternativ geschrieben werden? (zeichenweise erklären)

A

DATA: a TYPE c, b TYPE i.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Wie können eigene Datentypen definiert werden? (Code)

A
TYPES: BEGIN OF str_adresse,
name(40) TYPE c,
strasse(40) TYPE c,
ort(40) TYPE c,
plz TYPE i,
END OF str_adresse.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Wie erfolgt der Zugriff auf eine komplexe Datenstruktur?

A

Der Zugriff auf Felder einer Struktur erfolgt mit Bindestrichen:

WRITE adresse-name.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Was ist Syst?

A
• Die Struktur SYST
enthält viele vom
SAP-Systeme
verwendete
Systemvariablen
• Die Struktur kann im
Data Dictionary
(Transaktionscode
SE11) über die
Anzeige des
Datentyps SYST
erreicht werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Wie wird IF geschrieben? (zeichenweise erklären)

A
IF logischer Ausdruck 1.
[Anweisungsblock 1]
[ELSEIF logischer Ausdruck 2.
[Anweisungsblock 2]]
[ELSE.
[Anweisungsblock n]]
ENDIF.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Wie wird CASE geschrieben? (zeichenweise erklären)

A
CASE .
[WHEN .
[Anweisungsblock 1]]
[WHEN .
[Anweisungsblock 2]]
[WHEN OTHERS.
[Anweisungsblock 3]]
ENDCASE.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Was gibt sy-index zurück? (Schleife)

A

– gibt die Zahl des aktuellen Schleifendurchlaufs an
– bezieht sich bei Schachtelung von Schleifen auf die
aktuelle Schleife

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Nenne wichtige String-Operatoren

A
CONCATENATE
SPLIT
SEARCH
REPLACE
CONDENSE
TRANSLATE
…
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Wo befindet sich der Inhalt interner Tabellen?
Im Arbeitsspeicher --> Nur zur Laufzeit verfügbar
26
Was ist ein wichtiges Merkmal interner Tabellen?
zu einem beliebigen Zeilentyp beliebig viele Zeilen im Arbeitsspeicher abgelegt werden können.
27
Was ist hinsichtlich Komplexität bei internen Tabellen wichtig?
Interne Tabellen können komplex strukturiert sein, d.h. Zeilen oder Komponenten von internen Tabellen können selbst wieder interne Tabellen sein.
28
Wie können alle Zeilen einer internen Tabelle gelöscht werden?
refresh
29
Was machen bei internen Tabellen table_line, sort und describe?
Aktuelle Zeile, nachträgliche Sortierung von Standardtabellen, aktuelle Anzahl an Zeilen
30
Welche Arten von internen Tabellen gibt es?
Standard, Sortiert, Hash
31
Wie sollte auf die jeweiligen Tabellentypen zugegriffen werden?
Standard: Index Sortiert: Schlüssel Hash: MUSS Schlüssel
32
Wie wird eine Tabelle deklariert? (Beispiel Hash)
DATA hashedTable1 TYPE HASHED TABLE OF Zeichenkette WITH UNIQUE KEY table_line.
33
Wie kann an Standardtabellen eine Zeile angehängt werden? Wie können die Tablenne befüllt werden?
append, insert
34
Wie kann auf einzelene Tabellenzeilen zugegriffen werden? Was sollte dabei beachtet werden?
read table; Es ist dabei empfehlenswert, die entsprechende Variable mit der Anweisung read table in eine Arbeitsvariable einzulesen, die wiederum kompatibel zum Zeilentyp der internen Tabelle ist.
35
Was passiert beim Auslesen einer Standardtabelle mit den System-Strukturen sy-subrc und sy-tabix?
Wenn eine passende Tabellenzeile gefunden wird, erhält die Systemvariable sy-subrc den Wert 0. Die Systemvariable sy-tabix wird auf den Index des gefundenen Eintrags gesetzt.
36
Wie können Elemente in der internen Tabelle verändert werden?
modify
37
Was ist ein Dynpro?
Dynamische Programme. Haupt-Technologien in der Interaktion zwischen Benutzer und SAP-ERP-System
38
Wie können Systemfehler abgefangen werden?
CATCH SYSTEM-EXCEPTIONS conversion_errors = 4. … ENDCATCH.
39
Was ist der Unterschied vom Datentyp String zu C?
Es gelten die gleichen Angaben wie beim Zielfeld C, bis auf die Tatsache, dass der String dynamisch angepasst wird und daher nicht rechts abgeschnitten wird bzw. keine Leerzeichen erzeugt werden.
40
Welche Kompatibilitäten gibt es bei der Datenobjektumwandlung?
• Statische Inkompatibilität – Zwischen Objekten der Datentypen d (date) und t (time) • Dynamische Inkompatibilität – Zwischen ‘1234Hallo‘ und i (Zeichenkette und Zahl) • Dynamische Kompatibilität – ‘12345‘ und i (Zeichenkette und Zahl)
41
Wie kann aus: myString1(50) TYPE C. myString1 = 'Offenburg'. 'Offenbach' gemacht werden? (zeichenweise)
myString1+5(4) = 'bach'.
42
Wie können Strings aneinander gereiht werden?
CONCATENATE myString1 myString2 myString3 INTO myString4.
43
Wie können Zeichenketten zerlegt werden? (zeichenweise) myString1 = 'Hamburg;Berlin;Hannover;Kiel'.
``` Trennzeichen = ';'. SPLIT myString1 AT Trennzeichen INTO myString2 myString3 myString4 myString5. ```
44
Wie kann in Zeichenketten gesucht werden?
SEARCH myString1 FOR myString2.
45
Wie kann in Zeichenketten ersetzt werden?
REPLACE myString1 WITH myString2 INTO myString3.
46
Wie kann die Länge einer Zeichenkette bestimmt werden?
``` DATA myString(50) TYPE C. DATA myStringLength TYPE I. ``` ``` myString = 'abcdefg'. myStringLength = strlen( myString ). ```
47
Was bietet das ABAP-Dictonary?
Bislang definierte Datentypen sind nur programmlokal verfügbar Das ABAP-Dictionary bietet globale Datentypen, die in Programmen genutzt werden können (LIKE, TYPE, Vorwärtsnavigation, ...)
48
Worüber (SAP-Befehlt) können Datentypüen im ABAP-Dictionary angelegt werden?
SE11
49
Wie kann über neu erstellte Datentypen des Dictionarys eine mehrdimensionale Tabelle erstellt werden?
``` REPORT ZZ_00_MEHRDIMTABELLE. DATA element TYPE zz_00_zeichenkette. DATA spalten TYPE zz_00_spalten. DATA zeilen TYPE zz_00_zeilen. REFRESH spalten. APPEND 'eins' TO spalten. APPEND 'zwei' TO spalten. APPEND 'drei' TO spalten. APPEND 'vier' TO spalten. APPEND spalten TO zeilen. REFRESH spalten. ```
50
Wie kann Modularisierung in ABAP realisiert werden?
1. Include-Dateien (Befehl INCLUDE) 2. Form‘s (Prozeduren bzw. Unterprogramme) 3. Funktionsbausteine
51
Was sind Include-Dateien?
Include-Dateien • Ausgliederung von Quellcode aus dem Programm • Include-Objekte werden vor Ausführung in das Hauptprogramm eingefügt • Einbinden einer Include-Datei über den Befehl „INCLUDE“
52
Was sind Form's (Unterprogramme)?
• Unterprogramme können auf übergeordnete („globale“) Variablen des Programms zugreifen. • Innerhalb von Unterprogrammen können lokale Datenobjekte definiert werden, die nur dort zur Ausführungszeit sichtbar und gültig sind. • Der rekursive Aufruf von Unterprogrammen ist möglich.
53
Wir wird eine Form (Unterprogramm) im Hauptprogramm eingebunden?
``` PERFORM myForm1 USING meineZeichenkette1 meineZeichenkette2 CHANGING meineZeichenkette3 meineZeichenkette4. ```
54
Wie sieht eine Form im Unterprogramm bspw. aus?
FORM myForm1 USING eingabeparameter1 TYPE Zeichenkette VALUE(eingabeparameter2) TYPE Zeichenkette CHANGING ausgabeparameter1 TYPE Zeichenkette VALUE(ausgabeparameter2) TYPE Zeichenkette. ausgabeparameter1 = eingabeparameter1. ausgabeparameter2 = eingabeparameter2. ENDFORM.
55
Wa sind Funktionsbausteine?
• Kapselung von Quellcode zu Funktionsbausteinen (anwendungsübergreifende wiederverwendbare Softwarekomponenten) • Funktionsbausteine können nicht auf übergeordnete Variablen zugreifen  vollständige Parameterübergabe über Schnittstelle
56
Wie wird ein Funktionsbaustein aufgerufen?
``` CALL FUNCTION 'POPUP_TO_CONFIRM' EXPORTING titlebar = meinTitel text_question = meineFrage IMPORTING answer = meineAntwort. ```
57
Welche Funktionsbausteine gibt es?
Funktionsbausteine --> Remotefähige Funktionsbausteine --> BAPI
58
Was sind BAPIs?
``` • BAPI‘s sind nach betriebswirtschaftlicher Sichtweise gekapselte Funktionsbausteine • Entwickler müssen sich keine Gedanken um die Veränderung der entsprechenden Tabellen machen ```
59
Was ist die Hintergrundverarbeitung?
• Programme, die von Benutzern bedient werden, verwenden kostbare Dialog-Workprozesse in einem SAP-System • Besonders lang laufende Programme sollten daher in Hintergrund laufen
60
Wie erfolgen Datenbankzugriffe?
SELECT * " was FROM spfli " woher INTO waspfli " wohin (das gibt es so nicht in SQL) WHERE cityfrom = abflugo. " Einschränkung WRITE: / waspfli-cityto, waspfli-carrid, waspfli-fltime. ENDSELECT. " Schleife zur satzweisen Bearbeitung
61
Wie ist der Aufbau der Data Dictionary?
Domäne -> Datenelement -> Feld -> Struktur/Tabelle
62
Wie können Tabelleninhalte eingesehen werden? (SAP-Code)
SE16
63
Was wird gemacht, um den Datenzugriff aus Datenbanken erheblich zu beschleunigen?
● Einlesen von DB-Daten in interne Tabellen ● Interne Tabellen sind Tabellen, die nur während der Programmausführung bestehen --> ● Zurückschreiben der veränderten internen Tabelle oder Workarea
64
Wie werden Datenbankeinträge geändert/gelöscht?
MODIFY [CLIENT SPECIFIED] FROM TABLE . DELETE FROM WHERE [SQL Bedingung].