ABAP Lezione 1 : Panoramica Sap ABAP/4
Per coloro che non hanno familiarita’ con SAP la prima cosa da sapere e che il sistema SAP e’ un sistema client. Il concetto di client abilita l’insieme di operazioni, in un unico sistema, di diverse imprese che possono essere indipendenti l’una dall’altra in termini di business. In pratica durante la sessione utente puoi accedere soltanto ai dati del client selezionato quando effettui il login. corso abap gratuito programmazione abap programmare abap sap abap
Un client, in termini organizzativi, e’ una unita’ indipendente nel sistema SAP. Ogni client ha il proprio ambiente di dati e quindi i propri master data e transazioni con relativa master user record e parametri di personalizzazione (customizing). Ovviamente per proteggere gli accessi l’utenza e’ protetta da password.
I sistemi SAP sono disponibili in diverse lingue. Utilizzate il campo Language per scegliere la lingua che vi interessa. I logon multipli sono sempre registrati dal sistema per questioni di sicurezza e licensing. Viene sempre visualizzato un messaggio di warning durante l’accesso. Questo messaggio offre tre opzioni, per cui solitamente scelgieremo la seconda:
- Continue with current logon and end any other logons in the system
- Continue with current logon without ending any other logons in the system (logged in system)
- Terminate current logon and the screen shot is as shown .
Ma entriamo ora nel vivo con una panoramica del linguaggio ABAPcorso abap gratuito programmazione abap programmare aba sap abap
1.1 L’istruzione write. Nella pgm corso abap gratuito programmazione abap programmare abap
Le regole di sintassi dell’ABAP/4 sono simili ad un qualsiasi altro programma. Un programma, come si sa, è costituito da istruzioni (o se preferite, comandi) ed ogni istruzione termina con un punto. Per esempio, il seguente programma è composto da solo due linee di codice:
REPORT abaptest. WRITE ‘Lista Clienti’.
La prima istruzione dichiara il nome del programma abaptest. Tutti i programmi devono iniziare con una istruzione report. Il secondo comando, invece, visualizza la parola Lista clienti sul video.
Se è stato fatto un errore, il Sintax Checker (Controllore di sintassi dell’ABAP/4) descriverà il tipo di errore e suggerirà per quanto possibile la sua correzione.
Ecco ora delle semplici regole da seguire per scrivere un programma:
Si definiscono istruzioni una sequenza di parole chiavi, proprie del linguaggio, che terminano con un punto
Ogni parola dell’istruzione ABAP/4 deve essere separata da almeno uno spazio.
Vengono definiti literal (una sequenza di caratteri) tutto ciò che è racchiuso tra apici (‘).
Nel caso dell’utilizzo di una parola con apostrofo, l’istruzione verrà scritta nel seguente modo:
es WRITE ‘dall”altra parte’.
Molti comandi di ABAP/4 permettono l’utilizzo di parametri extra, per esempio nella seguente linea di programma, l’istruzione write ha una aggiunta chiamata at che farà sì che il testo all’interno della write appaia nella linea specifica, in questo caso la numero 10.
es WRITE at 10 ‘Lista Clienti’.
Sebbene non venga richiesto dalla sintassi del linguaggio, è molto comodo inserire dei commenti all’interno del proprio programma, per poter rendere più leggibile e documentato il programma stesso. Tutto ciò che segue l’asterisco (*) in prima colonna o dopo il doppio apice (“) in una qualsiasi colonna, viene considerato come commento e quindi non viene interpretato dal compilatore.
1.2 Concatenazione di istruzioni.
Supponiamo di avere la seguente sequenza di istruzioni:
WRITE ‘Lista Clienti’. WRITE ‘ at date’.
Questa sequenza può anche essere scritta come una sola istruzione usando i due punti ( : ) e la virgola (,) :
WRITE: ‘Lista Clienti’,
‘ at date’.
Di regola, tutte le istruzioni che iniziano con la stessa parola chiave possono essere combinate insieme, la parte di istruzione in comune deve apparire prima dei due punti e i differenti argomenti, in sequenza, separati da virgole.
In generale, l’adattabilità del linguaggio permette di scrivere le istruzioni sia in maiuscolo che in minuscolo od addirittura in caratteri combinati tra loro, come nell’esempio che segue:
write ‘ABAP/4’. WRITE ‘ABAP/4’. WrITe ‘ABAP/4’.
Il compilatore intrepreterà sempre nella forma corretta l’istruzione di write.
1.3 La creazione di un programma
Per poter creare il nostro primo programma ABAP/4, occorre prima di tutto fare il log on al sistema R/3. Per poter fare ciò occore avere una user name valida e una password che verranno fornite dal vostro sistemista.
Dopo avere selezionato l’icona R/3 SAP dal desktop del vostro computer, vi apparirà la videata di figura 1.
Il primo campo di input di questa videata è chiamato Client, ogni sistema R/3 è diviso in uno o più Clients i quali rappresentano i diversi ambienti di lavoro e di sviluppo. Occorre, a questo punto, digitare il codice del Client che per gli utenti di Palestra Sap è: 800; la User è: SAPUSERXX e la password è quella che viene fornita dal sistemista per il primo logon. La password è ovvio che in futuro non corrisponderà più a quella che ci è stata fornita, ma sarà cambiata.
Nel campo Language occorrerà digitare la lingua con cui vogliamo lavorare, il default della lingua è gestito dall’amministratore del sistema, di norma si utilizza la lingua inglese, ma digitando ad esempio D accederemo al sistema in lingua Tedesca, oppure digitando I si accede in lingua Italiana. Nel nostro caso, sviluppando con Palestra Sap, il default è E cioè la lingua Inglese.
Dando invio si entra nella videata di Start del sistema (Figura 2). Appena sotto la barra del menù iniziale sono presenti altre barre menù. Quella superiore è chiamata Standard e contiene i pulsanti (buttons) per poter eseguire le operazioni di base.
Sotto la barra Standard c’è una seconda barra chiamata Application (della applicazioni).
Figura 1
1.4 Creazione degli attributi di un programma
Un programma ABAP/4 consiste di due parti principali: gli attributi e il sorgente. Il primo passo del nostro esempio è la creazione degli attributi:
- Dalla videata iniziale (Figura 2), scegliere Tools, a questo punto, dopo aver cliccato, si apre una finestra con altre scelte (Figura 3). Selezionare la scelta ABAP/4 Workbench.
- Apparirà ora la videata relativa al workbench (Figura 4), da qui selezionare il pulsante Object Browser dalla barra del menù applicazioni.
- L’Object Browser si apre con una nuova videata (Figura 5) che raggruppa due radio groups
e caselle di testo. Dall’ Object list selezioniamo il pulsante Program e digitiamo, in corrispondenza del campo di input, il nome del programma (per esempio ZBCPGM04) e clicchiamo su Display.
- Si aprirà una nuova finestra di dialogo che chiederà se vogliamo creare un nuovo programma con quel nome. Cliccare ora sul bottone Yes per proseguire con la videata successiva (Figura 6).
- Apparirà una nuova finestra di dialogo che chiederà se vogliamo una Top include.
Rimuoviamo la scelta dalla casella, perché questa funzione è necessaria solo per grandi programmi, e clicchiamo sul bottone di Enter. La spiegazione della Top include verrà analizzata in seguito.
- Introdurre ora, i valori degli attributi come da Figura 7 (il type da assegnare è 1, ovvero quello relativo ai programmi di tipo report che analizzeremo in questa parte preliminare; l’application è ‘*’, in riferimento a programmi generici).
- Salviamo gli attributi cliccando sul bottone Save della barra menu Standard.
- Il sistema ora chiederà di digitare la classe di sviluppo, che nel nostro caso è: $TMP
(temporaneo – vedere figura 8). Clicchiamo ora sul pulsante Local Object (Figura 9) per
indicare che il programma può essere solamente usato nel sistema corrente, e ritorniamo alla videata degli attributi.
Figura 2
Figura 3
Figura 4
Figura 5
Figura 6
Figura 7
Figura 8
Figura 9
Prima di iniziare con la creazione di un programma, spieghiamo cosa è la Top include. I programmi di grosse dimensioni vengono di solito divisi in diversi Include files. Una Include è una parte di programma sorgente che è memorizzata separatamente in un’altra area chiamata Repository. Il programma in esso contenuto può essere inserito all’interno di un altro programma usando l’istruzione Include, questo permette di spezzare in più parti un grosso programma rendendolo così più facile da modificare. Una Include file non è nient’altro che la nostra Top include, dentro la quale si possono mettere sia le aree di dichiarazione dei dati che vere e proprie parti di programma.
1.5 La creazione di un programma sorgente
Adesso che abbiamo visto come creare gli attributi di un programma, siamo pronti per la scrittura di un programma ABAP/4.
- Dalla videata degli attributi (Figura 7), cliccare sul pulsante Source code dopo di che il sistema aprirà la videata di Editor per la scrittura del nostro programma (Figura 10).
- In testa alla videata di editor, ci sono diverse linee di commento che sono state generate
automaticamente dal sistema. Sempre il sistema, | genera | anche | la | dichiarativa | report | |
3. | contenente il nome del nostro programma Scriviamo adesso il codice del nostro programma | |||||
4. | Salviamo (cliccando sull’icona Save) |
Figura 10
1.6 Lavorare con l’Editor
L’editor del sistema R/3 lavora come la maggior parte degli editor usati per altri tipi di linguaggi e quindi probabilmente non dovrebbero incontrarsi difficoltà nel suo utilizzo. E’ possibile copiare, duplicare, inserire nuove linee di programma, incollare pezzi di programmi copiati da altri programmi, il tutto con una semplicità notevole guidati dalle icone e dagli help in linea.
E’ possibile lavorare con due modalità di Editor:
Command mode
PC mode con/senza numerazione delle linee
1.6.1 Command mode
Questo tipo di editor permette di utilizzare, per scrivere o modificare programmi, alcuni tasti funzionali tra cui:
F1 il cursore viene posizionato nella finestra dei comandi di editor in alto a sinistra, è così possibile inserire nella sudetta i comandi manuali
F21 il cursore si posiziona sulla prima riga del programma
F22 è utilizzato per ritornare indietro di una pagina
F23 è utilizzato per avanzare di una pagina alla volta
F24 il cursore si posiziona sull’ultima riga del programma
Per posizionarsi su una particolare riga di programma cliccare due volte sul numero della riga oppure mettere un * sul numero di riga e premere il tasto Enter.
Elenco di alcuni comandi manuali per l’editor:
INSERT | I | inserisce nuove linee al fondo del programma |
FIND | F | ricerca multipla di una stringa |
NEXT | N | ricerca singola di una stringa |
REPLACE | R | sostituisce stringa1 con stringa2 |
PRETTY PRINTER | PP | pretty printer |
1.6.2 PC mode
Quando si lavora in PC mode i comandi, che prima si scrivevano sulla parte numerata delle righe di programma, vengono sostituiti da una barra degli strumenti con le relative icone.
Premendo il tasto destro del mouse il sistema aprirà una finestra di help che conterrà una lista di
tutti i comandi di editor disponibili.
Quando si clicca sul pulsante check sulla videata dell’editor, il sistema esegue una analisi della sintassi del programma. Un messaggio ci avvertirà se il programma è corretto, altrimenti, ogni errore di sintassi verrà sequenzialmente indicato e visualiz zato in una casella sul video. Se è possibile il controllore della sintassi ci proporrà la corretta versione cliccando su Correct al fondo della videata. Il processo di correzione verrà ripetuto finchè tutti gli errori non saranno corretti.
Se invece il programma non presenta errori, in fondo alla nostra videata ci comparirà il messaggio
No syntax errors found.
1.7 Test di un programma di progetto corso abap gratuito programmazione abap programmare abap
Corretto il programma da eventuali errori, possiamo mandarlo in esecuzione. Clicchiamo sulla selezione Program della barra menù e scegliamo Execute (Figura 11). Il risultato apparirà sul video come da figura 12.
a Figura 11
b Figura 12
abap/4 programmatore abap corso abap gratuito programmazione abap programmare abap
programmatore abap corso abap gratuito programmazione abap programmare abap
impara linguaggio corso abap gratuito programmazione abap programmare abap
linguaggio abap corso abap gratuito programmazione abap programmare abap
programmatore abap corso abap gratuito programmazione abap programmare abap
Se ti interessa approfondire: Impara a programmare ABAP/4