Ir para conteúdo
  • Cadastre-se

dev botao

NFSEX Guarapuava- Ajustes Retorno IPM


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

Recommended Posts

Postado

Italo, estou alterando o IPM.Provider, veja se ok.

procedure TACBrNFSeProviderIPM.TratarRetornoEmitir

1) Mesmo com sucesso no envio, está incluindo um item de mensagem de erro, ajustei da seguinte maneira:

         Response.Sucesso := Response.Erros[0].Codigo ='00001 - Sucesso'; //(Response.Erros.Count = 0);

2) O numero do protocolo para consulta é o codigo de verificacao de autenticidade: 

         Protocolo := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('cod_verificador_autenticidade'), tcStr);

 

Segue para sua análise.

 

IPM.Provider.pas

Postado
5 horas atrás, Italo Giurizzato Junior disse:

Boa tarde Sandro,

Favor atualizar os fontes e faça novos testes.

Deu certo,

outra dúvida, no NFSE antigo eu informava o valor retido do ISS em Servico.Valores.ValorIssRetido, mas aqui na geração da IPM (IPM.GravarXML) pega para preencher a tag 'valor_issrf' o valor de NFSe.Servico.ItemServico[I].ValorIr, creio que não esteja ok? mas não encontrei o campo correto na classe...

    Result[i].AppendChild(AddNode(tcDe2, '#', 'valor_issrf', 1, 15, 0,

                                NFSe.Servico.ItemServico[I].ValorIr, DSC_VISS))

Postado
16 horas atrás, Sandro Felipe Adad disse:

Deu certo,

outra dúvida, no NFSE antigo eu informava o valor retido do ISS em Servico.Valores.ValorIssRetido, mas aqui na geração da IPM (IPM.GravarXML) pega para preencher a tag 'valor_issrf' o valor de NFSe.Servico.ItemServico[I].ValorIr, creio que não esteja ok? mas não encontrei o campo correto na classe...

    Result[i].AppendChild(AddNode(tcDe2, '#', 'valor_issrf', 1, 15, 0,

                                NFSe.Servico.ItemServico[I].ValorIr, DSC_VISS))

ja resolvi...

Postado
22 horas atrás, Italo Giurizzato Junior disse:

Boa tarde Sandro,

Favor atualizar os fontes e faça novos testes.

Precisei efetuar alguns ajustes no metodo de consulta do lote rps, nao estava carregando na response.

if Response.Erros.Count > 0 then
        if Response.Erros[0].Codigo='00001 - Sucesso' then
          Response.Sucesso := True;


      with Response do
      begin
        NumeroNota := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('numero_nfse'), tcInt);
//        SerieNota := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('serie_nfse'), tcInt);
        Data := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('data_nfse'), tcDatVcto);
        Link := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('link_nfse'), tcStr);
        Protocolo := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('cod_verificador_autenticidade'), tcStr);
        Situacao := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('situacao_descricao_nfse'), tcStr);
      end;

IPM.Provider.pas

  • Consultores
Postado

Bom dia Sandro,

Acredito que a usar o valor do campo ValorIr para alimentar a tag <valor_issrf> esta errado, pois segundo o manual essa tag se refere ao Valor do ISS Retino na Fonte.

Já a tag <valor_ir>se refere ao Valor do Imposto de Renda Retido.

Quanto a leitura da tag <situacao_descricao_nfse> e atribuir a propriedade Situacao não vejo como correto, pois essa propriedade nos provedores que seguem a ABRASF o que temos é um código que pode ser: 1, 2, 3 ou 4.

O provedor IPM tem uma tag que retorna o código, <situacao_codigo_nfse>, no caso da nota ter sido emitida retorna 1, e esse código na ABRASF significa que o lote não foi enviado.

Na ABRASF nota emitida ou Lote Processado com Sucesso é 4.

Vamos analisar melhor isso.

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
9 minutos atrás, Italo Giurizzato Junior disse:

Bom dia Sandro,

Acredito que a usar o valor do campo ValorIr para alimentar a tag <valor_issrf> esta errado, pois segundo o manual essa tag se refere ao Valor do ISS Retino na Fonte.

Já a tag <valor_ir>se refere ao Valor do Imposto de Renda Retido.

Quanto a leitura da tag <situacao_descricao_nfse> e atribuir a propriedade Situacao não vejo como correto, pois essa propriedade nos provedores que seguem a ABRASF o que temos é um código que pode ser: 1, 2, 3 ou 4.

O provedor IPM tem uma tag que retorna o código, <situacao_codigo_nfse>, no caso da nota ter sido emitida retorna 1, e esse código na ABRASF significa que o lote não foi enviado.

Na ABRASF nota emitida ou Lote Processado com Sucesso é 4.

Vamos analisar melhor isso.

Concordo com você e a respeito da situação: (tem um campo numérico no retorno sim - ajustado situacao_codigo_nfse).

Situacao := ProcessarConteudoXml(ANode.Childrens.FindAnyNs('nf').Childrens.FindAnyNs('situacao_codigo_nfse'), tcStr);

IPM.Provider.pas

Postado (editado)

Não alterei nada no ACBR, segundo o pessoal da IPM, a tag valor_issrf so deve ser preenchida se houver retenção...então

ajustei isso no meu fonte....

Aproveitando o cancelamento  está funcionando para vocês? testei aqui e retornou o err:

'<?xml version="1.0" encoding="UTF-8"?><a><ListaMensagemRetorno><MensagemRetorno><Codigo></Codigo><Mensagem>{"retorno":{"msg":"Par\u00e2metros inv\u00e1lidos para a requisi\u00e7\u00e3o.","sis":"EST","code":406}}</Mensagem><Correcao></Correcao></MensagemRetorno></ListaMensagemRetorno></a>'

Conferi e os dados enviados no XML me parecem corretos com o layout:

'------=_Part_1_42A341FC'#$D#$A'Content-Type: text/xml; charset=Cp1252; name=12-ped-can.xml'#$D#$A'Content-Transfer-Encoding: binary'#$D#$A'Content-Disposition: form-data; name="12-ped-can.xml"; filename="12-ped-can.xml"'#$D#$A#$D#$A'<nfse><nf><numero>12</numero><serie_nfse>1 </serie_nfse><situacao>C</situacao><observacao>Nota fiscal de servico eletronica emitida indevidamente.</observacao></nf><prestador><cpfcnpj>07493402000114</cpfcnpj><cidade>7583</cidade></prestador></nfse>'#$D#$A'------=_Part_1_42A341FC--'#$D#$A

mesmo retornando com erro o response marca como sucesso....

 

Editado por Sandro Andre Reghelin
Postado
23 minutos atrás, Sandro Andre Reghelin disse:

Não alterei nada no ACBR, segundo o pessoal da IPM, a tag valor_issrf so deve ser preenchida se houver retenção...então

ajustei isso no meu fonte....

Aproveitando o cancelamento  está funcionando para vocês? testei aqui e retornou o err:

'<?xml version="1.0" encoding="UTF-8"?><a><ListaMensagemRetorno><MensagemRetorno><Codigo></Codigo><Mensagem>{"retorno":{"msg":"Par\u00e2metros inv\u00e1lidos para a requisi\u00e7\u00e3o.","sis":"EST","code":406}}</Mensagem><Correcao></Correcao></MensagemRetorno></ListaMensagemRetorno></a>'

Conferi e os dados enviados no XML me parecem corretos com o layout:

'------=_Part_1_42A341FC'#$D#$A'Content-Type: text/xml; charset=Cp1252; name=12-ped-can.xml'#$D#$A'Content-Transfer-Encoding: binary'#$D#$A'Content-Disposition: form-data; name="12-ped-can.xml"; filename="12-ped-can.xml"'#$D#$A#$D#$A'<nfse><nf><numero>12</numero><serie_nfse>1 </serie_nfse><situacao>C</situacao><observacao>Nota fiscal de servico eletronica emitida indevidamente.</observacao></nf><prestador><cpfcnpj>07493402000114</cpfcnpj><cidade>7583</cidade></prestador></nfse>'#$D#$A'------=_Part_1_42A341FC--'#$D#$A

mesmo retornando com erro o response marca como sucesso....

 

Pra fim funcionou o cancelamento no programa de exemplo, so nao esta carregando o response.

Eu informei o numero, serie, motivo.

21-ped-can.xml 21-ped-can-soap.xml 21-can.xml 21-can-soap.xml

Postado (editado)
9 minutos atrás, Sandro Felipe Adad disse:

Pra fim funcionou o cancelamento no programa de exemplo, so nao esta carregando o response.

Eu informei o numero, serie, motivo.

21-ped-can.xml 251 B · 0 downloads 21-ped-can-soap.xml 485 B · 0 downloads 21-can.xml 653 B · 0 downloads 21-can-soap.xml 666 B · 0 downloads

agora fiquei vendido me parecem iguais os arquivos: veja

 

12-can.xml 12-can-soap.xml 12-ped-can.xml 12-ped-can-soap.xml

Editado por Sandro Andre Reghelin
  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora ACBr Pro

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

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