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

Produto:

Faturamento

Versões:

V11 e V12

Ocorrência:

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

Ambiente:

SIGAFAT

Passo a passo:

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


Essa mensagem indica que a Numeração ficou "lockada" / reservada. Isso ocorre por que a trava de numeração não foi liberada.

Geralmente ocorre quando o Controle de Numeração é via SX5 ou SXE/SXF (MV_TPNRNFS = 1 ou 2)


Geralmente o problema é ocasionado por:

  • Grande concorrência de Faturamento > Para este caso recomenda-se a utilização da opção 3 - SD9 para evitar lock de registro por concorrência.

  • Processo customizado que aciona o Faturamento e não libera o lock > Para este caso é necessário reavaliar as personalizações e validar inclusive que não estejam sendo utilizadas funções internas específicas do Padrão (consulte Suporte ADVPL do Protheus). Valide o comportamento em ambiente de Teste Padrão.

  • Configurações / definições incorretas do controle de Numeração no ambiente > Para este caso é necessário validar as configurações para ajustar quaisquer inconsistências no ambiente; reavalie todos os Pontos da configuração conforme definições:
  • FAT0049 Controle de Numeração de Documento de Saída no Protheus


    Principais avaliações:

      • Acesse o Configurador e seu Banco de Dados e valide se a SX5 é devidamente localizada.
      • Se o Faturamento é exclusivo (ou seja, registros na SF2 possuam o campo de Filial preenchido) então, é necessário que o controle de numeração também seja exclusivo.

        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 qui Exemplo de uso do Ponto)

        IMPORTANTE: Não é recomendada a alteração de compartilhamento da SX5 em ambiente Produção já em uso!
        Conforme menciona ao tentar realizar esta alteração no Configurador, a adequação de dados da base não ocorre ao alterar o modo de compartilhamento; 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 localiza os registros (pois o campo de Filial não está preenchido) e gera 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.
        Em caso de possuir Faturamento Exclusivo com controle de Numeração (SX5) compartilhada para ambiente já populado em Produção a recomendação de contorno é 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á criado 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? Realize um teste deletando a linha de Série/Numeração e incluindo uma nova linha idêntica.

      • Após essas validações, 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 com o Faturamento.

      • 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)
        - Abir 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 devidos backups, para validação primeiramente em base teste e posterior réplica em Produção. Havendo dúvidas ou dificuldade em relação ao procedimento, acionar um consultor Totvs.

Pode lhe interessar:

FAT0049 Controle de Numeração de Documento de saída no Protheus