Soluções possíveis para o Help A460FLOCK (MATA461)

Help A460FLOCK: Ocorreu algum problema na última geração de notas fiscais

Produto:

Faturamento

Ambiente:Faturamento (SIGAFAT)

Ocorrência:

Help A460FLOCK ao selecionar numeração da Nota de Saída


Analise da mensagem A460FLOCK - Ocorreu algum problema na última geração de notas fiscais.


IMPORTANTE

É imprescindível validar que o controle de Numeração automática para Documento de Saída está devidamente configurado, conforme a documentação: https://tdn.totvs.com/x/Q4ScEw


Essa mensagem ocorre nas seguintes situações:

1) Sistema não está encontrando a Série na SX5 - Tabela 01 para dar lock (reservar a numeração). Avaliar os seguintes pontos:

  • Compartilhamento da SX5: Se o Faturamento é exclusivo (ou seja, registros na SF2 possuem o campo de Filial preenchido) então, é necessário que o controle de numeração também seja exclusivo. Para o correto compartilhamento há duas opções:

1ª Opção: SX5 deve ser exclusiva: Confirme em "Configurador > Bases de Dados > Dicionário de Dados > SX5" o modo de compartilhamento da Tabela; e confirme principalmente no Banco de Dados > Top/Ctree se os registros da SX5 Tabela 00 e Tabela 01 estão ambas com o campo de Filial devidamente preenchidos indicando que o modo de compartilhamento dos registros está adequado.

2ª Opção: Caso a SX5 seja compartilhada, utilizar o Ponto de Entrada CHGX5FIL (dúvidas, acione o Suporte ADVPL Protheus) para passar o código da Filial logada para a SX5 a fim de localizar o registro exclusivo da Tabela 01 (veja aqui Exemplo de uso do Ponto)
IMPORTANTE: Não é recomendada a alteração de compartilhamento da SX5 em ambiente Produção já em uso!
Caso tente realizar a alteração do compartilhamento na tabela já em uso, o sistema não realizará a adequação de dados da base, ocasionando quebra de integridade (inclusive para registro de novas séries visto que a estrutura da SX5 Tabela 00 não está adaptada para Filial); assim, ao emitir a Nota o sistema não localizará os registros (pois o campo de Filial não está preenchido) e irá gerar o Help A460FLOCK. Após alteração do compartilhamento seria necessário droppar a SX5 e recriar com o modo de compartilhamento exclusivo, o que no entanto não é recomendado pois é um procedimento incisivo para uma Tabela de Estrutura utilizada por todo o sistema. Assim sendo, em caso de possuir Faturamento Exclusivo com controle de Numeração (SX5) compartilhada para ambiente já populado em Produção, a recomendação é utilizar o Ponto de entrada sugerido.

  • O parâmetro MV_TPNRNFS está compartilhado para todas as Filiais? Caso esteja exclusivo, está devidamente criado para TODAS as Filiais?
  • O parâmetro MV_NUMITEN está devidamente criado em modo exclusivo para cada Filial? O conteúdo registrado nos parâmetros é válido?
  • O parâmetro MV_ESPECIE contém apenas séries já existentes na SX5 - Tabela 01 ?
  • A série está devidamente criada? Acesse o Configurador e seu Banco de Dados e valide se a SX5 é devidamente localizada. Realize também um teste deletando a linha de Série/Numeração e incluindo uma nova linha idêntica.
  • Certifique-se de que não há nenhuma instância aberta no Configurador, posicionada na Tabela de controle de numeração, pois se estiver com instância aberta, a Tabela também ficará travada. Feche as instâncias para seguir.
  • Procedimento para recriar a(s) Tabela(s) de controle de Numeração em casos de ter corrompido (SX5 ou SXE/SXF):
    - Realizar um Backup da(s) tabela(s)
    - Abrir o backup para validar o arquivo, aplicar o utilitário PACK sobre ele (para excluir registros deletados), e salvar com outro nome para manter o backup original intacto
    - Aplicar um ZAP na tabela (truncate table) que irá deletar a tabela mantendo apenas a estrutura
    - Executar um APPEND na Tabela backup no qual foi aplicado PACK

Importante

Todo procedimento deve ser realizado pela Equipe de TI da empresa, após os devidos backups, para validação primeiramente em base de homologação e posterior réplica em Produção. Havendo dúvidas ou dificuldade em relação ao procedimento, acionar um consultor TOTVS.


2) Indica que a Numeração ficou "lockada" / reservada. Isso ocorre por que a trava de numeração não foi liberada. Avaliar os seguintes pontos:

  • Possui customizações no ambiente?

É possível que em customizações se realize o Lock da Tabela e, por uma falha no código, não soltar após uso, ou, não tratar o uso simultâneo. Necessário validar inclusive que não estejam sendo utilizadas funções internas específicas do Padrão (consulte Suporte ADVPL do Protheus). É imprescindível verificar se a ocorrência é reproduzida em ambiente padrão para descartar inconsistências com as customizações.


  • Há grande concorrência no faturamento (muitos usuários executando o faturamento simultaneamente)?

Neste caso, é comum ocorrer o lock se o controle de sequência automática for realizado via License Server (antigo SXE/SXF) ou pela própria SX5 (MV_TPNRNFS = 1 ou 2).

Para este caso recomenda-se que o controle de sequência automática para a numeração do Documento de Saída seja via SD9 (MV_TPNRNFS = 3) para evitar Lock de registro por concorrência. 


Atualizado em 26/09/2023
Este artigo foi útil?  
Agradecemos sua avaliação.