Introduzione ad ABAP: tipi di dati, Operatori ed editor – Tutorial
⚡ Riepilogo intelligente
Introduzione ad ABAP tratta il linguaggio SAP Creata per lo sviluppo di applicazioni sul sistema R/3, questa risorsa illustra i tipi di dati, gli operatori, le istruzioni di controllo, le tabelle interne e l'editor SE38, da cui inizia ogni programma ABAP.
Cos'è l'ABAP?
ABAP sta per Advanced Business Application Programming. È un linguaggio di programmazione per lo sviluppo di applicazioni aziendali.ping applicazioni per la SAP Sistema R/3.
L'ultima versione di ABAP si chiama ABAP Objects e supporta la programmazione orientata agli oggetti. SAP eseguirà applicazioni scritte utilizzando ABAP/4, la versione precedente di ABAP, nonché applicazioni che utilizzano ABAP Objects.
Questa introduzione non tenta di documentare ogni Linguaggio ABAP Questo libro introduce rapidamente i concetti chiave, permettendoti di iniziare a scrivere programmi funzionanti e poi passare ad argomenti più avanzati.
Tipi di dati
Ogni programma ABAP inizia dichiarando i dati con cui lavorerà.
Sintassi per dichiarare una variabile in ABAP –
DATA Variable_Name TYPE Variable_Type.
Esempio:
DATA employee_number TYPE I.
Di seguito è riportato un elenco dei tipi di dati supportati da ABAP.
| Tipo di dati | Lunghezza iniziale del campo | Lunghezza del campo valida | Valore iniziale | Significato |
|---|---|---|---|---|
| Tipi numerici | ||||
| I | 4 | 4 | 0 | Intero (numero intero) |
| F | 8 | 8 | 0 | Numero in virgola mobile |
| P | 8 | 1 - 16 | 0 | Numero imballato |
| Tipi di caratteri | ||||
| C | 1 | 1 - 65535 | '...' | Campo di testo (caratteri alfanumerici) |
| D | 8 | 8 | '00000000' | Campo data (formato: AAAA MM GG) |
| N | 1 | 1 - 65535 | '0...0' | Campo di testo numerico (caratteri numerici) |
| T | 6 | 6 | '000000' | Campo orario (formato: HHMMSS) |
| Tipo esadecimale | ||||
| X | 1 | 1 - 65535 | X'0...0′ | Campo esadecimale |
Gli otto tipi sopra descritti sono i classici tipi a lunghezza fissa. ABAP offre anche due tipi a lunghezza variabile che i principianti incontrano quasi immediatamente: STRING per testi di qualsiasi lunghezza e XSTRING per dati binari di qualsiasi lunghezza.
ABAP OperaTors
Una volta dichiarati i dati, sono gli operatori a modificarli e a confrontarli.
Assegnazione di valori
a = 16. MOVE 16 TO a. WRITE a TO b.
Tutte e tre le istruzioni spostano un valore. Il segno di uguale è la forma moderna, mentre MOVE e WRITE TO sono i loro equivalenti più vecchi che si possono ancora trovare nei programmi meno recenti.
Operazioni aritmetiche
COMPUTE a = a * 100.
ABAP supporta anche ADD, SUBTRACT, MOLTIPLICAZIONE e DIVISIONE possono essere utilizzate come parole chiave a sé stanti, ma la forma COMPUTA mostrata sopra è quella più utilizzata.
operatori logici
Gli operatori logici restituiscono vero o falso e sono ciò che ogni istruzione di controllo nella sezione successiva verifica. Ciascuno ha una forma scritta e una forma simbolica, e le due sono intercambiabili.
| Forma di parola | Forma simbolica | Significato |
|---|---|---|
EQ |
= |
Uguale a |
NE |
<> |
Non uguale a |
GT |
> |
Maggiore di |
GE |
>= |
Maggiore o uguale a |
LT |
< |
Less di |
LE |
<= |
Less maggiore o uguale a |
Dichiarazioni di controllo
Le istruzioni di controllo utilizzano gli operatori logici sopra descritti per decidere quali righe di codice vengono eseguite e con quale frequenza.
SE … FINE SE
IF [NOT] exp [ AND / OR [NOT] exp ]. ........ [ELSEIF exp. .......] [ELSE. .......] ENDIF.
Dichiarazione CASE
CASE variable. WHEN value1. ......... WHEN value2. ......... [WHEN OTHERS. .........] ENDCASE.
ciclo WHILE
WHILE <logical expression>. ..... ENDWHILE.
ciclo DO
DO <n> TIMES. ..... ENDDO.
Un ciclo WHILE viene eseguito finché la sua condizione è vera. Un ciclo DO viene eseguito un numero fisso di volte, oppure all'infinito finché un'istruzione EXIT non lo interrompe.
Tabelle interne in ABAP
Le singole variabili raramente sono sufficienti. I programmi aziendali leggono molte righe contemporaneamente e la tabella interna è la struttura che le memorizza.
Una tabella interna è un array dinamico. Non ha una dimensione fissa, esiste solo per la durata del programma ed è il metodo standard per trasferire righe tra il database e lo schermo.
" 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.
Le tre operazioni sopra descritte coprono la maggior parte del lavoro quotidiano: dichiarare la tabella, popolarla con un'istruzione SELECT e poi scorrerla con un ciclo LOOP AT. APPEND aggiunge una riga, READ TABLE ne trova una e DELETE rimuove le righe che corrispondono a una condizione.
Redattore ABAP/4
Tutta la sintassi sopra riportata va inserita in un unico punto.
operazione SE38 Si apre l'editor ABAP, dove trascorrerai la maggior parte del tuo tempo come sviluppatore, creando e modificando programmi.
L'editor ABAP/4, transazione SE38
Come scrivere il tuo primo programma ABAP
Nella schermata qui sopra si svolgono le seguenti fasi. La sequenza descritta di seguito permette di generare un report funzionante in pochi minuti.
- Apri l'editor. Inserisci il codice transazione SE38 nella SAP Campo dei comandi GUI e premere Invio.
- Indica il nome del programma. Digita un nome che inizia con Z or Ydi strumenti adatti, questi
ZHELLO_WORLDQuelle due lettere sono lo spazio dei nomi del cliente e SAP garantisce che non verranno mai sovrascritti durante un aggiornamento. - Crealo. Clicchi Crea , inserisci una breve descrizione e scegli Programma eseguibile come il tipo.
- Assegna un pacchetto. Scegli Oggetto locale Per esercitarsi. Un oggetto locale rimane nel sistema e non necessita di alcuna richiesta di trasporto.
- Scrivi il codice.
REPORT zhello_world. DATA employee_name TYPE string. employee_name = 'Guru99'. WRITE: / 'Hello, ABAP!', / 'Welcome', employee_name.
- Controlla la sintassi. Stampa Ctrl + F2La barra di stato segnala eventuali errori e la riga di codice che li ha causati.
- Attiva il programma. Stampa Ctrl + F3Un programma inattivo non può essere eseguito.
- Eseguire. Stampa F8. L'elenco di output si apre e visualizza entrambe le righe WRITE.
La barra obliqua nell'istruzione WRITE forza l'andata a capo. Rimuovendola, tutto viene stampato su un'unica riga, che è la prima abitudine di formattazione che la maggior parte dei principianti apprende.
Transazione ABAP comune Codes
Una manciata di codici di transazione copre quasi tutto ciò di cui un nuovo sviluppatore ABAP ha bisogno.
| operazione | Missione |
|---|---|
SE38 |
Editor ABAP. Crea, modifica, verifica ed esegui programmi. |
SE80 |
Object Navigator. Un unico ambiente di lavoro per programmi, classi, pacchetti e schermate. |
SE11 |
Dizionario ABAP. Definisci e ispeziona tabelle di database, elementi dati e domini. |
SE16N |
Browser dati. Visualizza il contenuto di qualsiasi tabella senza dover scrivere una query SELECT. |
SE37 |
Generatore di funzioni. Crea e testa moduli funzionali. |
SE24 |
Class Builder. Crea classi globali per oggetti ABAP. |
ST22 |
Analisi del dump. Legge l'errore di runtime quando un programma termina. |
SE38 e SE11 sono sufficienti per creare un primo report. ST22 diventa il più prezioso del gruppo nel momento in cui un programma si blocca.


