Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

Boa tarde

Continuo com o problema em criação da pasta, no componente acbrnfseX
Tenho um certificado da matriz 41679536000162, sendo usado na filial
41679536000243.

O que esta acontecendo:
quando gero uma nota nova, os recibos, e os arquivos sooap, e de retorno, ele grava no CNPJ
onde indiquei em meu arquivo INI conforme abaixo e que é o CNPJ da FILIAL:
PathMensal := GetPathGer(0,edtEmitCNPJ.Text); *******alteração orientada pelo Italo
PathSalvar := PathMensal;
PathCan    := PathMensal;

Mas o arquivo XML ele esta criando uma nova pasta
com o CNPJ do certificado que é da matriz, e esta salvando a Nota(XML nele)
e isso acontece somente quando o CNPJ do certificado é diferente do INI.
já tentei mudar essa função abaixo, mas continuo com o problema.
o PDF ele salva certinho.

veja:
for i := 0 to ACBrNFSeX1.NotasFiscais.Count -1 do
     begin
          memoLog.Lines.Add(' ');
          memoLog.Lines.Add('NFS-e Numero....: ' + ACBrNFSeX1.NotasFiscais.Items[i].NFSe.Numero);
          memoLog.Lines.Add('Cod. Verificacao: ' + ACBrNFSeX1.NotasFiscais.Items[i].NFSe.CodigoVerificacao);
          memoLog.Lines.Add('Prestador.......: ' + ACBrNFSeX1.NotasFiscais.Items[i].NFSe.Prestador.RazaoSocial);
          memoLog.Lines.Add('Tomador.........: ' + ACBrNFSeX1.NotasFiscais.Items[i].NFSe.Tomador.RazaoSocial);

          if ACBrNFSeX1.NotasFiscais.Items[i].NFSe.SituacaoNfse = ACBrNFSeXConversao.snCancelado then
             memoLog.Lines.Add('A Nota encontra-se Cancelada.');

          if ACBrNFSeX1.NotasFiscais.Items[i].NomeArq <> '' then
          begin                                                                                                                                 mudei aqui: era GetPathNFSe() 
               memoLog.Lines.Add('Nome do arquivo.: ' + ACBrNFSeX1.Configuracoes.Arquivos.GetPathNFSe(0,edtEmitCNPJ.Text) + '\' +
                                                        ACBrNFSeX1.NotasFiscais.Items[i].NomeArq);

               if ACBrNFSeX1.Configuracoes.Arquivos.Salvar then
               begin
                    ACBrNFSeX1.NotasFiscais.ImprimirPDF;
                    memoLog.Lines.Add('==> Xml da nota salvo na pasta e com o nome informado acima.');
               end
               else
                   memoLog.Lines.Add('==> Xml da nota não salvo em disco.');

               // Na propriedade XmlNfse temos o XML da NFS-e
               LoadXML(ACBrNFSeX1.NotasFiscais.Items[i].XmlNfse, WBXmlNotas);
          end;
     end;
     
ele até indica que salvou na pasta correta da filial conforme abaixo, mas ele salva na pasta errada.
salva na pasta do CNPJ da matriz.
já debuguei, mas não achei em que momento ele muda a pasta.

NFS-e Numero....: 5
Cod. Verificacao: 2549BB44A9A19709FF90
Prestador.......: NDS CENTRO AUTOMOTIVO LTDA
Tomador.........: ANTONIO PAULO MANGILI
Nome do arquivo.: D:\MPJSPneus\NFSeLogs\JS_11 Jau\41679536000243\202208\Notas\3522084167953600024356000000000000005-nfse.xml
==> Xml da nota salvo na pasta e com o nome informado acima.
Arquivo Carregado de: 3522084167953600024356000000000000005-nfse.xml
 

 

se alguem puder me ajudar fico grato.

Paulinho

  • Consultores
  • Solution
Postado

Bom dia Paulo,

A procedure responsável por salvar o XML da NFS-e é esta:

procedure TACBrNFSeXProvider.SalvarXmlNfse(aNota: TNotaFiscal);
var
  aPath, NomeArq: string;
  aConfig: TConfiguracoesNFSe;
begin
  aConfig := TConfiguracoesNFSe(FAOwner.Configuracoes);
  aPath := aConfig.Arquivos.GetPathNFSe;

  NomeArq := TACBrNFSeX(FAOwner).GetNumID(aNota.NFSe) + '-nfse.xml';
  aNota.NomeArq := PathWithDelim(aPath) + NomeArq;
  aNota.Confirmada := True;

  if FAOwner.Configuracoes.Arquivos.Salvar then
    TACBrNFSeX(FAOwner).Gravar(NomeArq, aNota.XmlNfse);
end;

A linha que defini o Path onde ele vai ser salvo é:

  aPath := aConfig.Arquivos.GetPathNFSe;

Note que o GetPathNFSe esta sem os parâmetros.

Acredito a alteração a abaixo resolveria o problema, pois quando não informamos os parâmetros o CNPJ utilizado é o do certificado.

  aPath := aConfig.Arquivos.GetPathNFSe(0, aConfig.Geral.Emitente.CNPJ);

 

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Este tópico foi criado há 841 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.