SAP ABAP - Blocca oggetti

Lock Object è una funzionalità offerta da ABAP Dictionary che viene utilizzata per sincronizzare l'accesso agli stessi dati da più di un programma. Si accede ai record di dati con l'ausilio di programmi specifici. Gli oggetti di blocco vengono utilizzati in SAP per evitare l'incongruenza quando i dati vengono inseriti o modificati nel database. Le tabelle i cui record di dati devono essere bloccati devono essere definite in un oggetto di blocco, insieme ai rispettivi campi chiave.

Meccanismo di blocco

Di seguito sono riportate le due funzioni principali svolte con il meccanismo di blocco:

  • Un programma può comunicare con altri programmi sui record di dati che sta solo leggendo o modificando.

  • Un programma può impedire a se stesso di leggere dati che sono stati appena modificati da un altro programma.

UN lock requestviene prima generato dal programma. Quindi questa richiesta va al server Enqueue e il blocco viene creato nella tabella dei blocchi. Il server Enqueue imposta il blocco e il programma è finalmente pronto per accedere ai dati.

Creazione di oggetti di blocco

Step 1- Vai alla transazione SE11. Si apre la seguente schermata.

Step 2- Fai clic sul pulsante di opzione "Blocca oggetto". Immettere il nome dell'oggetto di blocco che inizia con E e fare clic sul pulsante Crea. Qui usiamo EZLOCK12.

Step 3 - Immettere il campo della descrizione breve e fare clic sulla scheda Tabelle.

Step 4 - Immettere il nome della tabella nel campo Nome e selezionare la modalità di blocco come Write Lock.

Step 5 - Fare clic sulla scheda Blocca parametri, apparirà la seguente schermata.

Step 6- Salva e attiva. Verranno generati automaticamente 2 moduli funzione. Per controllare i moduli funzione, possiamo usare Vai a → Blocca moduli.

Step 7 - Fare clic su Blocca moduli e si aprirà la seguente schermata.

L'oggetto di blocco viene creato correttamente.

I campi chiave di una tabella inclusi in un oggetto di blocco sono chiamati argomenti di blocco e vengono utilizzati come parametri di input nei moduli funzione. Questi argomenti vengono utilizzati per impostare e rimuovere i blocchi generati dalla definizione dell'oggetto di blocco.