Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Olá colegas desenvolvedores.

Consigo gerar, enviar, consultar e retornar com a NFS-e de Campo Grande/MS.
No momento não consigo cancelar.
Ocorre um erro sem mensagem.
Estou usando:
  ACBrNFSe1.CancelarNFSe(CódigoDoCancelamento, NúmeroDaNFSe, MotivoDoCancelamento, NúmeroDoLote);
E o conteúdo é:
  ACBrNFSe1.CancelarNFSe('2', 3927, 'SERVIÇO NÃO CONCLUÍDO', 19);

É isso mesmo?

Obrigado.

 

  • Curtir 1
  • Moderadores
Postado
21 minutos atrás, anderson.mendonca disse:

Ocorre um erro sem mensagem.

Configure o componente pra gravar os arquivos de envio e retorno e analise o XML retornado pelo webservice.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

  • Consultores
Postado

Boa tarde Anderson,

A definição do método cancelar é:

    function CancelarNFSe(const ACodigoCancelamento: String;
                          const ANumeroNFSe: String = '';
                          const AMotivoCancelamento: String = '';
                          const ANumLote: String = ''): Boolean;
 

portanto a chamada esta correta.

Uma dica: atribua o valor True a propriedade de configuração Configuracoes.WebServices.Salvar, desta forma será salvo os arquivos soap tanto de envio quanto de retorno.

De posse desses arquivos as vezes fica fácil de descobrir o que esta ocorrendo.

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

  • Moderadores
Postado

Veja que retorna um erro mas em formato de XML inválido por isso o ACBr não consegue ler o conteúdo pra exibir a mensagem:

Citar

<?xml version="1.0" encoding="UTF-8"?>ERRO VALIDACAO XSD: (400)error: org.xml.sax.SAXParseException: cvc-type.3.1.3: The value '' of element 'CodigoVerificacao' is not valid. Linha : 1 Coluna: 569

 

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado
47 minutos atrás, Italo Jurisato Junior disse:

Boa tarde Anderson,

A definição do método cancelar é:

    function CancelarNFSe(const ACodigoCancelamento: String;
                          const ANumeroNFSe: String = '';
                          const AMotivoCancelamento: String = '';
                          const ANumLote: String = ''): Boolean;
 

portanto a chamada esta correta.

Uma dica: atribua o valor True a propriedade de configuração Configuracoes.WebServices.Salvar, desta forma será salvo os arquivos soap tanto de envio quanto de retorno.

De posse desses arquivos as vezes fica fácil de descobrir o que esta ocorrendo.

Valeu pela dica @Italo Jurisato Junior.

3 minutos atrás, BigWings disse:

Veja que retorna um erro mas em formato de XML inválido por isso o ACBr não consegue ler o conteúdo pra exibir a mensagem:

 

Ok. Mas continuo sem saber o que fazer. O que me recomenda?

  • Consultores
Postado

Anderson,

Vamos a mensagem retornada.

The value '' of element 'CodigoVerificacao' is not valid.

Ela diz que o valor '' (string vazia) do elemento CodigoVerificacao não é valido.

Se você abrir o arquivo de pedido de cancelamento vai notar que existe uma tag chamada CodigoVerificacao e ela esta vazia, ou seja, não contem o código de verificação da nota que você deseja cancelar.

Esse provedor existe essa informação no cancelamento.

Logo teremos que alterar a chamada do método Cancelar de tal forma que seja possível passar essa informação.

Vou fazer essa alteração e aviso quando estiver disponível.

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

Anderson,

Vamos a mensagem retornada.

The value '' of element 'CodigoVerificacao' is not valid.

Ela diz que o valor '' (string vazia) do elemento CodigoVerificacao não é valido.

Se você abrir o arquivo de pedido de cancelamento vai notar que existe uma tag chamada CodigoVerificacao e ela esta vazia, ou seja, não contem o código de verificação da nota que você deseja cancelar.

Esse provedor existe essa informação no cancelamento.

Logo teremos que alterar a chamada do método Cancelar de tal forma que seja possível passar essa informação.

Vou fazer essa alteração e aviso quando estiver disponível.

Obrigado @Italo Jurisato Junior.

Eu nunca saberia como resolver isso.

Uma dúvida: Por que os provedores não padronizam suas regras de negócio?

Já pensou como seria muito mais fácil se a NFSe fosse padrão nacional como a NFe?

Obrigado a todos pelas respostas e pelos conselhos.

 

  • Consultores
Postado

Anderson,

Favor atualizar os fontes e faça novos testes.

Lembre-se que agora o CancelarNFSe tem um parâmetro a mais.

    function CancelarNFSe(const ACodigoCancelamento: String;
                          const ANumeroNFSe: String = '';
                          const AMotivoCancelamento: String = '';
                          const ANumLote: String = '';
                          const ACodigoVerificacao: string = ''): Boolean;
 

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

Anderson,

Favor atualizar os fontes e faça novos testes.

Lembre-se que agora o CancelarNFSe tem um parâmetro a mais.

    function CancelarNFSe(const ACodigoCancelamento: String;
                          const ANumeroNFSe: String = '';
                          const AMotivoCancelamento: String = '';
                          const ANumLote: String = '';
                          const ACodigoVerificacao: string = ''): Boolean;
 

Obrigado @Italo Jurisato Junior.
Já te respondo...

  • Curtir 1
Postado
2 horas atrás, Italo Jurisato Junior disse:

Anderson,

Favor atualizar os fontes e faça novos testes.

Lembre-se que agora o CancelarNFSe tem um parâmetro a mais.

    function CancelarNFSe(const ACodigoCancelamento: String;
                          const ANumeroNFSe: String = '';
                          const AMotivoCancelamento: String = '';
                          const ANumLote: String = '';
                          const ACodigoVerificacao: string = ''): Boolean;
 

@Italo Jurisato Junior, atualizei o ACBr, copiei as pastas Schemas e ArqIni da pasta \Exemplos\ACBrDFe\ACBrNFSe para a minha pasta e continua o mesmo resultado.

 

Erro ao tentar cancelar NFSe.png

3927-can.xml 3927-can-soap.xml 3927-ped-can.xml 3927-ped-can-soap.xml 3927-can - retornado.xml

  • Moderadores
Postado

Então rebobina a fita e vamos começar por algo simples e que nós também temos acesso

o exemplo do SVN. pega ele e executa com ele a sua situação. dai depois repassa o passo a passo e também as config

com isso temos algo pra partir

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

@Italo Jurisato Junior, dentro do assunto, aproveito pra informar que, quando envio o arquivo, ao invés de retornar True ou False, e eu ter condição de pegar o resultado e trabalhar em cima dele, o RPS chega no webservice, se torna NFS-e mas eu só fico sabendo se mandar consultar.
O programa é interrompido sem nenhuma mensagem de retorno após executar o envio.
Será que o webservice deles é assíncrono?
Tem lógica minha pergunta?

 

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

Bom dia Anderson,

Acho que já sei qual é o problema.

Fiz uma alteração e enviei para o repositório, favor atualizar os fontes e faça novos testes.

@Italo Jurisato Junior, atualizei o ACBr, copiei as pastas Schemas e ArqIni, gerei no meu aplicativo e continua o mesmo erro.
Em seguida, fiz o teste no exemplo do ACBr e ocorreu o mesmo resultado.

 

  • Consultores
Postado

Boa tarde Anderson,

Acredito que esteja ocorrendo dois assuntos simultâneos nessa postagem.

Pelo tópico inicial o seu problema é o cancelamento, vamos então primeiro tratar desse problema.

Com a ultima alteração que fiz ainda esta ocorrendo problema no cancelamento?

Gostaria de ver os XMLs gerados.

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
1 hora atrás, Italo Jurisato Junior disse:

Boa tarde Anderson,

Acredito que esteja ocorrendo dois assuntos simultâneos nessa postagem.

Pelo tópico inicial o seu problema é o cancelamento, vamos então primeiro tratar desse problema.

Com a ultima alteração que fiz ainda esta ocorrendo problema no cancelamento?

Gostaria de ver os XMLs gerados.

@Italo Jurisato Junior, você tem razão. Desculpe. Eu me empolguei.
Vamos lá.
 

Primeira mensagem de erro.jpg

Segunda mensagem de erro.jpg

3927-can.xml 3927-can_.xml 3927-can-soap.xml 3927-ped-can.xml 3927-ped-can-soap.xml

Postado
Em 18/09/2020 at 17:36, Italo Jurisato Junior disse:

Anderson,

Tinha mais algumas alterações a serem feitas.

Por favor atualize e faça novos testes.

@Italo Jurisato Junior, atualizei o ACBr mas continua o mesmo resultado. São as mesmas telas dos posts anteriores.
Em anexo, os novos arquivos para análise.

 

3927-can.xml 3927-can-soap.xml 3927-ped-can.xml 3927-ped-can-soap.xml

  • Consultores
Postado

Boa tarde Anderson,

Chegou a fazer testes com o programa exemplo?

Notou que existe agora dois botão para realizar o cancelamento?

Um desses botões é necessário carregar o XML da NFS-e, já o outro você informa todos os dados para realizar o cancelamento.

Sugiro testar com esse botão novo, onde não precisa carregar o XML da NFS-e.

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

Boa tarde Anderson,

Chegou a fazer testes com o programa exemplo?

Notou que existe agora dois botão para realizar o cancelamento?

Um desses botões é necessário carregar o XML da NFS-e, já o outro você informa todos os dados para realizar o cancelamento.

Sugiro testar com esse botão novo, onde não precisa carregar o XML da NFS-e.

Vou testar com o exemplo e te falo daqui a pouco.
Obrigado por responder.

 

  • Curtir 1
Postado
2 horas atrás, Italo Jurisato Junior disse:

Boa tarde Anderson,

Chegou a fazer testes com o programa exemplo?

Notou que existe agora dois botão para realizar o cancelamento?

Um desses botões é necessário carregar o XML da NFS-e, já o outro você informa todos os dados para realizar o cancelamento.

Sugiro testar com esse botão novo, onde não precisa carregar o XML da NFS-e.

@Italo Jurisato Junior, testei o exemplo ACBr a opção "sem XML" e a NFSe foi cancelada.
O problema é que o ACBr não está retornando as informações para que eu possa atualizar a NFSe no sistema.
Pedi ao pessoal da empresa em Campo Grande/MS entrar no site da prefeitura pra verificar e segue imagem em anexo.

Envio todos os arquivos para análise.
Se eu estiver enviado arquivos desnecessários, me avise e já peço desculpas.

 

NFSe cancelada no site da prefeitura.jpg

Retorno cancelamento 1.jpg

Retorno cancelamento 2.jpg

23952453-con-lot.xml 23952453-con-lot-soap.xml 23952453-lista-nfse.xml 23952453-lista-nfse-soap.xml 3927-can.xml 3927-can-soap.xml 3927-ped-can.xml 3927-ped-can-soap.xml 3927-can.xml 3927NF-nfse.xml

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