Ir para conteúdo
  • Cadastre-se

dev botao

Mensagem Substituição Nfse Bh.


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

Recommended Posts

Postado

    Boa noite a todos, já uso há algum tempo o componente ACBR para NFe e agora surgiu a necessidade de implantar a NFSe (Serviços) num cliente que fica em Belo Horizonte, consegui sem problemas gerar e consultar uma Nota em homologação. 

   Estou tendo um problema ao tentar substituir uma Nota, talvez até por falta de conhecimento, ao tentar cancelar recebo uma mensagem de erro:

 

 "Belo Horizonte nao permite substituicao de rps"

 

  Andei pesquisando na net e vi que algumas cidades não aceitam o cancelamento ou a substituição de Nota em programas de terceiros, sendo aceito esse processo somente em seus sites.

  Tenten encontrar alguma informação se BH entra nessa lista de cidades e não encontrei, alguem poderia me informar se BH está entre essas cidades ou se essa mensagem é proveniente de algum comando errado que eu enviei ao tentar substituir?

   Desde já agradeço.

   Cesar Augustus

  • Consultores
Postado

Boa noite Cesar,

 

Se ao tentar cancelar uma NFS-e aparece a mensagem dizendo que não é permitido substituição de rps, para mim tem coisa errada no provedor.

 

Primeiro você enviou um pedido de cancelamento e não de substituição.

 

Segundo o cancelamento se refere a uma NFS-e e não ao RPS.

 

Mensagem de rejeição totalmente furada.

 

Favor entrar em contato com o provedor.

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

  Prezado Italo. Desde já agradeço a atenção dada.

  Envio de NFSe é um recurso novo para mim e mesmo já usando o componente para NFe, vi que há alguns conceitos diferentes. O material disponibilizado pela prefeitura de BH não ajuda muito, pode ser que eu esteja fazendo algo errado. Para fazer testes, criei um botão novo que vem no exemplo do ACBR com as seguintes linhas para tentar substituir a NFSe, tem como você verificar se eu estou fazendo algo errado?

 

procedure TfrmDemo_ACBrNFSe.Button2Click(Sender: TObject);
var
 vAux, vNumLote, vNumSubs : String;
 ValorISS: Double;
begin
 if not(InputQuery('Gerar e Enviar Lote', 'Numero do RPS', vAux))
  then exit;
 
 if not(InputQuery('Gerar e Enviar Lote', 'Numero do Lote', vNumLote))
  then exit;
 
 if not(InputQuery('Numero a ser substituido', 'Nº Substituição', vNumSubs))
  then exit;
 
 ACBrNFSe1.NotasFiscais.Clear;
 
// GerarNFSe(vAux, True, vNumSubs);
 
 ACBrNFSe1.NotasFiscais.Clear;
 
 with ACBrNFSe1 do
  begin
   NotasFiscais.NumeroLote:='2';
   NotasFiscais.Transacao := True;
 
   with NotasFiscais.Add.NFSe do
    begin
     IdentificacaoRps.Numero := FormatFloat('#########0', StrToInt(vAux));
 
     IdentificacaoRps.Serie := 'UNICA';
 
     IdentificacaoRps.Tipo := trRPS;
 
     DataEmissao := Date;
 
     NaturezaOperacao := noTributacaoNoMunicipio;
 
     RegimeEspecialTributacao := retNenhum;
 
     // TnfseSimNao = ( snSim, snNao );
     OptanteSimplesNacional := snNao;
 
     // TnfseSimNao = ( snSim, snNao );
     IncentivadorCultural := snNao;
 
     Producao := snNao;
 
     // TnfseStatusRPS = ( srNormal, srCancelado );
     Status := srNormal;
 
     OutrasInformacoes := 'Pagamento a Vista';
 
     RpsSubstituido.Numero := FormatFloat('#########0', StrToFloat(vNumSubs));
     RpsSubstituido.Serie  := 'UNICA';
     // TnfseTipoRPS = ( trRPS, trNFConjugada, trCupom );
     RpsSubstituido.Tipo   := trRPS;
 
     Servico.Valores.ValorServicos          := 100;
     Servico.Valores.ValorDeducoes          := 0.00;
     Servico.Valores.ValorPis               := 0.00;
     Servico.Valores.ValorCofins            := 0.00;
     Servico.Valores.ValorInss              := 0.00;
     Servico.Valores.ValorIr                := 0.00;
     Servico.Valores.ValorCsll              := 0.00;
 
     Servico.Valores.IssRetido              := stNormal;
     Servico.Valores.ValorIssRetido         := 0.00;
 
     Servico.Valores.OutrasRetencoes        := 0.00;
     Servico.Valores.DescontoIncondicionado := 0.00;
     Servico.Valores.DescontoCondicionado   := 0.00;
 
     Servico.Valores.BaseCalculo := 100;
 
     Servico.Valores.Aliquota    := 3;
 
     ValorISS := Servico.Valores.BaseCalculo * Servico.Valores.Aliquota;
 
 
     Servico.Valores.ValorIss       := RoundTo5(ValorISS, -2);
 
     Servico.Valores.ValorLiquidoNfse := Servico.Valores.ValorServicos -
                                         Servico.Valores.ValorPis -
                                         Servico.Valores.ValorCofins -
                                         Servico.Valores.ValorInss -
                                         Servico.Valores.ValorIr -
                                         Servico.Valores.ValorCsll -
                                         Servico.Valores.OutrasRetencoes -
                                         Servico.Valores.ValorIssRetido -
                                         Servico.Valores.DescontoIncondicionado -
                                         Servico.Valores.DescontoCondicionado;
 
     Servico.ItemListaServico         := '17.12';
 
     Servico.CodigoTributacaoMunicipio := '171200188';
     Servico.Discriminacao             := 'discriminacao';
 
     Servico.CodigoMunicipio := edtCodCidade.Text;
 
     Servico.ExigibilidadeISS := exiExigivel;
 
     Servico.CodigoPais := 1058; // Brasil
     Servico.MunicipioIncidencia := StrToIntDef(edtCodCidade.Text, 0);
 
     with Servico.ItemServico.Add do
      begin
       Descricao     := 'SERVICO 1';
       Quantidade    := 1;
       ValorUnitario := 100.00;
      end;
 
     Prestador.Cnpj               := edtEmitCNPJ.Text;
     Prestador.InscricaoMunicipal := edtEmitIM.Text;
 
 
    PrestadorServico.Endereco.CodigoMunicipio := edtCodCidade.Text;
     PrestadorServico.RazaoSocial := edtEmitRazao.Text;
 
     Tomador.IdentificacaoTomador.CpfCnpj            := '99999999000191';
     Tomador.IdentificacaoTomador.InscricaoMunicipal := '1733160024';
 
     Tomador.RazaoSocial := 'INSCRICAO DE TESTE';
 
     Tomador.Endereco.Endereco        := 'RUA PRINCIPAL';
     Tomador.Endereco.Numero          := '100';
     Tomador.Endereco.Complemento     := 'APTO 11';
     Tomador.Endereco.Bairro          := 'CENTRO';
     Tomador.Endereco.CodigoMunicipio := edtCodCidade.Text;
     Tomador.Endereco.UF              := edtEmitUF.Text;
     Tomador.Endereco.CEP             := edtEmitCEP.Text;
 
//Provedor Equiplano é obrigatório o pais e IE
     Tomador.Endereco.xPais           := 'BRASIL';
     Tomador.IdentificacaoTomador.InscricaoEstadual := '123456';
 
     Tomador.Contato.Telefone := '1122223333';
     Tomador.Contato.Email    := '[email protected]';
 
    end;
 end;
 
 ACBrNFSe1.Enviar(vNumLote);
 
 ACBrNFSe1.NotasFiscais.Clear;
 
end;
 
  • Consultores
Postado

Bom dia Castro,

 

Primeiro, ao postar uma rotina ou fragmento dela, por favor post como anexo, a sua postagem vai ficar mais curta.

 

Segundo, vamos a alguns conceitos (segundo o meu entendimento):

 

Após emitir uma NFS-e, caso algo esteja errado, podemos tomar duas atitudes:

 

1. Cancelar; (a nota foi emitida para o tomador errado)

2. Substituir; (a nota foi emitida com o valor errado, neste caso a primeira nota será substituída pela segunda com o valor correto)

 

O componente possui os comandos para emitir e cancelar, mas não tem o de Substituir, uma vez que não são todos os provedores que disponibilizam essa funcionalidade.

 

Neste caso havendo a necessidade de substituir uma nota, cancela-se a primeira e emite em seguida uma segunda com os dados corretos.

 

Para que o provedor saiba que esse segundo RPS esta substituindo o anterior, temos que gerar o grupo <RpsSubstituido> informando o Numero, Serie e Tipo

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, bom dia. Obrigado pela dica quanto à enviar um anexo, o farei da próxima vez.

   Consegui cancelar em Belo Horizonte, mas só passando a opção de código cancelamento = 2 (serviço não concluído), quando vou gerar uma NFSe, se eu gerar o grupo <RpsSubstituido> informando o Numero, Serie e Tipo ele me retorna a mensagem  "Belo Horizonte nao permite substituicao de rps".

   Será que belo horizonte não aceita passar esse grupo por programas de terceiros?

  Grato

  • Solution
Postado

  Imagino que seja isso mesmo, infelizmente a documentação fornecida por eles deixa um pouco distorcido esse tipo de informação. 

  Obrigado Italo. 

  Paz e Sucessos!!!

  • 9 meses depois ...
Postado (editado)

Boa tarde,

 

Alguém conseguiu fazer a substituição de Nota para Belo Horizonte ?

 

O ACBRNFse retorna a tela em branco conforme a imagem em anexo. O Demo ocorre a mesma coisa

Editado por andmi
  • Este tópico foi criado há 3473 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.