Tentativa de reservar registro no Alias x em EOF Stack de chamadas em MSRLOCK.eof Controle de transaçoes Habilitado

Ocorrência:

O que fazer quando aparece a mensagem de MSRLOCK em um processo?

Ambiente:

Microsiga Protheus - a partir da versão 11.

 

Solução:

O controle de transação é uma ferramenta importante que garante a integridade de dados quando uma determinada operação é realizada no Banco de Dados.
O Protheus possui o parâmetro MV_TTS que quando ativado garante que este processo exista nos processos críticos de transação de arquivos. Detalhes: Controle de Transação - MV_TTS

As alternativas existentes quando da atualização de tabelas são :

Efetivar a transação - quando realizada com sucesso
Voltar a status anterior (rollback) - desfaz toda a transação iniciada quando o final da transação não foi concluído com sucesso. Isto garante a total integridade dos dados.


A mensagem "EOF Stack em MSRLOCK" indica que a rotina tentou reservar um registro para ser manipulado no processamento; mas o ponteiro da tabela estava em FIM DE ARQUIVO (MODO EOF) pois não localizou o dado procurado na Tabela.


Atualizado em 20/03/2024
Este artigo foi útil?  
Agradecemos sua avaliação.