Transazione SAAB - Gruppo Checkpoint
I Checkpoints
sono tipi di istruzioni introdotte in SAP Web Application Server (SAP WebAS) che
garantiscono la correttezza e la manutenzione del programma.
Questi
controlli sono trasportabili e possono essere trasportati. La transazione che
si occupa di questi punti di controllo e il luogo in cui vengono mantenuti è SAAB.
I Checkpoints
possono essere creati per break-points and checkpoints e le due istruzioni per
questo sono:
- Assertions
- Break-points
Quello che
effettivamente non controlla gli errori ma viene utilizzato per registrare i
dati che vogliono è LOG-POINT.
La sintassi delle
Asserzioni da utilizzare nella
codifica è la seguente:
ASSERT [[ID
group [SUBKEY subkey]]
[FIELDS field1 field2 table1 table2...]
CONDITION] log_exp.
[FIELDS field1 field2 table1 table2...]
CONDITION] log_exp.
Le
asserzioni vengono usate per la determinazione del problema in caso di guasto
del codice. Le asserzioni vengono richiamate in fase di esecuzione. Possono
essere resi attivi o inattivi. Le asserzioni possono essere lasciate nel codice
anche quando il codice è stato trasportato in produzione. Sono richiamati solo
se il gruppo di controllo è attivato.
I gruppi di controllo possono essere attivati attraverso la transazione SAAB e che viene indicata da ID nei programmi con istruzioni assert.
I gruppi di controllo possono essere attivati attraverso la transazione SAAB e che viene indicata da ID nei programmi con istruzioni assert.
Richiamare
la transazione SAAB, inserire un nome “Gruppo punti controllo” e premere il
pulsante NEW.
Supponiamo,
che il checkpoints che vogliamo creare, lo usiamo sia come break-points, che
come Logpoints ed infine come asserzioni, quindi settiamo i 3 flag in questo
modo.
Ora
l'attivazione del gruppo di controllo può essere eseguita su tre livelli:
- Personal Activation
- User Level activation
- Server Level Activation
Nell'attivazione
a livello personale che il gruppo di controllo sarà attivo solo per l'utente
corrente e per l'Utente il gruppo Checkgroup sarà attivo per quell'utente che è
stato definito e lo stesso è per il server.
Premendo il pulsante “Utente” possiamo definire gli utenti specifici per questo.
E allo
stesso modo può essere fatto per i server specifici facendo clic sul segno
Aggiungi come segue:
I punti di
interruzione possono essere resi attivi o inattivi. Inattiva allora quella
particolare istruzione verrà ignorata e se si interrompe poi nel programma
ovunque si verifichi l'istruzione, il programma entra nel debug.
Nel
programma viene richiamato nel seguente modo:
BREAK-POINT { [ID groupID]
| [log text] }.
| [log text] }.
Ex. BREAK-POINT ID Z1316_check.
Senza l'ID
di aggiunta, il punto di interruzione è sempre attivo. Il testo del registro è
il testo che è possibile specificare per il registro di sistema che viene
visualizzato nei registri che vengono creati.
REGOLE
ASSERZIONI
Le asserzioni devono essere utilizzate solo sul codice personalizzato piuttosto
che sui codici standard.
Ecco un
programma di esempio in cui vengono utilizzati i punti LOG e ASSERTI.
REPORT Z1316_test_checkgrp..
** Parameters Declarations
PARAMETERS:
p_carrid LIKE sflight-carrid.
*data : max type i.
*Types Declarations of sflight
TYPES : BEGIN OF type_s_sflight,
carrid TYPE sflight-carrid,
connid TYPE sflight-connid,
fldate TYPE sflight-fldate,
price TYPE sflight-price,
max TYPE i,
END OF type_s_sflight.
*Field String Declarations for sflight
DATA: fs_sflight TYPE type_s_sflight.
*Internal table for Sflight Data
DATA : t_sflight LIKE
STANDARD
TABLE OF fs_sflight.
DATA yh1316_subkey TYPE char200.
IF p_carrid IS INITIAL.
SELECT carrid
connid
fldate
price
FROM sflight
INTO fs_sflight.
WRITE: / fs_sflight-carrid,
fs_sflight-connid,
fs_sflight-fldate,
fs_sflight-price.
APPEND fs_sflight TO t_sflight.
ASSERT ID yh1316_check SUBKEY 'YH1316_parameter_if_initial'
FIELDS p_carrid
t_sflight
fs_sflight-carrid
fs_sflight-connid
fs_sflight-fldate
fs_sflight-price
condition p_carrid eq 'LH' .
ENDSELECT.
ASSERT ID yh1316_check SUBKEY 'YH1316_1'
FIELDS p_carrid
t_sflight
CONDITION p_carrid EQ 'LH' .
EXIT.
ELSE.
ASSERT ID yh1316_check SUBKEY 'YH1316_2'
FIELDS p_carrid
t_sflight
CONDITION p_carrid EQ ’LH’.
** Parameters Declarations
PARAMETERS:
p_carrid LIKE sflight-carrid.
*data : max type i.
*Types Declarations of sflight
TYPES : BEGIN OF type_s_sflight,
carrid TYPE sflight-carrid,
connid TYPE sflight-connid,
fldate TYPE sflight-fldate,
price TYPE sflight-price,
max TYPE i,
END OF type_s_sflight.
*Field String Declarations for sflight
DATA: fs_sflight TYPE type_s_sflight.
*Internal table for Sflight Data
DATA : t_sflight LIKE
STANDARD
TABLE OF fs_sflight.
DATA yh1316_subkey TYPE char200.
IF p_carrid IS INITIAL.
SELECT carrid
connid
fldate
price
FROM sflight
INTO fs_sflight.
WRITE: / fs_sflight-carrid,
fs_sflight-connid,
fs_sflight-fldate,
fs_sflight-price.
APPEND fs_sflight TO t_sflight.
ASSERT ID yh1316_check SUBKEY 'YH1316_parameter_if_initial'
FIELDS p_carrid
t_sflight
fs_sflight-carrid
fs_sflight-connid
fs_sflight-fldate
fs_sflight-price
condition p_carrid eq 'LH' .
ENDSELECT.
ASSERT ID yh1316_check SUBKEY 'YH1316_1'
FIELDS p_carrid
t_sflight
CONDITION p_carrid EQ 'LH' .
EXIT.
ELSE.
ASSERT ID yh1316_check SUBKEY 'YH1316_2'
FIELDS p_carrid
t_sflight
CONDITION p_carrid EQ ’LH’.
SELECT carrid connid fldate MAX( price ) AS max
INTO CORRESPONDING FIELDS OF fs_sflight
FROM sflight
WHERE carrid EQ p_carrid
GROUP BY carrid connid fldate
ORDER BY carrid max DESCENDING.
INTO CORRESPONDING FIELDS OF fs_sflight
FROM sflight
WHERE carrid EQ p_carrid
GROUP BY carrid connid fldate
ORDER BY carrid max DESCENDING.
IF sy-dbcnt < 4.
APPEND fs_sflight TO t_sflight.
LOG-POINT ID yh1316_check SUBKEY 'LOG_POINT'
FIELDS p_carrid
t_sflight
fs_sflight-connid
fs_sflight-fldate
fs_sflight-max.
WRITE: / fs_sflight-carrid, fs_sflight-connid, fs_sflight-fldate,
fs_sflight-max.
APPEND fs_sflight TO t_sflight.
LOG-POINT ID yh1316_check SUBKEY 'LOG_POINT'
FIELDS p_carrid
t_sflight
fs_sflight-connid
fs_sflight-fldate
fs_sflight-max.
WRITE: / fs_sflight-carrid, fs_sflight-connid, fs_sflight-fldate,
fs_sflight-max.
ENDIF.
ENDSELECT.
ENDIF.
ENDSELECT.
ENDIF.
Viene creata
una variante per il gruppo di controllo particolare creato. La variante può
essere creata sia come locale che a livello di utente. Qui viene creato a
livello utente.
EBOOK: le mie guide sono visualizzabili cliccando sui link:
1. SAP EWM (Extended Warehouse Management)
3. SAP VIM (Vendor Invoice Management)
1. SAP EWM (Extended Warehouse Management)
3. SAP VIM (Vendor Invoice Management)
SE MI CONTATTATE IN PRIVATO, PAGATE LA META' DEL PREZZO DI AMAZON, E POTETE SCEGLIERE IL FORMATO WORD o PDF.
>>> RECENSIONI DEI LIBRI su Amazon Kindle <<<
Ebook: SAP CDS: https://www.amazon.it/dp/B0B9BD1RN3#customerReviews
Ebook: SAP MM: https://www.amazon.it/dp/B0C3MKD9BR#customerReviews
Ebook: SAP MII: https://www.amazon.it/dp/B0C4392MY9#customerReviews
Ebook: SAP VIM: https://www.amazon.it/dp/B0C6FBK8QN#customerReviews
Ebook: SAP MM: https://www.amazon.it/dp/B0C3MKD9BR#customerReviews
Ebook: SAP MII: https://www.amazon.it/dp/B0C4392MY9#customerReviews
Ebook: SAP VIM: https://www.amazon.it/dp/B0C6FBK8QN#customerReviews
Ebook: SAP EWM: https://www.amazon.it/dp/B0CL6TXP1V#customerReviews
Nessun commento:
Posta un commento