Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Olá.

 

Utilizo o servidor Ábaco (Cachoeiro de Itapemirim, ES) e, ao tentar cancelar uma NFSe gerada dentro do meu sistema, exibe a mensagem de Erro não especificado.

 

O erro ocorre na linha 1183 da unit ACBrNFSeUtil.pas.

signedKey := xmldsig.sign(dsigKey, $00000002);

O XML que estou carregando segue em anexo.

 

Achei estranho que nesse trecho de código (linhas 1536 a 1545 de ACBrNFSeWebServices.pas):

 case FProvedor of
  proSaatri: URISig := 'Cancelamento_' + TNFSeCancelarNfse(Self).FCnpj;
  proIssIntel,
  proISSNet: begin
              URISig := '';
              URIRef := 'http://www.w3.org/TR/2000/REC-xhtml1-20000126/';
             end;
 else        URISig := 'pedidoCancelamento_' + TNFSeCancelarNfse(Self).FCnpj +
                    TNFSeCancelarNfse(Self).FIM + TNFSeCancelarNfse(Self).FNumeroRPS;
 end;

As strings de CNPJ, IM e Número RPS estão vazias (não foi feita qualquer alteração no ACBr.

 

Agradeço desde já.

000000099-env-lot.xml

Postado

Olá.

 

Ítalo, o erro continua, mas eu percebi que estava tentando cancelar a NFSe com o XML errado, pois depois das alterações que você mandou, os campos CNPJ, IM e CodigoMunicipio estavam vindo em branco.

 

O xml correto segue em anexo.

 

Com este arquivo, os campos supracitados são preenchidos corretamente, mas o erro "Erro Não Especificado" continua.

 

Grato!

DB12E17E2A3DD606D28D9E0D431029C9-lista-nfse.xml

  • Consultores
Postado

Boa noite Neo,

 

Desculpe pela demora em responder.

 

Mas este arquivo em anexo trata-se do retorno da consulta, que contem uma lista de NFSe.

 

Essa lista pode ter uma ou mais notas.

 

Você deve ler o arquivo que contem o nome:

 

<numNota>-nfse.xml

 

e não o <num>-lista-nfse.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

Italo,

 

Estou tentando realizar o cancelamento de notas hoje, depois que atualizei os fontes, e o sistema esta enviando o NUMERO do RPS , ao inves do numero da NFSE, no XML do cancelamento, e retorna o erro E78, nota inexistente na base.

 

Estou utilizando o provedor GINFES.

Postado (editado)

Estou utilizando a chamada   ACBrNFSe1.CancelarNFSe('1');

 

Qual a finalidade desta chamada  , o parametro carregaProps, esta como padrao = True, porem se vc nao passar por esta rotina o sistema cancela, senao ele chama o cancelamento com o numero do RPS e nao da Nota, foi o que percebi.

 

 

unit ACBrNFSeWebServices;

 

CancelarNFSe

if CarregaProps then
 begin
   Self.CancNfse.NumeroRPS       := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.IdentificacaoRps.Numero;
   Self.CancNfse.CNPJ            := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.IdentificacaoPrestador.Cnpj;
   Self.CancNfse.IM              := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.IdentificacaoPrestador.InscricaoMunicipal;
   Self.CancNfse.CodigoMunicipio := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.Endereco.CodigoMunicipio;
 end;

Editado por medreis
  • Consultores
Postado

Boa tarde,

 

A function ACBrNFSe1.CancelarNFSe(sCodigo) onde sCodigo é o codigo de cancelamento da NFSe.

 

Ela requer que você carregue antes o XML da NFSe.

 

Ou você pode utilizar a function abaixo, sem a necessidade de carregar o XML da NFSe:

 

   ACBrNFSe1.WebServices.CancelaNFSe(sCodigo, numNFSe, sCNPJ, sIM, sCodMun);

 

Onde temos:

 

sCodigo = código de cancelamento

numNFSe = numero da NFSe

sCNPJ = CNPJ do prestador de serviço

sIM = Inscrição Municipal do prestador de serviço

sCodMun = Codigo do Municipio do prestador de serviço

 

Todos os 5 parametros são string.
 

  • Curtir 1
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,

 

Do cancelamento OK, minha duvida é para que é utilizado esta , no cancelar onde informamos apenas o codigo, dentro na rotina chama uma outra função , que tem como parametro o carregaProps, que esta como default = TRUE.

 

MInha duvida qual finalizada da função abaixo, sendo que na chamada ACBrNFSe1.CancelarNFSe(sCodigo),   não passamos o parametro CarregaProps, sendo que esta esta como TRUE na outra chamada interna, ou seja ele sempre será TRUE,

 

if CarregaProps then
 begin
   Self.CancNfse.NumeroRPS       := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.IdentificacaoRps.Numero;
   Self.CancNfse.CNPJ            := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.IdentificacaoPrestador.Cnpj;
   Self.CancNfse.IM              := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.IdentificacaoPrestador.InscricaoMunicipal;
   Self.CancNfse.CodigoMunicipio := TACBrNFSe( FACBrNFSe ).NotasFiscais.Items[0].NFSe.PrestadorServico.Endereco.CodigoMunicipio;
 end;

 

 

Obrigado

  • Consultores
Postado

Boa tarde Medreis,

 

A chamada:

 

ACBrNFSe1.CancelarNFSe(sCodigo); pressupõe que o XML da NFSe que pretende-se cancelar foi carregado usando o LoadFromFile.

 

Note que o CancelarNFSe executa uma função definida em ACBrNFSeWebServices chamada CancelaNFSe que possui 2 parametros sendo que o segundo é CarregaProps.

 

É passado para esse parametro o valor True, indicando desta forma que o componente deve se utilizar das propriedades que foram carregadas ao Ler o XML.

 

Note também que em ACBrNFSeWebService temos uma outra função com o mesmo nome, mas esta possui muito mais parametros, parametros estes necessários para efetuar o cancelamento.

 

No meu post #11 eu apresento a sintaxe desta segunda chamada, apesar dela possuir mais parametros, não há necessidade de carregar o XML.

Note também que essa função chama a outra e passa o valor False no segundo parametro, informando que não é para carregar as propriedades, visto que elas foram informadas.

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

  • 1 ano depois...
Postado

Bom dia pessoal, hoje reinstalei o ACBr mas o erro também está ocorrendo.

 

Eu inclusive alterei o modo de cancelamento, mas o erro ocorre no momento que a NFSE/Cancelamento está ocorrendo.

 

No meu caso ocorre no provedor ProvedorGovBR (Contagem).

 

Alguma sugestão?

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