Árvore de páginas

El registro se encuentra bloqueado por outro usuario

Producto:

Microsiga Protheus®

Entorno:SIGAFAT - Facturación

Ocurrencia:

Atención: El registro número X del Archivo X se encuentra bloqueado por otro usuario.

Proceso:

El mensaje "El registro número X del Archivo X se encuentra bloqueado por otro usuario" indica que la rutina intentó acceder a un registro, sin embargo este se encuentra reservado por algún procesamiento de otro usuario:

Este mensaje puede presentarse en las siguientes situaciones:


1º Registro bloqueado por uso de otro usuario / instancia presa

Para identificar si otro usuario está utilizando este registro es posible analizar la herramienta DBACCESS Monitor (DBAccess - Monitor > Solapa Usuarios > Locks), esta tiene una opción de rastrear los locks a partir del usuario y rutina accedidos:


Importante

  • Si el registro estuviera trabado, es decir, el usuario que está manteniendo el registro en Lock no consigue liberar el registro, aun saliendo del sistema, una opción paliativa rápida es reiniciar el servidor (parando los servicios del TOP, Base de datos y Server).
  • En algunas situaciones, la reserva de registros puede ocurrir debido a la utilización de servicios que quedan ejecutando operaciones en su entorno (JOB), en este caso recomendamos que desactive estos servicios y rehaga las pruebas verificando si estos son los causantes del incidente.
  • Dentro del proceso de Facturación, una forma para trabajar el uso de la tabla SB2 y evitar su traba es efectuar la actualización del stock posterior a la generación de la factura con la opción de actualización de stock tardía por medio de JOB, para mayores informaciones, acceda a: MP - FAT - Actualización de stock tardía en la generación de la Factura de salida MV_NFS_JOB 


2º Configuración de parámetros que ayudan en la reserva de registros

  • MV_GNRENF: Si estuviera deshabilitado, recomendamos habilitarlo (.T.), para no mostrar la pantalla para modificación de los datos de GNRE/DIFAL (https://tdn.totvs.com/x/FvIGDg);
  • MV_FATTRAV: El parámetro MV_FATTRAV optimiza los Locks de registros de las tablas SA1 (Clientes), SA2 (Proveedores) y SB2 (Saldos). Por ejemplo, en la emisión de un Documento de salida, con diez ítems y MV_FATTRAV vacío, el sistema realizó 28 Locks  en la transacción. Al configurar MV_FATTRAV como 4, el número de Locks cae a 19.


Personalizaciones en su entorno.

    • Personalización por Punto de entrada:
      Algunas personalizaciones utilizan los comandos dbSeek, MsSeek, dbGoTo, etc, que desmarcan los registros de tablas utilizadas en las rutinas del producto estándar, causando el problema "EOF Stack en MSRLock". En este caso recomendamos que utilice un RPO limpio sin personalizaciones para verificar si el problema es causado por alguna personalización.


    • Personalización por Diccionario de datos:
      Verifique si existen personalizaciones en la Estructura del Protheus, como por ejemplo, Índices (SIX) o disparadores (SX7).
      Realizar una copia de seguridad de los archivos en la Carpeta System y crear nuevamente con un diccionario de datos estándar como actualizado. Rehacer el proceso.


Importante

Existen puntos de entrada que permiten el mantenimiento de los Locks en las tablas SA1 (Clientes), SA2 Proveedores) y SB2 (Saldos):

Sin embargo, el uso de los puntos de entrada anterior debe ser evaluado de forma criteriosa por un analista especialista, ya que el mal uso de estos puede ocasionar problemas de grabación de las informaciones en la base de datos. Si tuviera dudas en el uso de los puntos de entrada, solicite la asignación de un Consultor TOTVS a su Gerente de atención.


Puede ser de su interes:

EOF Stack de llamadas en MSRLOCK.eof Control de transacciones habilitado: https://tdn.totvs.com/display/LMPESP/FAT0240+EOF+Stack+de+llamadas+en+MSRLOCK.eof+Control+de+transacciones+Habilitadohttps://tdn.totvs.com/x/vZgKDg

Locks de tablas en la Preparación del documento de salida: https://tdn.totvs.com/x/z6SSJQ