Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

Bom dia,

Estou com um problema em um cliente que gera a NFSe através do servidor da Fiorilli (Fernandópolis).

Utilizo os comandos abaixo:

ACBrNFSe1.Gerar(StrToInt(NumVda));
Sleep(4000);

sNomeArq:= ACBrNFSe1.NotasFiscais.Items[0].NomeArq;
NumNot:= ACBrNFSe1.NotasFiscais.Items[0].NFSe.Numero;
Chave:=  ACBrNFSe1.NotasFiscais.Items[0].NFSe.InfID.ID;
CodVer:= ACBrNFSe1.NotasFiscais.Items[0].NFSe.CodigoVerificacao;
Protocolo:= ACBrNFSe1.NotasFiscais.Items[0].NFSe.Protocolo;

Ocorre que em alguns casos eu recebo o retorno.

E10
RPS já informado
Para essa Inscrição Municipal/CNPJ já existe um RPS informado com o mesmo número, série e tipo

Após essa mensagem se pesquisar a Nota no site a nota esta validada, como faço para fazer uma consulta antes de enviar a nota e caso esteja validada pegar o xml da nfse?

Obrigado

  • Membros Pro
Postado

Bom dia Italo,

O usuário não controla numeração de RPS conforme a variável "NumVda" essa variável e alimentada por um sequencial

ACBrNFSe1.Gerar(StrToInt(NumVda));

 

  • Membros Pro
Postado (editado)

Boa Tarde alexandre,

Envia normalmente, mas as vezes ao enviar um rps ocorre o que falei no começo do post.

Boa Tarde Italo,

O componente é alimentando com a mesma variável conforme abaixo:

procedure TFrmPrincipal.AlimentaComponente(NumVda, _Empresa: String);
var
...

IdentificacaoRps.Numero:= FormatFloat('#########0', StrToInt(NumVda));

O usuário não controla essa numeração!!

Minha duvida é:

Como faço para fazer uma pesquisa antes de enviar o Rps e caso exista o mesmo baixar o xml na nfse?

Editado por Luciano Carvalho
  • Consultores
Postado

Luciano,

Se o numero do RPS é sequencial e controlado pela aplicação e mesmo assim o provedor de vez em quando acusa que já existe um RPS com o mesmo numero, só tem duas respostas para isso:

1. a emissão da nota é feita por duas ou mais maquinas e sua aplicação não esta controlando de forma eficiente a emissão de duas notas ao mesmo tempo.

2. ou existe algum bug na sua aplicação que esta provocando essa duplicidade.

Quanto a consultar existe um método chamado ConsultarNFSePorRPS onde você informa alguns dados referente ao RPS e caso exista uma NFS-e gerada a mesma será retornada.

Os parâmetros do método são:

    function ConsultarNFSeporRps(ANumero, ASerie, ATipo, ACnpj, AInscricaoMunicipal: String;
                                 ASenha: String = ''; AFraseSecreta: String = ''; ARazaoSocial: String = ''): Boolean;

A Senha, FraseSecreta e RazaoSocial depende do provedor, a principio não precisa informar.

 

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

Postado (editado)

Estranho, porque no meu cliente não funciona, fala que o XML está incorreto, e antes do trunk2 estava funcionando normalmente. VocÊ tem os schemas da fiorilli fácil ai?talvez seja isso, vai saber.

Editado por alexandre.soares.sp
  • Membros Pro
Postado

Bom dia Italo,

Digamos que eu enviei o Rps número 17803 e o componente me retornou o xml da NFSe 7093-nfse.xml.

Como que eu pego esse numero 7093 da NFSe no retorno?

 

  • Consultores
Postado

Bom dia Luciano,

Se a consulta for através do método Consultar NFS-e por RPS você pode obter o numero da nota através da seguinte linha:

nNumNota := ACBrNFSe1.WebServices.ConsNfseRps.NFSeRetorno.ListaNfse.CompNfse.Items[X].Nfse.Numero;

Onde X é igual a zero, uma vez que você esta consultando uma NFS-e através de um RPS.

 

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

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