Jump to content

dev botao

ACBrReinf Evento R-1000 - Erro MS1010 ID inválido


Go to solution Solved by EMBarbosa,
  • Este tópico foi criado há 682 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Estou realizando uma integração com ACBrReinf versão 1.5.1 para Órgão Público e me deparei com o erro MS1010 - ID inválido

o motivo do erro tem a ver com a validação da receita que esta no documento "Anexo II dos leiautes da EFD-Reinf - Regras de validação Versão 1.5.1" REGRA_VALIDA_ID_EVENTO

"A identificação única do evento (Id) é composta por 36 caracteres, conforme disposto a seguir: IDTNNNNNNNNNNNNNNAAAAMMDDHHMMSSQQQQQ

ID - Texto Fixo "ID";

T - Tipo de Inscrição do Contribuinte (1 - CNPJ; 2 - CPF);

NNNNNNNNNNNNNN - Número do CNPJ ou CPF do contribuinte - Completar com zeros à direita. No caso de pessoas jurídicas, o CNPJ informado deve conter 8 ou 14 posições de acordo com o enquadramento do contribuinte para preenchimento do campo {ideContri/nrInsc} do evento R-1000, completando-se com zeros à direita, se necessário.

AAAAMMDD - Ano, mês e dia da geração do evento;

HHMMSS - Hora, minuto e segundo da geração do evento;

QQQQQ - Número sequencial da chave. Incrementar somente quando ocorrer geração de eventos na mesma data/hora, completando com zeros à esquerda. OBS.: No caso de pessoas jurídicas, o CNPJ informado deverá conter 8 ou 14 posições de acordo com o enquadramento do contribuinte para preenchimento do campo {ideContri/nrInsc} do evento S-1000, completando-se com zeros à direita, se necessário "

 

O ID gerado esta com a informação incorreta da opção T - Tipo de Inscrição do Contribuinte (1 - CNPJ; 2 - CPF); esta saindo como 2 sendo que o correto é 1 o motivo disso é o seguinte:

no arquivo pcnGeradorReinf.pas linha 321 valida o tamanho da variável CNPJF:

  if (Length(CNPJF) = 14) then 
    Result := Result + IntToStr(1)
  else
    Result := Result + IntToStr(2);

Porem existe um regra para órgão público no campo nrInsc da tag ideContri "Informar o número de inscrição do contribuinte de acordo com o tipo de inscrição indicado no campo {tpInsc}. Se for um CNPJ deve ser informada a raiz/base de oito posições, exceto se a natureza jurídica do contribuinte declarante for de administração pública direta federal ([101-5], [104-0], [107- 4], [116-3], situação em que o campo deve ser informado com o CNPJ completo (14 posições). Validação: Se {tpInsc} for igual a [1], deve ser um número de CNPJ válido"

no caso órgão público se enquadra na definição de informar apenas a raiz/base de oito posições do CNPJ assim a verificação acima é definida como 2 pois a variável CNPJF não é igual a 14 assim gerando o ID incorreto.

A solução foi acrescentar nessa verificação um or com o TipoContribuinte = tcOrgaoPublico:

  if (Length(CNPJF) = 14) or (TACBrReinf(FACBrReinf).Configuracoes.Geral.TipoContribuinte = tcOrgaoPublico) then
    Result := Result + IntToStr(1)
  else
    Result := Result + IntToStr(2);

desta forma o ID é gerado corretamente, anexei o arquivo pcnGeradorReinf.pas com a correção e um comentário a respeito sobre as 8 posições 

caso a correção seja a correta para atualizarem no repositório oficial.

se tiver alguma outra sugestão podem sugerir 

Obrigado 

 

pcnGeradorReinf.pas

  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...
  • Administradores

Obrigado pela contribuição, em breve será validada para possível inclusão ao svn

TK-3007

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • 3 months later...
  • Consultores
  • Solution

Muito obrigado pela contribuição.
Fiz a implementação baseada nela.
As alterações já foram para o SVN.
Pelo que vi está tudo certo.
Queira por favor atualizar, testar e reportar qualquer problema.

Mais uma vez obrigado.

  • Thanks 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

  • 2 weeks later...
Em 06/12/2022 at 10:44, EMBarbosa disse:

Muito obrigado pela contribuição.
Fiz a implementação baseada nela.
As alterações já foram para o SVN.
Pelo que vi está tudo certo.
Queira por favor atualizar, testar e reportar qualquer problema.

Mais uma vez obrigado.

Realizei o update e fiz os testes tudo ok 

Obrigado

Link to comment
Share on other sites

  • Este tópico foi criado há 682 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...