Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

O registro encontra-se bloqueado por outro usuário

Há procedimentos incisivos ao sistema em alguns dos processos mencionados, que devem ser realizados por sua Equipe de TI e, aconselhamos que caso tenha alguma dúvida no processo, solicite acompanhamento de um consultor Totvs!

Os procedimentos indicados são utilizados para rastrear a possível causa da ocorrência. Caso ainda ocorra apesar da devida realização dos procedimentos, será necessário solicitar auxilio da equipe de Suporte Investigativo TOTVS para que acesse remotamente a sua base, visando avaliação/ debug da rotina para investigá-la e identificar a origem do problema.

Produto:

Microsiga Protheus®

Ambiente:SIGAFAT - Faturamento

Ocorrência:

MensagemAtenção: O registro número X do Arquivo X encontra-se Bloqueado por outro usuário.

Image Removed

O registro número X do Arquivo X encontra-se Bloqueado por outro usuário

Processo:

A mensagem "O registro número X do Arquivo X encontra-se Bloqueado por outro usuário" indica que a rotina tentou acessar um registro,

o qual

porém ele está reservado por algum processamento de outro usuário

.

:

Image Added

Esta inconsistência mensagem pode acontecer ser apresentada nas situações abaixo:


1º Registro Bloqueado por outros Usuários (possivelmente com instância presa)

Obs: Em caso de r

uso de outro Usuário / instância presa

Para identificar se outro usuário está utilizando esse registro é possível analisar a ferramenta DBACCESS Monitor (DBAccess - Monitor > Aba Usuários > Locks), ela possui uma opção de rastrear os locks a partir do usuário e rotina acessados:

Image Added


Aviso
titleImportante
  • Caso o registro esteja travado, ou seja, o usuário que está mantendo o registro em Lock não consegue liberar o registro, mesmo saindo do sistema,
egistro bloqueado por outro usuário,
  • uma opção paliativa rápida é reiniciar o servidor (parando os serviços do TOP, Banco de dados e Server)
Para identificação de causa da ocorrência é necessário identificar qual o usuário está segurando a reserva do registro através da ferramenta DBACCESS Monitor
  • .

DBAccess - Monitor > Aba Usuários > Locks

Image Removed

(ideia)
  • Em algumas situações, a reserva de registros pode ocorrer devido a utilização de serviços que ficam executando operações em seu ambiente (JOBs), neste caso recomendamos que desative esses serviços e refaça os testes
afim de verificar se o causador


Configuração de Parâmetros que auxiliam na resolução da reserva de registros

- Caso
  • : Caso esteja
habilitado
  • desabilitado, recomendamos
desabilita
  • habilita-lo (
MV_GNRENF = .F.)
MV_FATTRAV - (Nossa recomendação é utilizar esse parâmetro): TUPKT5_DT_Criação do Parâmetro MV_FATTRAV
  • .T.), para não exibir a tela para alteração dos dados da GNRE/DIFAL (https://tdn.totvs.com/x/FvIGDg);
  • MV_FATTRAV: O parâmetro MV_FATTRAV otimiza os Locks de registros das tabelas SA1 (Clientes), SA2 (Fornecedores) e SB2 (Saldos). Por exemplo, na emissão de um Documento de Saída, com dez itens, o MV_FATTRAV vazio, o sistema realizou 28 Locks na transação. Ao configurar o MV_FATTRAV como 4, o número de Locks cai para 19.


Customizações / Personalizações em seu ambiente.

    • Personalização por Ponto de Entrada:
      Algumas personalizações utilizam os comandos dbSeek, MsSeek, dbGoTo e , etc. , que desposicionam os registros de tabelas utilizadas nas rotina rotinas do produto padrão causando o problema de "EOF Stack em MSRLock". Para este caso recomendamos que utilize um RPO limpo sem customizações para verificar se o problema esta sendo é causado por alguma personalização.(ideia) Caso não seja possível utilizar um repositório limpo para o teste, é necessário habilitar em seu ambiente a chave IXBLOG=NORUN (Para informações acesse: http://www.tdn.totvs.com.br/display/public/mp/Chave+IXBLOG)
      Registrar a linha de comando IXBLOG=NORUN no ini do server dentro da sessão do ambiente
      Simular o processo e verificar se a inconsistência permanece!
      Após a execução do procedimento a linha criada no *.INI do server deve ser removida, pois pode causar baixa performance no sistema se mantida.
      OBS: Caso ainda assim permaneça, é gravado um arquivo de log denominado msrlock.eof na pasta system.
      Para a correta conferência, deve-se realizar o processo com a ocorrência em ambiente de homologação onde ocorra o problema, após apagar o arquivo já gravado no diretório (para eliminar dados gravados anteriormente).


    • Personalização por Dicionário de Dados:
      (ideia)Verificar se há customizações na Estrutura do Protheus, como por exemplo, Índices (SIX) ou gatilhos (SX7).
      Realizar backup dos arquivos na Pasta System e recriar com um dicionário de dados padrão a atualizado. Refazer o processo.

OBSERVAÇÃO: Pontos de Entrada que permitem desativar o LOCK de registros das tabelas:

Ao desligar o LOCK de registros das tabelas poderá permitir divergências dos campos de controle devido movimentar o registro durante o processamento. Avalie criteriosamente o uso de Pontos de Entrada com esta finalidade.


Dica
titleImportante

Existem pontos de entrada que permitem a manutenção dos Locks nas tabelas SA1 (Clientes), SA2 (Fornecedores) e SB2 (Saldos):

(ideia) Caso esteja com problemas de Locks nas tabelas SB2 e SA1 recomendamos a leitura da documentação: DOC0033_Bloqueio_Pedido_de_Venda_x_Tela_GNRE_Documento_de_Saída

Porém o uso dos pontos de entrada acima deve ser avaliado criteriosamente por um analista especialista, uma vez que o mau uso deles pode ocasionar em problemas de gravação das informações no banco de dados. Caso tenha dúvidas no uso dos pontos de entrada, solicite a alocação de um Consultor TOTVS ao seu Gerente de Atendimento.


Pode lhe Interessar:

EOF Stack de chamadas em MSRLOCK.eof Controle de transaçoes Habilitado: https://tdn.totvs.com/x/vZgKDg

Locks de tabelas na Preparação do Documento de Saída: https://tdn.totvs.com/x/z6SSJQ

Importante: