Ir para conteúdo
  • Cadastre-se

dev botao

Composiçao arquivo '-nfse.xml'


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

Recommended Posts

  • Moderadores

Boa noite,

Ao disparar a rotina ConsultarNFSeporRps de forma casual, está me retornando o xml da nfse com o seguinte nome de arquivo: "35180256000000000006487-nfse.xml".

Porém lá no envio do lote de RPS, depois que envio o mesmo, disparo a rotina ConsultarNFSeporRps também. E ao final, pego a chave da nota utilizando o comando: ACBrNFSe1.NumID[DMACBr.ACBrNFSe1.NotasFiscais.Items[0].NFSe]. Nesse comando, a chave retornada é '351802xxxxxxxxxxxxxx56000000000006487' onde o 'x' é o cnpj do emissor. Eu faço uso dessa chave posteriormente para localizar o xml.

O problema é que a rotina ConsultarNFSeporRps não grava o cnpj no nome do xml.

Então, analisando os fontes no arquivo ACBrNFse.pas, encontrei a seguinte situação:

 

function TACBrNFSe.GetNumID(ANFSe: TNFSe): String;
var
  NumDoc, xCNPJ: String;
begin
  if ANFSe = nil then
    raise EACBrNFSeException.Create('Não foi informado o objeto TNFSe para gerar a chave!');

  if ANFSe.Numero = '' then
    NumDoc := ANFSe.IdentificacaoRps.Numero
  else
    NumDoc := ANFSe.Numero;

  if ANFSe.PrestadorServico.IdentificacaoPrestador.Cnpj = '' then
    xCNPJ := ANFSe.Prestador.Cnpj
  else
    xCNPJ := ANFSe.PrestadorServico.IdentificacaoPrestador.Cnpj;

  if Configuracoes.Arquivos.NomeLongoNFSe then
    Result := GerarNomeNFSe(Configuracoes.WebServices.UFCodigo,
                            ANFSe.DataEmissao,
                            OnlyNumber(xCNPJ),
                            StrToInt64Def(NumDoc, 0))
  else
    Result := NumDoc + ANFSe.IdentificacaoRps.Serie;
end;

O provedor para o qual estou emitindo é o IssDSF. E tanto dentro do xml do rps quando da nfse, não tem o cnpj do emissor. Fazendo com que realmente o cnpj não faça parte da composição do nome do xml.

 

Alguém pode dar uma ideia da forma como o componente pode ser alterado internamente para contornar a situação?

Cleber C. Ferreira
Analista de Sistemas e Consultor
Email e
Skype: [email protected]
Formiga-MG

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Cleber,

Se não me falha a memória existe uma propriedade de configuração que contem o CNPJ do emitente,

Logo se depois do IF que você destacou a variável xCNPJ continua com o valor vazio, poderíamos então alimentar a mesma com o que esta na configuração do componente.

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

Link para o comentário
Compartilhar em outros sites

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