Ir para conteúdo
  • Cadastre-se

dev botao

Erro Substituição NFS-e Flores Da Cunha (Tecnos)


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

Recommended Posts

Boa tarde Ao solicitar a substituição de uma nota me esta retornando 
a seguinte mensagem:

 

Capturar.PNG

Já tenho o ACBR atualizado e as informações e certificados estão corretas
já que posso enviar NFS-e normal e cancelar sem problema só esta acontecendo com a substituição
agradeceria se pudessem nos orientar asia uma solução, desde já muito obrigado. e parabéns pelo projeto.

Atentamente: Daniel 

Editado por moronidanost
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Uma coisa que estou notando é que usa o Capicom. creio que deveria usar o WinCrypt .

apontou para o schema correto desse provedor? o erro é no parser da validação do schema com o xml

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

Boa tarde,

estou dando um retorno para atualizar a situação do enviou da nota de substituição já tente de tudo e não passa a validação pelas dúvidas que tivesse alguma coisa errada apague todo da pasta do acbr e baixe de novo também reinstale o acbr no delphi já que tinha alguns componentes desatualizados mais mesmo assim continua dando erro, alguém consegue fazer o teste de substituição para ver se esta funcionando muito obrigado desde já,

Atentamente Daniel

Editado por moronidanost
Link para o comentário
Compartilhar em outros sites

  • Moderadores

é preciso pegar o manual atualizado desse provedor e conferir o que o ACBrNFSe está montando. pode ser somente que falta preencher um campo da NFS-e para conseguir emitir

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

Boa tarde Juliomar Marchetti,

Estou preenchendo as informações da seguinte forma:

Nota1.Configuracoes.Certificados.NumeroSerie := RetTag('CertNumero', sDados);
    Nota1.Configuracoes.Certificados.Senha := RetTag('CertSenha', sDados);  
    Nota1.Configuracoes.Geral.SSLCryptLib := cryCapicom;
    Nota1.Configuracoes.Geral.SSLHttpLib := httpWinINet;
    Nota1.Configuracoes.Geral.SSLLib := libCapicom;
    Nota1.Configuracoes.Geral.SSLXmlSignLib := xsMsXmlCapicom; 
    Nota1.Configuracoes.Geral.PathIniCidades := RetTag('DirINI', sDados);
    Nota1.Configuracoes.Geral.PathIniProvedor := Nota1.Configuracoes.Geral.PathIniCidades;
    Nota1.Configuracoes.Geral.Emitente.CNPJ := RetTag('PrestCNPJ', sDados);
    Nota1.Configuracoes.Geral.Emitente.InscMun := RetTag('PrestIM', sDados);
    Nota1.Configuracoes.Geral.Emitente.RazSocial := RetTag('PrestRazao', sDados);
    Nota1.Configuracoes.Geral.Emitente.WebUser  := RetTag('PrestWebUser', sDados);
    Nota1.Configuracoes.Geral.Emitente.WebSenha := RetTag('PrestWebSenha', sDados);
    
    if RetTag('Amb', sDados) = 'P'
      then Nota1.Configuracoes.WebServices.Ambiente := taProducao
      else Nota1.Configuracoes.WebServices.Ambiente := taHomologacao;  

    Nota1.Configuracoes.Arquivos.PathSchemas := RetTag('DirSchemas', sDados);
    Nota1.Configuracoes.Geral.Salvar := False; //xml SEM envelope
    Nota1.Configuracoes.WebServices.Salvar := False; //xml COM envelope
    Nota1.Configuracoes.Geral.CodigoMunicipio := StrToInt(RetTag('PrestCidIBGE', sDados));
    Nota1.Configuracoes.Geral.SetConfigMunicipio;
    Nota1.Configuracoes.Geral.ConsultaLoteAposEnvio := False;
    Nota1.Configuracoes.WebServices.Tentativas := 10;
    Nota1.Configuracoes.WebServices.AguardarConsultaRet := 5000;
    Nota1.Configuracoes.WebServices.IntervaloTentativas := 5000;

  with Nota1 do

    try
      sDados := StrSimples(sDados, 0, False, True, False, '');

      NotasFiscais.Clear;
      NotasFiscais.NumeroLote := RetTag('NumLote', sDados);
      NotasFiscais.Transacao := True;

      with NotasFiscais.Add.NFSe do begin
        IdentificacaoRps.Numero := RetTag('NumRPS', sDados);        
        IdentificacaoRps.Serie := RetTag('Serie', sDados);
        IdentificacaoRps.Tipo := trRPS; 
        DataEmissao := StrToDateTime(RetTag('DataEmissao', sDados));
        DataEmissaoRps := StrToDateTime(RetTag('DataEmissao', sDados));
        NaturezaOperacao := no0;
        RegimeEspecialTributacao := retSimplesNacional;
        PrestadorServico.Endereco.CodigoMunicipio := RetTag('CodigoMunicipio', sDados);
        OptanteSimplesNacional := snSim;
        IncentivadorCultural := snNao;
        Numero := RetTag('NumNota', sDados);
        Status := srNormal;
        OutrasInformacoes := RetTag('observacao', sDados);

        if RetTag('Amb', sDados) = 'P' then
          Producao := snSim
        else
          Producao := snNao;

        Servico.Valores.ValorServicos := RetTagFloat('ValorServicosB', sDados);
        Servico.Valores.ValorDeducoes := 0.00;
        Servico.Valores.ValorPis := 0.00;
        Servico.Valores.ValorCofins := 0.00;
        Servico.Valores.ValorInss := 0.00;
        Servico.Valores.ValorIr := 0.00;
        Servico.Valores.ValorCsll := 0.00;
        
        case StrToInt(RetTag('ISSRetido', sDados)) of
          0:
            Servico.Valores.IssRetido := stNormal;
        else
          Servico.Valores.IssRetido := stRetencao;
        end;

        Servico.Valores.OutrasRetencoes := 0.00;
        Servico.Valores.DescontoIncondicionado := RetTagFloat('ValorDesconto', sDados);
        Servico.Valores.DescontoCondicionado := 0.00;
        Servico.Valores.BaseCalculo := Servico.Valores.ValorServicos - Servico.Valores.ValorDeducoes - Servico.Valores.DescontoIncondicionado;
        Servico.Valores.Aliquota := RetTagFloat('AliquotaISS', sDados);         
        Servico.Valores.ValorIss := RetTagFloat('ValorISS', sDados);
        Servico.Valores.ValorIssRetido := RetTagFloat('ValorISSRetido', sDados);
        Servico.Valores.ValorLiquidoNfse := Servico.Valores.ValorServicos - Servico.Valores.ValorPis - Servico.Valores.ValorCofins - Servico.Valores.ValorInss - Servico.Valores.ValorIr -
          Servico.Valores.ValorCsll - Servico.Valores.OutrasRetencoes - Servico.Valores.ValorIssRetido - Servico.Valores.ValorIss - Servico.Valores.DescontoIncondicionado -
          Servico.Valores.DescontoCondicionado;        
        Servico.ItemListaServico := AddPontoLC116(RetTag('ItemListaServico', sDados));
        Servico.Discriminacao := RetTag('Discriminacao', sDados);
        Servico.CodigoMunicipio := RetTag('CodigoMunicipio', sDados);
        Servico.ExigibilidadeISS := exiExigivel;
        Servico.CodigoPais := 1058;
        Servico.MunicipioIncidencia := StrToInt(RetTag('MunicipioIncidencia', sDados));        
        XMLDoc := LoadXMLData('<?xml version="1.0" encoding="iso-8859-1"?>' + copy(sDados, Pos('<itens>', sDados), Pos('</itens>', sDados) - Pos('<itens>', sDados) + 8));
        Node_Pai := XMLDoc.ChildNodes.FindNode('itens');
        
        for i := 0 to Node_Pai.ChildNodes.Count - 1 do begin
          Node_Geral := Node_Pai.ChildNodes[i];

          with Servico.ItemServico.Add do begin
            Descricao := VarToStr(Node_Geral.ChildNodes.FindNode('Descr').NodeValue);
            Quantidade := Node_Geral.ChildNodes.FindNode('Qtd').NodeValue;
            ValorUnitario := Node_Geral.ChildNodes.FindNode('vUnit').NodeValue;
            Aliquota := Node_Geral.ChildNodes.FindNode('Aliq').NodeValue;
            BaseCalculo := Node_Geral.ChildNodes.FindNode('vBC').NodeValue;
            ValorDeducoes := 0;
            ValorServicos := Node_Geral.ChildNodes.FindNode('vServ').NodeValue;
            DescontoCondicionado := 0;
            DescontoIncondicionado := Node_Geral.ChildNodes.FindNode('Desc').NodeValue;
            ValorIss := (BaseCalculo * Aliquota) / 100;
            Discriminacao := VarToStr(Node_Geral.ChildNodes.FindNode('Discr').NodeValue);
          end;

        end;
        
        Prestador.Cnpj := SoNumeros(RetTag('PrestCNPJ', sDados));
        Prestador.InscricaoMunicipal := SoNumeros(RetTag('PrestIM', sDados));        
        Tomador.IdentificacaoTomador.CpfCnpj := SoNumeros(RetTag('TomDOC', sDados));
        Tomador.IdentificacaoTomador.InscricaoMunicipal := SoNumeros(RetTag('TomIM', sDados));
        Tomador.RazaoSocial := RetTag('TomNome', sDados);
        Tomador.Endereco.Endereco := RetTag('TomEnd', sDados);
        Tomador.Endereco.Numero := RetTag('TomEndNum', sDados);
        Tomador.Endereco.Complemento := RetTag('TomCompl', sDados);
        Tomador.Endereco.Bairro := RetTag('TomBairro', sDados);
        Tomador.Endereco.xMunicipio := RetTag('TomCid', sDados);
        Tomador.Endereco.CodigoMunicipio := RetTag('TomCidIBGE', sDados);
        Tomador.Endereco.UF := RetTag('TomUF', sDados);
        Tomador.Endereco.CEP := SoNumeros(RetTag('TomCEP', sDados));
        Tomador.Contato.Telefone := SoNumeros(RetTag('TomFone', sDados));
        Tomador.Contato.Email := RetTag('TomMail', sDados);
        NfseSubstituida := RetTag('NumNotaSubstituta', sDados);   

      end;

e apos estou fazendo a chamada do evento,

Nota1.SubstituirNFSe('1', RetTag('NumNotaSubstituta', sDados), RetTag('observacao', sDados));

Verifique o manual tente preencher o campo NfseSubstituida
o qual imagino não precisaria porque já é informado no parâmetro 2  do evento "SubstituirNFSe" mas mesmo assim não passa a validação, alguma idéia desde já obrigado.

Atentamente Daniel

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Moroni,

Verificando os schemas notei que para esse provedor o valor do Id tem que ser um numero inteiro, logo isso explica o erro apresentado na sua primeira postagem onde o valor do Id é "sub13", portanto só vai validar corretamente se for apenas "13".

Fiz uma alteração que acredito vai resolver o problema.

Favor atualizar os fontes e faça um novo teste.

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

Bom dia Jurisato Junio,

atualize as fontes e volte a fazer o teste apos as alterações conforme você
recomendo ao realizar o teste a mensagem de erro mudo, agora traz o seguinte:

image.png.1d5478945d45fbcbe585ae04b3bd1d51.png

tem alguns números ocultos em preto por ser cnpj de um cliente
mais pelo que vi na montagem do id o acbr concatena o cnpj formatado mais se o campos "ID" é um integer não deveria ser só numero so para ressaltar que quando alimento a informação do campo estou removendo os caracteres de texto e só envia o numero na seguinte imagem fiz um showmessage do cnpj alimentado para verificar e esta carregando sem formatação :

image.png.799ea96da5b76ff7bcda70e85f3ba771.png 

alguma idéia?  aguardo retorno desde já muito obrigado.

Atentamente Daniel

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Moroni,

Favor atualizar mais uma vez e faça novos testes.

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

  • Consultores

Boa tarde Moroni,

O que tudo indica é que no pedido de cancelamento o atributo ID não esta sendo gerado.

Favor alterar o arquivo INI do provedor atribuindo o valor zero ao campo Validar.

Desta forma ele vai gerar o XML e salvar em disco.

Feito isso favor anexar aqui para que possamos analisar.

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

  • Consultores

Bom dia Daniel,

Você anexou o XML errado.

Esse XML se refere ao RPS e o erro se refere ao pedido de cancelamento.

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

  • 2 semanas depois ...
  • Consultores

Boa tarde Daniel,

Neste caso altere o valor de Validar para zero no arquivo INI do provedor, assim não vai ocorrer erro de validação e consequentemente os arquivos serão salvos.

Com os arquivos (XML) vai ser possível identificar o problema.

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á 1372 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.

The popup will be closed in 10 segundos...