✒️ABAP / Los objetos de bloqueo en SAP Por Juan Romero
Los objetos de bloqueo en SAP

Los objetos de bloqueo en SAP
Introducción a los objetos de bloqueo en SAP
- Explicación inicial sobre la importancia de los objetos de bloqueo para sincronizar el acceso concurrente a tablas de base de datos en SAP.
- Resaltada la necesidad de bloquear datos críticos para garantizar la consistencia y evitar modificaciones simultáneas por diferentes usuarios.
Creación de un objeto de bloqueo en SE11
- Los objetos de bloqueo se crean en el diccionario de datos usando la transacción SE11.
- Se ejemplifica la creación para la tabla "ZTabla_usuarios", usando el nombre "EZTabla_usuarios" siguiendo la convención de iniciar con la letra E.
- Se añade una breve descripción al objeto de bloqueo.
- En la solapa Tablas, se selecciona la tabla a bloquear y el modo de bloqueo (Bloqueo de Escritura).
- Los parámetros de bloqueo corresponden a los campos clave de la tabla.
- Activación del objeto de bloqueo como último paso del proceso.
Uso de módulos de funciones para bloqueo/desbloqueo
- La ejecución del menú "Pasar a Módulo Bloqueo" genera dos módulos de función: uno para bloquear (enqueue_ztabla_usuarios) y otro para desbloquear (dequeue_ztabla_usuarios).
- Para utilizarlos, se crea un programa ABAP, por ejemplo, "ZTest_OB".
- Para bloquear o desbloquear un registro específico, se deben completar los campos clave: mandante y DNI.
- Demostración del proceso para llamar ambos módulos de función mediante "Modelo" y "Call Function".
Visualización de bloqueos activos
- Se menciona la transacción estándar SM12, que permite ver el listado de todas las tablas actualmente bloqueadas en el sistema SAP.
- Al hacer clic en "Lista", se visualizan los bloqueos activos.
Modos de bloqueo en SAP
Tipos de bloqueo en SAP
- Se explican tres modos principales de bloqueo: lectura, escritura y escritura ampliado.
- El bloqueo de lectura permite solo el acceso de lectura a los objetos, impidiendo cualquier modificación.
- El bloqueo de escritura impide tanto la lectura como la escritura de los objetos compartidos por otros usuarios o transacciones.
- El bloqueo de escritura ampliado tiene funciones adicionales, como proteger el objeto de intentos de acceso incluso por el mismo usuario o programa.
Problemas frecuentes con bloqueos en materiales MM
- Es común que, al trabajar con materiales en el módulo MM de SAP, aparezca un mensaje indicando que el material está bloqueado por otro usuario.
- A veces el usuario que bloquea el material no está conectado ni tiene sesiones activas en SAP.
- Esta situación puede prolongarse por días, impidiendo el acceso al material afectado.
Causas y solución de bloqueos persistentes
- Una posible causa es una caída de tensión eléctrica mientras el usuario estaba trabajando con el material, dejando el bloqueo activo en la base de datos.
- Para liberar el material, se recomienda utilizar la transacción estándar SM12 para borrar el bloqueo asociado al usuario.
- Se enfatiza la necesidad de precaución al usar la transacción SM12, verificando que se trata del usuario correcto y del material adecuado para evitar afectar a otros usuarios que estén trabajando en tiempo real.
Demostración de objetos de bloqueo
Introducción a los objetos de bloqueo en SAP
- Se presenta un video instructivo sobre la utilización e implementación de objetos de bloqueo en SAP.
- El objetivo es explicar con ejemplos sencillos cómo funcionan y su importancia en escenarios con múltiples usuarios.
Ejemplo práctico: Programa de test
- Se utiliza el programa ztest_OB para modificar un registro en la tabla personalizada ztabla_usuarios.
- Antes de modificar, se ejecuta un módulo de función para bloquear el registro, luego se modifica y finalmente se desbloquea.
- Se creó un objeto de bloqueo específico para la tabla ztabla_usuarios.
Simulación de acceso concurrente
- Se realiza una prueba iniciando sesión con un usuario, bloqueando el registro y luego intentando lo mismo con otro usuario distinto.
- Se utiliza la transacción SM12 para verificar el registro del bloqueo.
- El segundo usuario intenta ejecutar la misma acción y recibe un mensaje en la barra de estado indicando que el objeto está bloqueado por el primer usuario.
- Se destaca la importancia de los objetos de bloqueo para evitar conflictos y garantizar la integridad de los datos cuando varios usuarios acceden simultáneamente.
Observaciones finales
- Se remarca que, aunque el concepto de objetos de bloqueo puede parecer complejo al principio, su implementación es sencilla y fundamental en transacciones con acceso concurrente.
 
 
 
Sobre el autor
Publicación académica de Juan Ignacio Romero, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.
Juan Ignacio Romero
Profesión: Ing. Sistemas Computacionales - Mexico - Legajo: LJ26F
✒️Autor de: 138 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Juan Romero






Disponibilidad Laboral: FullTime


















