Definizione
I Lock Objects sono utilizzati in SAP, per evitare
l’inconsistenza dei dati al momento dell’inserimento/modifica nel database.
Sap fornisce 3 tipi di Lock objects:
- Read Lock (Shared Locked). Questo Lock permette alle altre transazioni di accedere in lettura ma non in scrittura sull’area della tabella loccata.
- Write Lock (Shared Locked). Questo Lock NON permette alle altre transazioni di accedere né in lettura né in scrittura sull’area della tabella loccata.
- ExclusiveLock without cumulating. Questo Lock è simile al WRITE LOCK, ma inoltre NON permette alla stessa transazione eseguita in un’altra sessione, di accedere né in lettura né in scrittura sull’area della tabella loccata.
È possibile creare un lock su un oggetto di SAP attraverso
la transazione SE11 e immettere un nome
significativo che inizia con EZ (ad
esempio: EZKERCR_RECD).
Quando si crea un lock oggetto, il sistema crea
automaticamente due FM:
- ENQUEUE_<Lockobject name>. Per inserire l’oggetto nella cosa (queue).
- DEQUEUE_<Lockobject name>. Per rimuovere l’oggetto dalla coda.
Questi due FM, devono essere usati nel programma
rispettivamente prima di modificare la tabella e dopo la modifica della tabella.
Il Lock, nell’ambito di una stessa tabella, può essere gestito
diversamente:
- Se si specificano tutti i campi chiave della tabella, il lock è un lock di riga, che blocca la singola occorrenza che l’utente che gestisce il lock sta trattando;
- Se si specificano solo alcuni campi, il lock è un lock generico, che blocca solo una parte della tabella, solo determinate occorrenze, che presentano certi valori nei campi specificati nella definizione dell’oggetto di lock;
- Se non si specifica alcun campo, il lock è completo, su tutta la tabella.
Esempio: Creazione di un Lock di Riga
Supponiamo vi voler creare un Lock di Riga per la tabella custom ZKERCA_101_RECD.
Richiamiamo la transazione SE11, inseriemo nel Lock objetc il valore "EZKERCR_RECD" e premiamo il pulsante CREATE
Inserire i campi chiave della tabella su cui effettuare il Lock di riga:
VISUALIZZAZIONE DEI LOCK SULLA TABELLA CHE ABBIAMO LOCCATO
È possibile vedere tali lock sulla tabella interessata tramite la transazione SM12.
FM DA RICHIAMARE ALL'INTERNO DEI PROGRAMMI PER LOCCARE TABELLA
CALL FUNCTION 'ENQUEUE_EZKERCR_RECD'
EXPORTING
mandt = sy-mandt
transaction_id = ls_dest-transaction_id
iban = ls_dest-iban
e_seq_no = ls_dest-e_seq_no
cdt_dbt_ind = ls_dest-cdt_dbt_ind
t_endtoend_id = ls_dest-t_endtoend_id
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
IF sy-subrc <> 0.
ENDIF.
FM DA RICHIAMARE ALL'INTERNO DEI PROGRAMMI PER UNLOCCARE TABELLA
CALL FUNCTION 'DEQUEUE_EZKERCR_RECD'
EXPORTING
mandt = sy-mandt
transaction_id = ls_dest-transaction_id
iban = ls_dest-iban
e_seq_no = ls_dest-e_seq_no
cdt_dbt_ind = ls_dest-cdt_dbt_ind
t_endtoend_id = ls_dest-t_endtoend_id.
IF SY-SUBRC <> 0.
ENDIF.
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 1/3 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