Ir para conteúdo
  • Cadastre-se

dev botao

Tratamento Retorno Provedor Bauhaus - Prefeitura moderna


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 184 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Boa tarde.

Por favor, podem me informar se há algum procedimento diferente que é necessário fazer para pegar o retorno de emissão de NFSe com o provedor Bauhaus?

Com todos os outros provedores que uso faço esta rotina:

AcbrNFSeX.Emitir (sLote);
...
if AcbrNFSeX.WebService.Emite.Sucesso then
begin
  for i := 0 to AcbrNFSeX.NotasFiscais.Count -1 do
  begin
     if AcbrNFSeX.NotasFiscais.Items[i].Confirmada then
     begin
            <Rotinas de gravação da nota confirmada>
     end;
end;

 

Para o Bauhaus não está vindo .. Items[i].Confirmada = True, porque a rotina TACBrNFSeProviderBauhaus.TratarRetornoEmitir não está chamando a rotina  TACBrNFSeXProvider.SalvarXmlNfse onde a propriedade Confirmada é atribuida.

Preciso executar alguma nota rotina para confirmar a emissão?

Postado

Olá Juliomar.

Não está retornando erro.
Está retornando com sucesso, mas não tá passando pela rotina SalvarXmlNfse.

O TACBrNFSeProviderBauhaus.TratarRetornoEmitir só faz a atribuição do número da nota.
Pelo que eu vi em outros provedores é executado mais coisa nessa rotina.
 

image.thumb.png.4a2109f00c2690ac7caebc70723be365.png

  • Consultores
Postado

Boa tarde Ron Brisola,

Chegou a verificar o conteúdo do retorno?

Os provedores que retornam o XML da nota o TratarRetornoEmitir contem as linhas que vão extrair o XML da nota desse retorno e o salvar em disco, por outro lado os provedores que não retornam é lido somente as informações retornadas.

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

Bom dia Italo.
 

No Response está vindo este json:
 

{"DadosNfse":{"Numero":5025,"Competencia":202408,"DataEmissao":"2024-08-19","Mensagem":"OK! NFS-e INSERIDA COM SUCESSO E MEUISS ATUALIZADO!"}}

 

E o Erros.Count vem vazio.

  • Consultores
  • Solution
Postado

Bom dia @RonBrisola,

A quantidade de erro é zero porque não ocorreu erros, o RPS foi aceito.

O problema é que esse provedor não retorna o XML ou o Json da nota no retorno do envio e sim apenas o numero da nota caso o RPS tenha sido processado com sucesso que é o caso.

Como foi retornado o numero da nota (5025) você pode usar o método ConsultarNFSe informando o numero da nota.

Note que na unit Bauhaus.Provider a procedure: TratarRetornoConsultaNFSeporNumero vai extrair algumas informações da nota, como numero, série, data, entre outras e vai salvar em disco o Json da nota, uma vez que esse provedor se utiliza do Json em vez do XML.

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

Obrigado @Italo Giurizzato Junior

Realmente eu fiz um teste depois fazendo o ConsultarNFSe e trouxe o retorno completo.

Eu achei que poderia haver alguma forma de fazer esse retorno automático, como acontece com os outros provedores, e eu não estava parametrizando o componente corretamente.

No TACBrNFSeX.Emitir tem esta consulta após o envio, mas o ModoEnvio do Bauhaus está ficando definido como meUnitario

  if Configuracoes.Geral.ConsultaLoteAposEnvio and
     (FWebService.Emite.ModoEnvio = meLoteAssincrono) then
  begin
    if (FWebService.Emite.Protocolo <> '') or (FWebService.Emite.NumeroLote <> '') then
    begin
      if FProvider.ConfigGeral.ConsultaSitLote then

 

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

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...