Esplora E-book
Categorie
Esplora Audiolibri
Categorie
Esplora Riviste
Categorie
Esplora Documenti
Categorie
docx
QUERY ABAP
Il testo si pone come un mini corso per accedere alla Banca Dati SAP tramite query.
Sono spiegate in modo progressivo e dettagliato tutte le fasi per realizzare le varie
tipologie di interrogazioni possibili.
Si presuppone che il lettore abbia già una pur minima dimestichezza con i termini tecnici
qui descritti e conosca bene il concetto di Dizionario Dati.
Non sono elencate le tabelle del Dizionario Dati ne date indicazioni di come sfruttare lo
strumento nei vari moduli.
Introduzione
Abap Query è un’utilità presente nei prodotti SAP che permette di estrarre ed elaborare
dati dal DataBase e di visualizzarli in forma testuale e/o grafica, senza necessariamente
ricorrere all’uso della programmazione ABAP. E' quindi uno strumento adatto sia ai
programmatori che agli analisti funzionali e, in casi particolari, ad utenti evoluti che
conoscono la struttura dei dati attiva nel Dizionario Dati.
A seconda del tipo di elaborazione da effettuare nella Query, sono disponibili 3 tools
distinti:
DataBase Logico
Un DataBase logico è un insieme di tabelle i cui i dati sono tra loro collegati mediante
relazioni definite tra le tabelle stesse. Un LDB di SAP prevede solo relazioni di tipo
gerarchico tra le tabelle:
Struttura
La Struttura definisce il legame gerarchico in base a logiche di relazione dei campi chiave
tra le tabelle determinando quindi il modo con
on cui il sistema accede in sequenza ai dati.
Dalla videata iniziale inserire il nome del DataBase logico, selezionare Struttura e
premere il tasto CREARE
Nella popup proposta inserire una breve definizione del LDB nella casella Testo Breve,
salvare ed inserire nella popup seguente la tabella che sarà il nodo al più alto livello (root
(
node).
Ogni nodo può avere differenti rami. Per creare i nodi inferiori, selezionare dapprima il
nodo radice, premere il tasto a forma di foglio. Quindi inserire
inserire nodo ed inserire i nomi
delle tabelle figlie.
Dopo aver inserito tutte le tabelle nell’albero, salvare e tornare alla videata iniziale
(Back).
Selezioni
La Selezione determina l’interfaccia utente dei report basati sul LDB B. Una Selezione non è
altro che un Include in cui è possibile definire i parametri di selezione per tutte le tabelle
dell’albero. Queste Selezioni verranno visualizzate tutte le volte che verrà eseguito un
programma basato sul LDB in questione. La creazione
creazione di parametri di selezione associati al
DataBase logico non è obbligatoria per l’attivazione di quest’ultimo. Per creare le
Selezioni, selezionare il radiobutton Selezioni e premere il tasto MODIFICARE.
Si apre in questo modo il programma DBxxxSEL (dove xxx rappresenta il nome del
DataBase) nel quale vanno disasteriscate le righe di codice in cui inserire i nomi dei
parametri di selezione (Parameters o Select Options).
Programma di DataBase
Viene così creato il report SAPDBxxx, che realizza la scansione del DataBase logico
associando i dati delle diverse tabelle secondo le relazioni definite nella struttura.
Se sono stati creati dei parametri di selezione, è possibile attribuire a questi una
descrizione estesa per facilitare l’utente nella comprensione del significato della
variabile.
e. Per fare questo selezionare il radiobutton ‘Testi di selezione’ dalla videata
principale e premere il tasto MODIFICARE.
Gruppo Utenti
Un Gruppo Utenti riunisce un certo numero di utenze alle quali sono concesse determinate
autorizzazioni per lavorare alle Queries ed ai Settori Specifici associati al gruppo in
questione.
Ogni membro di un Gruppo Utenti può eseguire qualsiasi query associata al gruppo utenti,
però soltanto quei membri del Gruppo Utenti che che possiedono l’abilitazione allo sviluppo di
oggetti workbench (a livello di profilo utente)) possono aggiornare, modificare o cancellare
una Query o un Settore Specifico del gruppo utenti.
Da Abap Workbench:
● Scegliere Utilities >> SAP Query >> Gruppi di Utenti ( transazione SQ03 )
● Inserire nel campo Gruppo Utenti il nome del gruppo
● Cliccare sul pulsante CREARE
● Inserire una descrizione del Gruppo Utenti nel campo corrispondente e SALVARE.
SALVARE
Per assegnare gli utenti al gruppo premere il tasto ‘Attribuire utenti e settori spec.’ sulla
schermata iniziale ed inserire nella tabella Utenti gli User ID (è possibile scegliere da
elenco gli utenti attraverso il percorso Parametrizzazione >> con marcatura).
marcatura
Un utente può essere contemporaneamente associato a più Gruppi Utente : per risalire a
questa informazione inserire nell’omonimo campo il nome utente che si vuole controllare e
premere il tasto Modificare.. Per inserire l’utente in ulteriori gruppi si deve flaggare la
casella di spunta relativa ai gruppi interessati: togliendo il flag , l’utente viene invece
rimosso dai gruppi utente in cui è presente.
Settori Specifici
Lo scopo delle Queries è di presentare dati da una o più tabelle di DataBase sotto forma
di elenchi.
A seconda della complessità delle tabelle di DataBase, potrebbe non essere facile per
l’utente selezionare correttamente i dati necessari. I Settori Specifici
Specific definiscono la
“base dati”,, cioè l’insieme delle tabelle di database da cui estrarre le informazioni. I
Settori Specifici permettono non solo di restringere il numero di campi raggruppandoli in
unità logiche opportune, ma consentono anche di definire campi
campi ausiliari e di utilizzarli
come campi di tabelle. Entro i Settori Specifici vengono creati i Gruppi Specifici, che
permettono, a loro volta, un ulteriore raggruppamento dei campi.
Da Abap Workbench:
Inserire il nome della tabella di radice alla quale verranno successivamente legate,
mediante joins,, altre tabelle di DataBase. Spuntare la casella ‘Join Tabelle’ e premere il
pulsante Enter.
Nella schermata successiva viene presentata la lista dei campi della tabella di radice con
la segnalazione di quelli chiave , importanti per la definizione dei
dei collegamenti con le altre
tabelle.
Per inserire nuovetabelle premere sul tasto Inserire Tabella , nella pop-up
pop successiva
indicare la tabella da accodare e premere Enter.
Il sistema propone automaticamente una condizione di aggancio basata sui campi c chiavi
delle tabelle allo scopo di garantire un rapporto 1: 1 tra le tabelle. Due campi possono
essere tra loro collegati solo se sono compatibili , cioè sono definiti sul medesimo tipo dati
ed hanno la medesima lunghezza in byte.
Un Gruppo Specifico riunisce i campi delle tabelle selezionate in unità logiche. Operando
una preselezione sui campi, permette, quindi, all’utente di accedere più rapidamente e
semplicemente alle informazioni da elaborare. E’ possibile assegnare campi di differenti
tabelle allo stesso Gruppo Specifico, e introdurre nuove tabelle e nuovi campi all’interno di
tabelle preesistenti.
Per creare un Gruppo Specifico premere sul tasto CREARE e dare un identificativo (due
cifre) ed una descrizione al Gruppo Specifico e premere Invio.
E’ possibile ampliare la base dati inserendo all’interno del Settore Specifico delle Tabelle
Supplementari : questa operazione risulta particolarmente utile quando il settore
specifico è creato sulla base di un Database Logico perché consente di aumentare il
numero di informazioni a disposizione senza dover modificare il Database Logico e tutti i
Settori Specifici creati su di esso.
Per creare una tabella supplementare premere sul tasto Tabelle Alias : nella schermata
successiva premere il tasto Creare (F5)) ed inserire nel campo ‘Nome Tabella’ il nome della
tabella di database e nel campo ‘Nome Alias’ una descrizione.
Per richiamare la tabella all’interno del settore specifico premer sul tasto Opzioni, nella
finestra successiva selezionare l’icona Creare (F5).
F5). Indicare poi il nome della tabella di
database, selezionare la voce ‘Tabella suppl.’ e confermare con Enter..
Indicare poi i campi da utilizzare per effettuare un accesso univoco sulla tabella
supplementare : è necessario indicare come valorizzare ogniogni campo chiave della tabella
alias al fine di poter abbinare ogni suo record con uno ed un solo record della tabella a cui
è collegata.
I campi della tabella supplementare vengo visualizzati come estensione della tabella a cui
sono agganciati.
Per inserire invece un Campo Supplementare all’interno di una tabella, premere sul tasto
Opzioni e nella finestra successiva selezionare l’icona Creare (F5). Indicare poi il nome del
campo da creare, selezionare la voce ‘Campo supplementare’ e confermare con Enter.
Inserire una descrizione per il significato e l’intestazione del campo, e definire poi il
formato dei dati (tipo dati e lunghezza in byte). Per inserire la codifica in linguaggio
ABAP, necessaria per definire come deve essere valorizzato il campo, premere sul tasto
Editor (F6) e scrivere la parte di codice. Poi salvare e tornare nella schermata di
visualizzazione della struttura del settore specifico.
Si possono definire Queries soltanto per quei settori specifici assegnati a un determinato
gruppo utenti. Per fare ciò, dalla schermata iniziale dei Settori Specifici (Figura 15)
premendo il tasto “Attribuzione a gruppo di utenti”, è possibile selezionare i Gruppo
Utenti ai quali associare il Settore
tore Specifico selezionato.
Query
Abap Query è un tool che permette di creare “liste” muovendosi attraverso menu, non
richiedendo, quindi, la scrittura di righe di codice. Tale codice viene generato
automaticamente dal sistema durante la costruzione della query stessa.
Per creare una query è necessario specificare le seguenti informazioni, affinché il sistema
possa generare il report:
● Settore Specifico
● Titolo e formato della lista
● Selezione dei campi
● Struttura del layout
Selezionare il settore specifico che sarà utilizzato dalla query, e nella videata successiva
assegnare il titolo e una breve descrizione alla query.
Nel box Formato Lista, il sistema propone il formato standard in cui viene visualizzata la
lista generata. A meno che non si specifichi altrimenti, SAP adatta automaticamente
l’output al video utilizzato. Il default è una lunghezza di pagina dinamica e 83 colonne.
Sulla videata Selezione Gruppi Specifici è possibile specificare da quali gruppi specifici
selezionare i campi, su cui basare la query, spuntando i relativi checkbox.
E’ possibile assegnare uno short name ai campi selezionati, per utilizzare il valore
contenuto in un’intestazione o per definire campi locali. Per fare questo è necessario
attivare
ttivare la colonna DEFINIZIONE BREVE dal menu Elaborare >> Definizioni brevi >>
attivare/disattivare.
Nella finestra di definizione del campo introdurre una definizione breve, una definizione
per il campo, l’intestazione ed indicare le caratteristiche tecniche del campo. Quindi
indicare la norma del calcolo.
I campi locali risultano particolarmente utili come campi di calcolo per le statistiche.
statisti In
questo caso bisogna indicare la norma di calcolo per valorizzare il campo e una eventuale
condizione: solo se la condizione è soddisfatta il campo viene valorizzato secondo la
formula definita. Cliccando sul tasto Calcolo Complesso compare una schermata
sche nella quale
è possibile definire una serie di condizioni e formule di calcolo secondo cui valorizzare il
campo locale.
Salvare la Query.
A questo punto sono stati definiti i campi e le selezioni che verranno utilizzati dalla query.
A seconda delle esigenze di elaborazione, sono disponibili tre strumenti:
● Lista Standard
● Statistica
● Classifica
Lista Standard
La videata è suddivisa in quattro parti : nel riquadro in alto a sinistra vengono evidenziati
quali campi sono stati scelti come parametri di selezione e quali devono essere inseriti
nella lista , il cui output viene rappresentato nel
nel riquadro in alto a destra. La sequenza dei
campi all’interno della lista dipende dalla sequenza di selezione fatta dall’utente. Nel
riquadro in basso a sinistra vengono evidenziate le caratteristiche tecniche dell’elemento
di volta in volta selezionato, mentre nel riquadro in basso a destra è possibile richiamare
la funzione Help per avere chiarimenti su uno degli argomenti evidenziati. Per spostare e
ridimensionare i campi della lista, cliccare sul campo e trascinarlo nella posizione
desiderata , mentre per cancellare un campo dalla lista trascinarlo nel riquadro Cestino.
Per inserire dei tratti di separazione tra i campi, utilizzare l'icona ‘Tratti di separazione’
trascinandola sulla riga della lista. Per inserire una nuova riga , trascinare la relativa icona
su di una riga. Per modificare il colore di una riga lista o di un campo lista, trascinare
l’icona del relativo colore sull’oggetto da modificare.
E’ possibile ordinare i dati secondo i valori di uno o più campi della lista. Per classificare un
campo è necessario selezionarlo e trascinarlo all’interno del box ‘Campi di classificazione’ :
nel riquadro in basso a sinistra compaiono le possibili opzioni (totali parziali sui campi
numerici, intestazione di inizio gruppo, ordinamento crescente o decrescente,…)
d che
possono essere richiamate ogni qual volta si verifichi un cambio del valore nel campo
classificato.
Una volta impostate tutte le opzioni relative alla lista standard, salvare la query.
Statistica
Nella prima colonna da sinistra deve essere indicata la successione dei campi nella riga,
mentre nella seconda la sequenza di classificazione dei dati. Per i campi numeri ( importi e
quantità ) è necessario indicare l’unità di misura rispetto la quale effettuare la
totalizzazione.
Nell’eventualità che siano presenti campi con diverse unità di misura, verrà effettuata una
conversione automatica dei record nell’unità di misura prescelta. Alla fine della Statistica
viene riportata una tabella con le conversioni eseguite.
Classifica
La Classifica è un particolare tipo di Statistica nella quale l’ordinamento dei dati può
essere fatto rispetto ad un unico campo, e questo deve essere necessariamente numerico.
I passaggi per la creazione di una Classifica ripercorrono quelli
quelli della Statistica.
Area di Lavoro
Prima di creare gli elementi del workbench ( Settore Specifico, Gruppo Utenti, Query ) è
necessario scegliere l’area di lavoro nella quale operare. Per fare questo, nella schermata
di creazione dei tre oggetti seguire il percorso Ambiente >> Aree di lavoro
e selezionare l’area desiderata.
Trasporti
Se un oggetto è stato creato nell’ Area Globale di lavoro, per trasportarlo su un altro
mandante è necessario rilasciare la richiesta di trasporto a cui è collegato. Se l’oggetto si
trova nella classe di sviluppo $TMP (oggetto locale), per inserirlo in una richiesta di
trasporto lo sii deve riallocare in una nuova classe di sviluppo scegliendo la voce Cambiare
classe di sviluppo nella prima voce di menù nella schermata di creazione degli oggetti.
Se un oggetto è stato creato nell’ Area Standard di lavoro, per trasportarlo su un altro
mandante seguire il percorso Ambiente >> Trasporti e nella schermata seguente indicare il
tipo di operazione da effettuare ed il nome degli oggetti .
Con l’opzione Upload , il file in precedenza creato può essere letto all’interno di un altro
mandante e quindi creare ( o aggiornare) gli oggetti in esso contenuti.
Con l’opzione Esportare viene creata, al posto di un file locale, una richiesta di trasporto
che può essere richiamata e caricata in un altro mandante selezionando l’opzione
Importare.
E’ anche possibile copiare un oggetto da una area di lavoro all’altra scegliendo una delle
due opzioni Copiare area standard area globale o Copiare area globale area standard ,
in modo tale da avere il medesimo oggetto in entrambe le aree.
Conclusioni
A partire dalle release 4.7x con la Quick View esiste la possibilità di creare una query del
tutto personale, quindi con meno vincoli legati al gruppo utenti. Tale query è utilizzabile
solo dal suo creatore. Tramite un tool è possibile migrare la Quick View a normale Query.