Ir para conteúdo
  • Cadastre-se

dev botao

Erro: Não encontrei final do elemento: </EnviarLoteRpsEnvio>


joaolenosi
  • Este tópico foi criado há 1905 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia!

Acabei de atualizar todos os componentes, quando estou gerando o RPS ou um Lote de RPS estou recebendo a seguinte mensagem:
 

Citar

Não encontrei final do elemento: </EnviarLoteRpsEnvio>

Já debuguei o código, e ele está parando aqui:
 

function TDFeSSLClass.AdicionarSignatureElement(ConteudoXML: String;
  AddX509Data: Boolean; docElement, IdSignature: String): String;
var
  URI, TagEndDocElement: String;
  I: Integer;
begin
  URI := ExtraiURI(ConteudoXML);

  TagEndDocElement := '</' + docElement + '>';
  I := PosLast(TagEndDocElement, ConteudoXML);
  if I = 0 then
    raise EACBrDFeException.Create('Não encontrei final do elemento: ' + TagEndDocElement);

  Result := copy(ConteudoXML, 1, I - 1) +
            SignatureElement(URI, AddX509Data, IdSignature) + TagEndDocElement;
end;

Os valores das variáveis:

Citar

docElement: EnviarLoteRpsEnvio
TagEndDocElement: </EnviarLoteRpsEnvio >
ConteudoXML: '<?xml version="1.0" encoding="UTF-8"?><Arg xmlns="http://www.tinus.com.br"><LoteRps Id="5"><NumeroLote>5</NumeroLote><Cnpj>24185522000173</Cnpj><InscricaoMunicipal>0014028</InscricaoMunicipal><QuantidadeRps>1</QuantidadeRps><ListaRps><Rps><InfRps Id="28005"><IdentificacaoRps><Numero>28</Numero><Serie>005</Serie><Tipo>1</Tipo></IdentificacaoRps><DataEmissao>2016-07-12T09:57:20</DataEmissao><NaturezaOperacao>1</NaturezaOperacao><RegimeEspecialTributacao>2</RegimeEspecialTributacao><OptanteSimplesNacional>2</OptanteSimplesNacional><IncentivadorCultural>2</IncentivadorCultural><Status>1</Status><Servico><Valores><ValorServicos>35.00</ValorServicos><IssRetido>2</IssRetido><ValorIss>1.75</ValorIss><BaseCalculo>35.00</BaseCalculo><Aliquota>0.0500</Aliquota><ValorLiquidoNfse>35.00</ValorLiquidoNfse></Valores><ItemListaServico>1401</ItemListaServico><CodigoTributacaoMunicipio>2408003</CodigoTributacaoMunicipio><Discriminacao>01 ALINHAMENTO DIRECAO LASER PASSEIO R$: 35,00</Discriminacao><CodigoMunicipio>2408003</CodigoMunicipio></Servico><Prestador><Cnpj>24185522000173</Cnpj><InscricaoMunicipal>0014028</InscricaoMunicipal></Prestador><Tomador><IdentificacaoTomador><CpfCnpj><Cnpj>01974267000738</Cnpj></CpfCnpj></IdentificacaoTomador><RazaoSocial>NOLEM COMERCIAL IMP E EXPORT S/A</RazaoSocial><Endereco><Endereco>BR 304 KM 13-0</Endereco><Bairro>ZONA RURAL</Bairro><CodigoMunicipio>2408003</CodigoMunicipio><Uf>RN</Uf><Cep>59600970</Cep></Endereco><Contato><Telefone>8434224033</Telefone></Contato></Tomador></InfRps><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><Reference URI="#28005"><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><DigestValue>lcQSzKH7yUPcyixLNG1ORCgZIEI=</DigestValue></Reference></SignedInfo><SignatureValue>UcUGU+mI9Ob80Y7xzd/2W3+KvgE6Jp7K9/x9KcbTr12m8hm8obcuykwyRKcTuNRtvKmPAetXnNKx2SsNAmw3CQJm5MDd6g5jmbOAJYKquT37auzthOZNxxwSR5x5aBBlRt9ELv7HNQMbmdc4xeJRvy2kmA5sHnZiG1e2tbvZ0Tu+WUJaRLWGnlwZ7fKl3jG9CsKOQSyd6oRs+iv84+TltrlytsxO9rPNxoDJNYtsiDIxehjlWc9PnjLyPY976xHkeOJxNiGSUYN/z9nRjTrh3EhzCVqk8s+IOomZq1y8FHWX3DOxlkhcNGEYqZs+CJ+IB6Y6/dz1nEGf9dGkS2N87A==</SignatureValue><KeyInfo><X509Data><X509Certificate>MIIITjCCBjagAwIBAgIQeJI94t/AOsRJ7DfbcnI7/DANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDEtMCsGA1UECxMkQ2VydGlzaWduIENlcnRpZmljYWRvcmEgRGlnaXRhbCBTLkEuMSEwHwYDVQQDExhBQyBDZXJ0aXNpZ24gTXVsdGlwbGEgRzUwHhcNMTYwNDExMDAwMDAwWhcNMTcwNDEwMjM1OTU5WjCB2TELMAkGA1UEBhMCQlIxEzARBgNVBAoUCklDUC1CcmFzaWwxKTAnBgNVBAsUIEF1dGVudGljYWRvIHBvciBBUiBGZWNvbWVyY2lvIENFMRswGQYDVQQLFBJBc3NpbmF0dXJhIFRpcG8gQTExFjAUBgNVBAsUDUlEIC0gMTAxMDc0NDAxLjAsBgNVBAMTJUpVTUJPIERJU1RSSUJVSURPUkEgREUgQVVUT1BFQ0FTIExUREExJTAjBgkqhkiG9w0BCQEWFmNwZEBvbGluZGFwbmV1cy5jb20uYnIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCTVtyLN6LmpB7/7U2bEFXWELLkIRwMPaX/WBke0DMaxQMCEysfqQZnkOf1hXPmTI78SLOYwnB6jFiJwZGhytAzg6BBCz51Z4JNhauTt5oa44i5f5Byouo0+Qa1BWNtSN9506A6XduOHN9M0rUVyp1wweohEhDIJdt2xC5Nhnt3Gvi8e2AvGsbhj8MCM2NSgPqxX4mePykLpnsouhimJv5eLTOq496jTspti9EjpQzgjSn96xbFUj6ZR/BZIs/3tn8vrnMQpA4f3/1R38S52c1irmRALtEQ64c0Vakel6W2XS6CoKSPfJRqAU5x13KcknS1CM6cC7t5zfDlZk0UVyjPAgMBAAGjggN0MIIDcDCBugYDVR0RBIGyMIGvoD4GBWBMAQMEoDUEMzExMDMxOTk2MDc3Mzc0MzE0NjIwMDAwMDAwMDAwMDAwMDAwMDAwMjY1OTg1MlNFU1BSTqAhBgVgTAEDAqAYBBZOSUNPTEUgU09BUkVTIERFIFNPVVNBoBkGBWBMAQMDoBAEDjEwMjkxMDQyMDAwMTgyoBcGBWBMAQMHoA4EDDAwMDAwMDAwMDAwMIEWY3BkQG9saW5kYXBuZXVzLmNvbS5icjAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFJ1Qz73/JMqvsTPrF+JCeo5pKo5TMA4GA1UdDwEB/wQEAwIF4DCBiQYDVR0gBIGBMH8wfQYGYEwBAgELMHMwcQYIKwYBBQUHAgEWZWh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vZHBjL0FDX0NlcnRpc2lnbl9NdWx0aXBsYS9EUENfQUNfQ2VydGlTaWduTXVsdGlwbGEucGRmMIIBJQYDVR0fBIIBHDCCARgwXKBaoFiGVmh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vbGNyL0FDQ2VydGl

 

João Leno

Developer In Lunar Tecnologia
Formação: Bacharel em Sistemas de Informação
Pós Graduação: Infraestrutura e aplicações em redes de computadores (Cursando)
Cell: (84) 8135-9585
Skype: joaolenosi
Site: http://lunartecnologia.com.br/

Se não puder vencer pelo o talento, vença pelo o esforço.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde João,

Não cole conteúdo de arquivos na postagem e sim anexa o arquivo.

Você esta emitindo NFS-e para qual cidade?

Qual é o provedor?

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Desculpe-me, Italo!
Estou emitindo para cidade de Mossoró provedor Tinus.

Aqui não possui webservices é apenas a geração do XML e upload manual.

João Leno

Developer In Lunar Tecnologia
Formação: Bacharel em Sistemas de Informação
Pós Graduação: Infraestrutura e aplicações em redes de computadores (Cursando)
Cell: (84) 8135-9585
Skype: joaolenosi
Site: http://lunartecnologia.com.br/

Se não puder vencer pelo o talento, vença pelo o esforço.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde João,

Sendo assim você esta usando o método GerarLote?

Fiz uma alteração, favor atualizar todos os fontes de todas as pastas e refaça os testes.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Exatamente, estou utilizando o método GerarLote.
Vou atualizar e posto o feedback!

  • Curtir 1

João Leno

Developer In Lunar Tecnologia
Formação: Bacharel em Sistemas de Informação
Pós Graduação: Infraestrutura e aplicações em redes de computadores (Cursando)
Cell: (84) 8135-9585
Skype: joaolenosi
Site: http://lunartecnologia.com.br/

Se não puder vencer pelo o talento, vença pelo o esforço.

Link para o comentário
Compartilhar em outros sites

Italo, o erro que mencionei no post foi resolvido,

porém outro erro aconteceu.

Demorei a dar o feedback por que estava debugando.

Segue os prints do erro.

Te adianto que o problema era que estava faltando abrir " na tag do tinus e o nome também estava escrito errado: inus.com.br

Citar

Como estava vindo:
 '  xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ds1=inus.com.br" '

A forma correta:
' xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ds1="tinus.com.br"  '
 

Solução do problema:
 

Citar

  SelectionNamespaces   := StringReplace(SelectionNamespaces, 'xmlns:ds1=inus.com.br"', 'xmlns:ds1="tinus.com.br"', [rfIgnoreCase]);

A alteração foi realizada na unit ACBrDFeCapicom
 

procedure TDFeCapicom.VerificarValoresPadrao(var SignatureNode: String;
  var SelectionNamespaces: String);
begin
  if SignatureNode = '' then
    SignatureNode := CAPICOM_SIGNATURE_NODE;

  SelectionNamespaces   := StringReplace(SelectionNamespaces, 'xmlns:ds1=inus.com.br"', 'xmlns:ds1="tinus.com.br"', [rfIgnoreCase]); 
  if SelectionNamespaces = '' then
    SelectionNamespaces := DSIGNS
  else
  begin
    if LeftStr(SelectionNamespaces, Length(DSIGNS)) <> DSIGNS then
      SelectionNamespaces := DSIGNS + ' ' + SelectionNamespaces;
  end;
end;

Eu dei um replace por que não consegui localizar de onde tava vindo o valor.

 

imagem1.png

imagem2.png

imagem3.png

imagem4.png

O último problema que está acontecendo é na hora ler o elemento de assinatura XMLDOC.

Citar

É preciso carregar o template antes de assinar.


Segue o print:

 

imagem5.png

Trecho do código:

   if (not xmldoc.loadXML( WideString(AXml) )) then
        raise EACBrDFeException.Create('Não foi possível carregar XML'+sLineBreak+ AXml);

      xmldoc.setProperty('SelectionNamespaces', SelectionNamespaces);

      //DEBUG
      //xmldoc.save('c:\temp\xmldoc.xml');

      // Criando Elemento de assinatura //
      xmldsig := CoMXDigitalSignature50.Create;

      // Lendo elemento de Assinatura de XMLDOC //
      xmldsig.signature := xmldoc.selectSingleNode( WideString(SignatureNode) );
      if (xmldsig.signature = nil) then
        raise EACBrDFeException.Create('É preciso carregar o template antes de assinar.');

Valor das variáveis:

SignatureNode     = .//ds1:EnviarLoteRpsEnvio/ds:Signature
xmldsig.signature = nil

João Leno

Developer In Lunar Tecnologia
Formação: Bacharel em Sistemas de Informação
Pós Graduação: Infraestrutura e aplicações em redes de computadores (Cursando)
Cell: (84) 8135-9585
Skype: joaolenosi
Site: http://lunartecnologia.com.br/

Se não puder vencer pelo o talento, vença pelo o esforço.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia João,

Fiz uma alteração que acredito que vai resolver esses problemas.

Enviei para o repositório, mas como o SVN esta muito lento, não sei quando vai estar disponível para você poder baixar.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Muito obrigado, Italo!

Vou ficar verificando direto para ver se já está disponível.

Assim que efetuar todos os testes, eu posto novamente para dizer se está tudo ok.

João Leno

Developer In Lunar Tecnologia
Formação: Bacharel em Sistemas de Informação
Pós Graduação: Infraestrutura e aplicações em redes de computadores (Cursando)
Cell: (84) 8135-9585
Skype: joaolenosi
Site: http://lunartecnologia.com.br/

Se não puder vencer pelo o talento, vença pelo o esforço.

Link para o comentário
Compartilhar em outros sites

  • 2 anos depois...
  • Administradores

Boa tarde @PrimeSoftware

Este tópico é bem antigo, caso precise de apoio SAC, queira por favor criar um novo tópico na área SAC fornecendo todos os detalhes da sua situação.

Att.

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 para o comentário
Compartilhar em outros sites

  • Consultores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1905 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.