Aserei S.r.l.

home

AZIENDA
sede

ERP
Introduzione agli ERP
Corso SAP

GESTIONE delle RETI
CISCO
VPN

LINUX
Installare Vmware su Suse Linux

VBA Excel-Powerpoint
Macro crea grafico "Walk"

< 10 11 12 13 14 15 16 17 18 19 > indice
CORSO SAP R/3 - PROGRAMMAZIONE ABAP/4

Tipologia di Programmi in SAP

REPORT – LA VIDEATA DI SELEZIONE

In sintesi la videata di selezione è conosciuta come una schermata emessa al momento di eseguire un report che permette all’utente di inserire criteri di selezione o parametri utili al programma. In particolare si prevedono due differenti tipologie di dati inseribili da parte dell’utente:

  1. PARAMETERS: utilizzati in fase di inizializzazione delle variabili;
  2. SELECT-OPTIONS: utilizzati per inserire uno o più ranger di valori che limitino il trattamento a particolari records.

Ad esempio: La videata di selezione per l’estrazione dei dati anagrafici dei fornitori può essere così composta:

La scelta se creare un listato o un archivio è un campo di tipo PARAMETERS in quanto è ammessa la digitazione di uno e un solo valore (L oppure A) da parte dell’utente, mentre la scelta dei ranges di valore di codice fornitore è un campo di tipo SELECT-OPTIONS perché è richiesto un valore iniziale e una valore finale ripetibili più volte (nell’esempio si prevedono fino a 3 coppie di valori).

Nell’esempio precedente le definizioni potrebbero essere effettuate nel seguente modo:

SELECT-OPTIONS CODFOR FOR LFA1-LIFNR.
PARAMETERS: TIPOOUT. 

ABAP/4 considera CODFOR come una tabella interna costituita da due campi: CODFOR-LOW (adibito a memorizzare il limite inferiore del range) e CODFOR-HIGH (utilizzato per registrare il limite superiore).

La clausola FOR LFA1-LIFNR specifica che il campo LFA1-LIFNR (Codice Fornitore) deve essere confrontato con i ranges di valori inseriti dall’utente. Se il valore di LFA1-LIFNR non risulta compreso in nessuno degli intervalli digitati dall’utente, allora il record deve essere bypassato.

GET LFA1.
CHECK CODFOR.
Istruzioni successive non eseguite in caso di valori esterni ai ranges.

L’istruzione CHECK effettua il confronto indicato ed eventualmente bypassa in modo automatico le successive istruzioni, ritornando alla GET del successivo record della tabella LFA1.

Il parametro TIPOOUT assumerà automaticamente il valore digitato (L/A) dall’utente nella videata di selezione. L’associazione tra i nomi dei campi PARAMETERS e SELECT-OPTIONS, e la descrizione relativa che deve comparire nella videata di selezione è stabilito dal programmatore quando inserisce i testi di selezione previsti dal programma (Pulsanti: elementi di testo e successivamente testi di selezione della videata corrispondente alla transazione SE38).

E’ possibile attribuire dei valori iniziali prefissati ai PARAMETERS e ai SELECT-OPTIONS tramite la clausola DEFAULT in modo che all’utente compaia una videata di selezione già impostata, sarà poi possibile da parte dell’utente una modifica manuale ai valori proposti.

INITIALIZATION

La fase di INITIALIZATION è eseguita appena prima dell’emissione della videata di selezione e può servire per attribuire dei valori iniziali ai campi di selezione (PARAMETERS e SELECT-OPTIONS) in alternativa alla clausola DEFAULT, oppure per qualunque altra operazione che si intende effettuare prima dell’elaborazione vera e propria. Questa non è una fase obbligatoria.

AT SELECTION SCREEN

Questa fase deve essere adibita ai controlli che si intendono effettuare relativamente ai valori attribuiti dall’utente ai campi di selezione (PARAMETERS e SELECT-OPTIONS). Riferendoci al precedente esempio, un controllo da eseguire in questa fase potrebbe essere la verifica che nel campo TIPOOUT sia inserito uno solo dei valori previsti L o A. Inoltre, si potrebbe verificare la validità e l’esistenza dei codici fornitori inseriti nei campi CODFOR-LOW e CODFOR-HIGH previsti come SELECT-OPTIONS.

Se uno dei campi digitati dall’utente risulta invalido (ad esempio l’utente digita X nel parametro TIPOOUT), sarebbe opportuno emettere una segnalazione di errore che può essere bloccante (l’utente deve correggere il dato per permettere al programma di procedere) oppure solo un avvertimento che pretende solo una conferma da parte dell’utente.

L’emissione del messaggio di errore è ottenuta tramite l’istruzione MESSAGE nella quale si può indicare il tipo di errore (bloccante, avvertimento,… ), il testo del messaggio che può essere selezionato tra quelli presenti nella tabella messaggi prevista dal sistema SAP (tabella T100, a sua volta suddivisa in aree applicative) oppure creato nuovo. Le istruzioni sono:

In questo modo è emesso il messaggio con codice 001 appartenente all’area applicativa DB aggiungendo anche il testo ‘Errore Parametro’. Il messaggio è di solo avvertimento perché il numero del messaggio è preceduto dalla lettera I. Le tipologie sono:

  1. I: Information;
  2. W: Warning;
  3. E: Error;
  4. A: Abend.

L’area applicativa dalla quale estrarre i testi dei messaggi può essere definita anche nell’istruzione REPORT che compare all’inizio del programma.

Per controllare i valori attribuiti dall’utente ad una variabile di tipo SELECT-OPTIONS occorre effettuare un LOOP di controllo perché questo tipo di variabili prevedono un numero imprecisato di ripetizioni. Ad esempio, le istruzioni per evitare che l’utente inserisca dei codici fornitore inferiore a 00000010 sono:

Per ulteriori approfondimenti si rimanda all’uso dell’help in linea fornito da SAP.


indietro  
indice
  avanti