SAP Netweaver / ABAP                  Notas técnicas / Tips / Tutorials

Cómo habilitar la edición de un programa ABAP bloqueado ante una salida inesperada del sistema

Conozca cómo habilitar la edición de cualquier programa ABAP, o de cualquier otro objeto como una tabla o un SmartForm, que ha quedado bloqueado por una desconexión inadecuada de la sesión iniciada en un sistema SAP.

Existen casos en que por diversos motivos no podemos "deslogonearnos" correctamente de una sesión iniciada en el sistema SAP, ya sea porque la VPN no responde, la computadora se reinicia sin previo aviso, o algún otro motivo inesperado. 

El sistema SAP protege datos si múltiples usuarios intentan cambiar esos datos simultáneamente. Esto garantiza la integridad y consistencia de la información aún cuando un gran número de de usuarios estén conectados al mismo sistema SAP. Se vale para esto, entre otras cosas, de mecanismos de bloqueo.

Por ejemplo, solamente un desarrollador único (una sesión) puede cambiar el código fuente de un programa ABAP al mismo tiempo, y además, sólo a un usuario se le permite visualizar la pantalla de mantenimiento de una tabla de customizing en particular.  Pero, si el usuario estaba editando algún objeto, por ejemplo un progrma ABAP, y en ese momento se produce una salida inesperada de la sesión del usuario que lo estaba editando, el mismo quedará en estado bloqueado.  Esto significa que el programa no podrá ser accedido para editarlo nuevamente (ni por este usuario ni por ningún otro) debido a que el mismo ya está "tomado" por el usuario que no pudo realizar la salida del sistema de manera adecuada, y se emite el siguiente mensaje de error:

ABAP-Mensaje-Error-bloqueo-1

Se hace necesario entonces, en algunos casos, disponer de un mecanismo que permita desbloquear un objeto que el sistema registra como  "tomado" cuando en realidad la sesión que gestionaba sobre él se ha extinguido. Para ésto se utiliza la transacción SM12.

 

Cómo desbloquear un objeto "tomado" por otro usuario

Una vez que el usuario realiza el login,

1) Acceder a la transacción SM12:

ABAP-bloqueo-programa-3

 

3) En el campo "User Name", colocar el usuario correspondiente (por defecto aparecerá el usuario con el cual estamos logueados). Al seleccionar la opción “List”, se accederá a un listado con los objetos bloqueados para el usuario que se esté analizando.

4) En la siguiente imagen, a modo de ejemplo, se lista un único objeto correspondiente al usuario “80487” y el programa relacionado llamado “INVOICE”.

ABAP-bloqueo-programa-4

5) Al seleccionar el ícono remarcado en la pantalla anterior, se solicitará la confirmación para desbloquear el objeto:

ABAP-bloqueo-programa-5

6) En el momento de confirmar la supresión de esta entrada, se presenta la siguiente pantalla:

ABAP-mensaje-de-bloqueo-SM12

 

7) Una vez confirmado el desbloqueo, el objeto queda removido de la lista, como se muestra en la figura siguiente:

ABAP-bloqueo-programa-6

8) Completados los pasos anteriores, se podrá volver a editar el programa ABAP sin inconvenientes.

Consideraciones

Si bien no es un escenario muy frecuente, puede existir que un entorno de prueba o "laboratorio" se ingrese al mismo sistema SAP con el  mismo usuario. En esos casos va a existir más de una sesión activa en el sistema SAP, iniciada por el mismo usuario.

También en este escenario puede presentarse la situación de bloqueo de algún programa ABAP, como se trató en los párrafos anteriores.

A continuación se consideran algunas alternativas presentadas en este escenario que permiten el desbloqueo de "ese" programa ABAP tomado para poder seguir editándolo:

  • 1) Una alternativa posible para desbloquear ese objeto sería, que al momento iniciar sesión nuevamente en SAP, en la pantalla que se presenta para realizar el login, se seleccione la primera opción presentada. Esta manera de inicio de sesión implicará "desloguear" todas las sesiones en el sistema ya iniciadas con ese usuario, como se muestra en la pantalla siguiente.

ABAP-bloqueo-programa-opciones-1

Utilizar el método anterior para poder editar el programa nuevamente implicaría desconectar "de prepo" al resto de los que ya iniciaron sesión con el mismo usuario, y pudieran estar trabajando en el sistema con otras tareas, por lo que ésta no resulta la alternativa más acertada.

  • 2) otra alternativa más apropiada es al momento de iniciar sesión elegir entre las opciones presentadas, la segunda, y permitir de esa manera al resto de los que iniciaron sesión con el mismo usuario, seguir logueados en el sistema. La figura siguiente muestra la opción a elegir en este caso:

ABAP-bloqueo-programa-opciones-2

Una vez dentro del sistema, será necesario proceder como fue explicado en párrafos anteriores, accediendo a la transacción SM12 y luego ir siguiendo los pasos indicados.


n_Diego-Perez Especialista ABAP

 

 

 


Copyright 2012 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


 

Copyright © 2024 Teknoda Tech Portal & Training. Todos los derechos reservados.
Joomla! es software libre, liberado bajo la GNU General Public License.