Inleiding tot ABAP: gegevenstypen, OperaTors & Editor – Tutorial
⚡ Slimme samenvatting
Inleiding tot ABAP behandelt de programmeertaal. SAP Deze handleiding is ontwikkeld voor het bouwen van applicaties op het R/3-systeem. De handleiding legt de gegevenstypen, de operatoren, de besturingsinstructies, de interne tabel en de SE38-editor uit, waar elk ABAP-programma begint.

Wat is ABAP?
ABAP staat voor Advanced Business Application Programming. Het is een programmeertaal voor de ontwikkeling van...ping toepassingen voor de SAP R/3-systeem.
De nieuwste versie van ABAP heet ABAP Objects en ondersteunt objectgeoriënteerd programmeren. SAP zal applicaties uitvoeren die zijn geschreven met ABAP/4, de eerdere ABAP-versie, evenals applicaties die ABAP Objects gebruiken.
Deze inleiding pretendeert niet elk detail te documenteren. ABAP-taal Het is een constructieprogramma dat de belangrijkste concepten snel introduceert, zodat je meteen aan de slag kunt met het schrijven van werkende programma's en vervolgens kunt overgaan op de meer geavanceerde onderwerpen.
Gegevenstypen
Elk ABAP-programma begint met het declareren van de gegevens waarmee het zal werken.
Syntaxis voor het declareren van een variabele in ABAP –
DATA Variable_Name TYPE Variable_Type.
Voorbeeld:
DATA employee_number TYPE I.
Hieronder vindt u een lijst met gegevenstypen die door ABAP worden ondersteund.
| Data type | Initiële veldlengte | Geldige veldlengte | Beginwaarde | Betekenis |
|---|---|---|---|---|
| Numerieke typen | ||||
| I | 4 | 4 | 0 | Geheel getal (geheel getal) |
| F | 8 | 8 | 0 | Drijvend-kommagetal |
| P | 8 | 1 - 16 | 0 | Verpakt nummer |
| Karaktertypes | ||||
| C | 1 | 1 - 65535 | '...' | Tekstveld (alfanumerieke tekens) |
| D | 8 | 8 | '00000000' | Datumveld (formaat: JJJJMMDD) |
| N | 1 | 1 - 65535 | '0 … 0' | Numeriek tekstveld (numerieke tekens) |
| T | 6 | 6 | '000000' | Tijdveld (formaat: HHMMSS) |
| Hexadecimaal type | ||||
| X | 1 | 1 - 65535 | X'0 … 0′ | Hexadecimaal veld |
De acht typen hierboven zijn de klassieke typen met vaste lengte. ABAP biedt ook twee typen met variabele lengte die beginners vrijwel direct tegenkomen: STRING voor tekst van elke lengte, en XSTRING voor binaire gegevens van elke lengte.
ABAP Operaverdraaid
Zodra de gegevens zijn gedeclareerd, zijn het de operators die ze wijzigen en vergelijken.
Waarden toekennen
a = 16. MOVE 16 TO a. WRITE a TO b.
Alle drie de instructies verplaatsen een waarde. Het gelijkheidsteken is de moderne vorm, terwijl MOVE en WRITE TO de oudere equivalenten zijn die je nog steeds in oudere programma's zult tegenkomen.
Rekenkundige bewerkingen
COMPUTE a = a * 100.
ABAP ondersteunt ook ADD en SUB.TRACT, MULTIPLY en DIVIDE zijn zelfstandige trefwoorden, maar de hierboven getoonde COMPUTE-vorm wordt het meest gebruikt.
logische operatoren
Logische operatoren retourneren waar of onwaar, en ze worden in elke besturingsinstructie in het volgende gedeelte getest. Elke operator heeft een woordvorm en een symboolvorm, en deze twee zijn uitwisselbaar.
| Woordvorm | Symboolvorm | Betekenis |
|---|---|---|
EQ |
= |
Gelijk aan |
NE |
<> |
Niet gelijk aan |
GT |
> |
Groter dan |
GE |
>= |
Groter dan of gelijk aan |
LT |
< |
Less neem contact |
LE |
<= |
Less dan of gelijk aan |
Controleverklaringen
Besturingsinstructies gebruiken de bovenstaande logische operatoren om te bepalen welke regels code worden uitgevoerd en hoe vaak.
ALS … EINDE ALS
IF [NOT] exp [ AND / OR [NOT] exp ]. ........ [ELSEIF exp. .......] [ELSE. .......] ENDIF.
CASE-verklaring
CASE variable. WHEN value1. ......... WHEN value2. ......... [WHEN OTHERS. .........] ENDCASE.
WHILE-lus
WHILE <logical expression>. ..... ENDWHILE.
DO-lus
DO <n> TIMES. ..... ENDDO.
Een WHILE-lus wordt uitgevoerd zolang de voorwaarde geldt. Een DO-lus wordt een vast aantal keren uitgevoerd, of eindeloos totdat een EXIT-instructie de lus stopt.
Interne tabellen in ABAP
Enkele variabelen zijn zelden voldoende. Bedrijfsprogramma's lezen veel rijen tegelijk, en de interne tabel is de structuur die deze in het geheugen opslaat.
Een interne tabel is een dynamische array. Deze heeft geen vaste grootte, bestaat alleen gedurende de uitvoering van het programma en is de standaardmethode om rijen tussen de database en het scherm te verplaatsen.
" Declare an internal table and a work area DATA: lt_employees TYPE TABLE OF pa0001, ls_employee TYPE pa0001. " Fill it from the database SELECT * FROM pa0001 INTO TABLE lt_employees UP TO 10 ROWS. " Read it row by row LOOP AT lt_employees INTO ls_employee. WRITE: / ls_employee-pernr, ls_employee-ename. ENDLOOP.
De drie bovenstaande bewerkingen dekken het meeste dagelijkse werk: de tabel declareren, vullen met een SELECT-query en er vervolgens doorheen lopen met LOOP AT. APPEND voegt een rij toe, READ TABLE zoekt een rij en DELETE verwijdert rijen die aan een bepaalde voorwaarde voldoen.
ABAP/4-editor
Alle bovenstaande syntax wordt op één plek ingevoerd.
transactie SE38 Hiermee wordt de ABAP-editor geopend, waar u als ontwikkelaar het grootste deel van uw tijd zult doorbrengen met het maken en wijzigen van programma's.
De ABAP/4-editor, transactie SE38
Hoe schrijf je je eerste ABAP-programma?
Op het bovenstaande scherm vinden de volgende stappen plaats. De onderstaande reeks stappen genereert binnen enkele minuten een werkend rapport.
- Open de editor. Voer transactiecode in SE38 in de SAP Voer de GUI-opdracht in en druk op Enter.
- Geef de naam van het programma. Typ een naam die begint met Z or YBijvoorbeeld
ZHELLO_WORLDDie twee letters vormen de klantnaamruimte, en SAP garandeert dat ze nooit worden overschreven tijdens een upgrade. - Maak het aan. Klik creëren, voer een korte beschrijving in en kies uitvoerbaar programma als de soort.
- Wijs een pakket toe. Kies Lokaal object Voor oefendoeleinden. Een lokaal object blijft in uw systeem en vereist geen transportverzoek.
- Schrijf de code.
REPORT zhello_world. DATA employee_name TYPE string. employee_name = 'Guru99'. WRITE: / 'Hello, ABAP!', / 'Welcome', employee_name.
- Controleer de syntaxis. Media Ctrl + F2De statusbalk meldt eventuele fouten en de regel die de fout heeft veroorzaakt.
- Activeer het programma. Media Ctrl + F3Een inactief programma kan niet worden uitgevoerd.
- Uitvoeren. Media F8De uitvoerlijst wordt geopend en toont beide WRITE-regels.
De schuine streep in de WRITE-instructie zorgt voor een nieuwe regel. Als je die verwijdert, wordt alles op één regel afgedrukt, wat de eerste opmaakgewoonte is die de meeste beginners aanleren.
Algemene ABAP-transactie Codes
Een handvol transactiecodes dekt vrijwel alles wat een beginnende ABAP-ontwikkelaar nodig heeft.
| transactie | Doel |
|---|---|
SE38 |
ABAP-editor. Programma's maken, bewerken, controleren en uitvoeren. |
SE80 |
Object Navigator. Eén centrale werkbank voor programma's, klassen, pakketten en schermen. |
SE11 |
ABAP-woordenboek. Definieer en inspecteer databasetabellen, gegevenselementen en domeinen. |
SE16N |
Databrowser. Bekijk de inhoud van elke tabel zonder een SELECT-query te hoeven schrijven. |
SE37 |
Functiebouwer. Maak en test functiemodules. |
SE24 |
Klassebouwer. Maak globale klassen voor ABAP-objecten. |
ST22 |
Dumpanalyse. Lees de runtimefout die optreedt wanneer een programma wordt beëindigd. |
SE38 en SE11 zijn voldoende om een eerste rapport op te stellen. ST22 wordt het meest waardevol van de groep op het moment dat een programma vastloopt.

