Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Bom dia.

Estive dando uma olhada na rotina de cancelamento da NFSe e me apareceu uma dúvida.

Nas informações de cancelamento, não deveria haver uma propriedade para armazenar se

a NFSe foi cancelada com sucesso ou não?

No XML, nas informações de cancelamento existe a tag, do tipo boolean, "Sucesso".

Vi que atualmente exite apenas uma propriedade que armazena data e hora. Porém, pode ser

que o retorno de sucesso seja "False", ou estou enganado?

Em anexo, o XML de retorno do provedor Betha quanto ao cancelamento, e também o XML da consulta

que o componente faz após o cancelamento.

Também anexei um XML de retorno de erro de cancelamento, onde não há a tag Sucesso, apenas a lista

de mensagens de erro.

Aguardo um retorno, abraço.

XMLs Cancelamento.rar

Rodrigo Cantelli

  • Consultores
Postado

Bom dia Rodrigo,

Você editou os arquivos postados?

O componente consulta a NFSe após a solicitação de cancelamento note que no arquivo de retorno *-comp-nfse-c.xml, logo após os dados da nota vem um grupo chamado: que contem as tags referente ao cancelamento.

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.

Removi informações de CNPJ, CPF e endereços dos arquivos.

Então, eu entendi a parte do cancelamento, mas note que a tag , aparece mesmo

em NFs que não foram canceladas, porém, sem informação.

Existe na , uma subtag , no arquivo que te mandei está "true".

Minha dúvida é: será que ela pode estar com o valor "false"? Ter havido algum problema no cancelamento, e ter

retornado false, e a NF não ter sido cancelada mas ter as tags do grupo preenchidas?

Acredito que a Tag "DataHora" estaria vazia nesse caso né? Aí sim não há necessidade de armazenar a tag "Sucesso".

Não sei se fui claro na dúvida. Mas olhando melhor para os XMLs vejo que talvez não há mesmo a necessidade,

mesmo a tag sucesso sendo "false", daria pra se basear na "DataHora".

Abraço.

Rodrigo Cantelli

Postado

Bom dia,

Estou fazer algumas alterações, quase todas as rotinas do provedor thema estão funcionando, só falta o cancelamento.

o provedor thema exgige que o xml seja assinado antes de enviado para o web service, existe uma propriedade na função GetAssinarXML onde informe se quero assinar ou não o xml de cancelamento certo? porém ao marcar como true, na hora de assinar :

na unit ACBRNFSEUtil na função AssinarXML dá o erro:

if (not xmldoc.loadXML(AXML) )

then raise Exception.Create('Não foi possível carregar o arquivo: '+AXML);

Em anexo estão os arquivos que estão sendo gerados e os que estão retornando.

Alguem Consegue me dar um help? falta só essa rotina para finalizar, agradeço pela atenção

201241-can.xml

201241-can-c.xml

201241-ped-can.xml

201241-ped-can-c.xml

  • Consultores
Postado

Boa tarde Rafael,

Você esta utilizando os novos fontes?

Se sim, por favor poste como anexo os fontes que você realizou as alterações para que sejam incorporadas e disponibilizadas para os demais.

Não esqueça de colocar o seu nome como comentario nas linhas ou trexos alterados por você.

Desta forma fica mais facil ajudarmos.

Desde já muito obrigado.

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

Ítalo,

Esquece o erro que relatei antes, em anexo estão as duas units que alterei, a do provedor thema fiz mais algumas mudanças, todas as rotinas estão funcionando agora, o cancelamento realmente exige assinatura, alterei tambem a unit ACBRNFSEUtil , modifiquei a rotina de assinatura pois antes acontecia o erro que comentei antes, agora tá 100 % nos testes que fiz.

Novamente agradeço a todos do projeto, realmente salvou minha vida

Units.rar

Postado

Boa tarde Rafael.

Dei uma pesquisada por cima, e vi algo que a Thema atende outras cidades também além de São Leopoldo. Não tenho certeza.

Será que estou certo? Se conseguir alguma informação à respeito, adicione no componente ou compartilhe por aqui para que o

Italo adicione.

Abraço!

Rodrigo Cantelli

Postado

Rodrigo,

Sim acredito que atendam outros municípios também, porém a corda tá no pescoço pra são leopoldo, sabe como é cliente, avisando tudo em cima da hora, assim que finalizar o projeto pro cliente começar a emitir a NFS-e vou pesquisar o resto , por enquanto é só pra são leopoldo, mas acredito que pelo padrão abrasf a alteração que fiz na assinatura abrange todo mundo.

Abraço

  • Consultores
Postado

Rafael,

A alteração que você fez na fuction AssinarXML (unit ACBrNFSeUtil) restringe a assinatura para o cancelamento.

Da forma que estava antes era valida para qualquer tipo de ação que o webservice venha exigir uma assinatura.

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

  • 2 semanas depois ...
Postado

Pessoal,

Onde eu consigo baixar essas units da NFSe? Estou com um problema na assinatura da NFSe de Goiânia e vou tentar usar essas units para tentar resolver o problema.

Obrigado.

Postado

Boa noite Marcos,

O seu problema é somente o cancelamento?

O que você esta usando para gerar e enviar o lote de RPS?

Boa noite italojjr,

Eu monto o xml no código delphi mesmo, uso uma dll signer para poder assinar.

O problema é no envio do rps para o webservice.

A questão é que o xml parece estar certo, pois o erro é:

Código: E172

Mensagem: Arquivo enviado com erro na assinatura.

Correção: Acerte a assinatura do arquivo.

Já uso essa forma de montar o xml e a dll signer para assinar outras notas como (BH, Contagem, Teresina, Curitiba).

Creio que a assinatura dessa nota de Goiânia seja diferente das outras que já temos no sistema.

Obrigado.

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