✒️SAP BASIS El proceso de bloqueo
SAP BASIS El proceso de bloqueo
TRANSACCIONES DE BASE DE DATOS: Cada paso de diálogo forma una únidad física y lógica
TRANSACCIONES SAP
Desde el punto de vista SAP, no se asegura la consistencia. Por que las tx SAP forman una secuencia lógica de pasos de trabajo relacionados, que son consistentes en terminos de negocio, las cuales se forman generalmente de varios pasos de diálogo.
El sisetemaSAP necesita administrar su propio concepto de bloqueo y esto se logra utilizando el work process de enqueue (encolado) y eso asegura la independencia de plataforma utilizada para el sistema.
SISTEMA DE BLOQUEO SAP.
Esto funciona sobre el principio de que los programas SAP realizan entradan de registros en la tabla de bloqueo (lock table). Solo se pueden generar entradas nuevas en la tabla si no existen otras ya para el objeto que intenta bloquearse.
- Enqueue work process: Maneja los bloqueos lógicos de las tx de SAP en la tabla de bloqueo. Esta tabla se sitúa en la memoria principal de la instancia donde el proceso corre.
Un work process de diálogo que corre en la misma instancia que el enqueue work process puede acceder directamente a la tabla de bloqueo en la memoria principal para chequear si un nuevo bloqueo puede generarse, esto es, si no ocurrirá un conflicto con un bloqueo ya establecido.
- Si el bloquo se puede crear el work process de diálogo crea la entrada en la tabla y se le entrega una key al usuario la cual se mantiene en la memoria de contexto de usuario.
- Si el work process de diálogo y el enqueue work process corren en diferentes instancias se comunicarán a través del massage serve, en ese caso la solicitud de bloqueo se reenvia desde el work process de diálogo al enqueue work process a través de los respectivos dispatchers y el massage server.
El enqueue work process es el que ahora se encarga de chequear si se puede crear un bloqueo en la tabla. Si si es posible, el bloqueo se realiza y la key que es generada se envía a través del dispatcher y el massage server.
MODOS DE BLOQUEO
Cuando se solicita un bloqueo, el sistema verifica si el bloqueo generará un conflicto con alguna de las entradas que ya pudiesen existir en la tabla.
Si se crea conflicto, se rechaza el bloqueo y la aplicación informa al usuario que la operación solicitada no se puede realizar en el momento.
Cada desarrollador decide que modo de bloqueo se utilizara para la aplicación, los modos de bloqueo son:
- Bloqueo de escritura exclusivo (Exclusive Write Lock): Se denomina con la letra E en la tabla de bloqueos. Los datos bloqueados solo pueden ser editados por un usuario. El modo Exclusivo (E) rechaza cualquier otro tipo de bloqueo por otra tx. Sólo pueden acumular otros bloqueos E por el mismo usuario.
- Bloqueo de lectura compartido (Shared Lock Mode): Se identifican en la tabla de bloqueos con la letra S. Se aceptan solicitudes adicionales de lectura. Una solicitud de escritura es rechazada.
- Bloqueo de escritura mejorado (Exclusive Noncumulative Write Lock): Se identifican en la tabla con la letra X. Sólo se puede solicitar una vez y todas las demas solicitudes se rechazan.
- Bloqueo Optimístico (Optimistic Lock): Se denominan en la tabla de bloqueo con la letra O. AL comienzo se establecen como bloqueos de lectura y luego se pueden transformar en bloqueos de escritura. Permite bloqueos adicionales del mismo tipo sobre un objeto.
*Cuando un usuario pasa al modo de modificación en una tx el bloqueo pasa al tipo E. Si otros bloqueos de tipo O existen sobre el objeto estos son eliminados de la tabla.
TX SM12 -> Muestra bloqueos que actualmente hay en el sistema. Aunque se pueden liberar desde esta tx, se debe tener mucho cuidado, ya que los bloqueos que genera SAP generalmente los realiza cuando un dato se encuentra dentro de un evento tx, es decir, se ejecuta todo o nada y si se libera se podria generar inconsistencia de datos.
*NOTA: Siempre estar pendiente de que el usuario que generó el bloqueo no este trabajando en el sistema antes de borrar el bloqueo de la tabla o si no se van a provocar inconsistencias en los datos*
 
 
 
Sobre el autor
Publicación académica de Maria Camila Cardenas Castellanos, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Maria Camila Cardenas Castellanos
Profesión: Ingeniera Mecatrónica - Colombia - Legajo: XH28L
✒️Autor de: 99 Publicaciones Académicas
🎓Egresado de los módulos:
Presentación:
Ingeniera mecatrónica de la universidad de san buenaventura, con proyeccion en sap s/4 hana. actualmente cuento con un dos de experiencia en sap en el área de roles y perfiles.
Certificación Académica de Maria Cardenas