Search the Community
Showing results for tags 'r-1000'.
-
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