Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 23-01-2026 em todas as áreas

  1. Exemplos (casos clássicos fiscais) RoundABNT(2.345, 2); // 2.34 RoundABNT(2.355, 2); // 2.36 RoundABNT(1.005, 2); // 1.00 RoundABNT(1.015, 2); // 1.02 RoundABNT(10.125, 2); // 10.12 RoundABNT(10.135, 2); // 10.14 Por que isso é ideal para ICMS / financeiro? Round() do Delphi não segue ABNT Double introduz erro binário Currency evita erro de ponto flutuante Essa função bate com auditoria fiscal e contábil A regra de arredondamento da ABNT (NBR 5891) é basicamente o arredondamento bancário (round half to even): function RoundABNT(const AValue: Currency; Decimals: Integer): Currency; var Factor : Currency; Temp : Currency; IntPart : Integer; Fraction : Currency; SignVal : Integer; begin if AValue < 0 then SignVal := -1 else SignVal := 1; Factor := 1; while Decimals > 0 do begin Factor := Factor * 10; Decimals := Decimals - 1; end; Temp := AValue * Factor; IntPart := Trunc(Temp); Fraction := Abs(Temp - IntPart); if Fraction > 0.5 then Result := (IntPart + SignVal) / Factor else if Fraction < 0.5 then Result := IntPart / Factor else begin // Fraction = exatamente 0.5 if (Abs(IntPart) mod 2) <> 0 then Result := (IntPart + SignVal) / Factor else Result := IntPart / Factor; end; end;
    2 pontos
  2. Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.
    1 ponto
  3. Grato por responder Daniel Simões. Sim amigo, todo aprendizado partiu dos demos existentes. A única diferença é que como não sou muito bom com as classes fiz minha próprias funções.
    1 ponto
  4. 1 ponto
  5. Esse prazo foi dado para todas as prefeituras q utilizam Issnet Acredito que será adiado mais uma vez
    1 ponto
  6. 1 ponto
  7. No caso o modelo para enviar o .INI do serviço ficou sendo o padrão nacional? Pois, pelo que entendi a Coplan criou um serviço de repassar o xml para o portal nacional.
    1 ponto
  8. 1 ponto
  9. Bom dia, O que eu fiz, foi apagar a pasta dos Schemas e não só sobregravar. Gratidão a todos que responderam.
    1 ponto
  10. A correção do tópico abaixo resolve esse problema!
    1 ponto
  11. Para a Betha o código que tem no SVN está funcionando para a emissão! bastando informar corretamente os dados após você pega a chave DPS e consulta ACBrNFSeX1.ConsultarDPSPorChave(xChaveDPS); até ele retornar que está processado com sucesso e após consulta com a Chave da NFSe que ele vai retornar o xml da NFSe ACBrNFSeX1.ConsultarNFSePorChave(xChaveNFSe);
    1 ponto
  12. Certificado estava ok. Voltou a funcionar, fiz uma verificação e descobri, o servidor onde estava instalado o serviço que gerencia os boletos não estava resolvendo nomes, algum problema no DNS, após reiniciar voltou. É cada uma que acontece. Muito obrigado por ajudar.
    1 ponto
  13. Verifique a série. No meu caso, o erro ocorreu no início porque o campo estava como “F”, porém no Provedor Nacional a série deve ser numérica. Com a série alfanumérica, a montagem da chave fica incorreta, pois passa a ter 41 caracteres numéricos, quando o correto são 42.
    1 ponto
  14. @Milton Campanhã, não posso acreditar numa insanidade dessas. Isso não faz sentido nenhum. parece logica de bebado kkkk.
    1 ponto
  15. Seu ACBrNFSeXServicos.ini está desatualizado (possivelmente terá que atualizar todo o AcBR), ou tem alguma copia dele no diretório do seu executável que não está atualizado.
    1 ponto
  16. O problema era causado pelo codigo nacional do serviço prestado que estava errado O codigo CORRETO era 08.01 .Anteriormente estava 080101 (ERRADO!) Sim, é um webservice mal feito este da IssNet que retorna um erro generico "s:Client - Error" para um valor errado no XML da nota. Mas o que importa é que foi resolvido graças a ajuda do colega @nenelvida Valeu demais Colega! Peço a algum admin que troque o titulo do topico pois ele se refere ao erro anterior que era causado quando a opção de apiProria está ativo. Sugiro algo como NFSE Goiânia: Provedor IssNet retorna "Erro de Conexão: s:Client - Error; Correção:"
    1 ponto
  17. https://forum.nfsebrasil.com.br/t/e999-erro-nao-catalogado/1004/5 lá tem bastante informação do pessoal que tá passando perrengue que nem a gente kkkk
    1 ponto
  18. Era isso sim, resolvi aqui Obrigado @Daniel Simoes
    1 ponto
  19. Estou com o mesmo problema, veio com 18, autorizado50260105861238000125550010003425821832327562.xml Segue xml para analise, acredito que deveria fazer um tratamento para quando nao achar, estivesse fora da faixa, não apresentar erro, deixar como nenhum ou nao importar o grupo
    1 ponto
  20. Mesma coisa aqui @Italo Giurizzato Junior continuar utilizando a procedure TACBrNFSeProviderABRASFv2.TratarRetornoEmitir e gera "access violation" ao ler a tag NumNFSe := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('Numero'), tcStr); Se utilizar o padrão nacional TACBrNFSeProviderPadraoNacional.TratarRetornoEmitir gera "access violation" no parse pois o retorno um xml Com relação ao erro na sequencia do xml de envio "Unexpected tag in XML input: CodigoNbs ", consegui implementado a geração do serviço direto na classe TNFSeW_Tinus203; function TNFSeW_Tinus203.GerarServico: TACBrXmlNode; var Item: string; begin Result := CreateElement('Servico'); Result.AppendChild(GerarValores); Result.AppendChild(AddNode(tcStr, '#20', 'IssRetido', 1, 1, NrOcorrIssRetido, FpAOwner.SituacaoTributariaToStr(NFSe.Servico.valores.IssRetido), DSC_INDISSRET)); Result.AppendChild(AddNode(tcStr, '#21', 'ResponsavelRetencao', 1, 1, NrOcorrRespRetencao, FpAOwner.ResponsavelRetencaoToStr(NFSe.Servico.ResponsavelRetencao), DSC_INDRESPRET)); Item := FormatarItemServico(NFSe.Servico.ItemListaServico, FormatoItemListaServico); Result.AppendChild(AddNode(tcStr, '#29', 'ItemListaServico', 1, 8, NrOcorrItemListaServico, Item, DSC_CLISTSERV)); Result.AppendChild(AddNode(tcStr, '#30', 'CodigoCnae', 1, 9, NrOcorrCodigoCNAE, OnlyNumber(NFSe.Servico.CodigoCnae), DSC_CNAE)); Result.AppendChild(AddNode(tcStr, '#31', 'CodigoTributacaoMunicipio', 1, 20, NrOcorrCodTribMun_1, NFSe.Servico.CodigoTributacaoMunicipio, DSC_CSERVTRIBMUN)); Result.AppendChild(AddNode(tcStr, '#32', 'CodigoNbs', 1, 9, NrOcorrCodigoNBS, NFSe.Servico.CodigoNBS, DSC_CMUN)); Result.AppendChild(AddNode(tcStr, '#33', 'Discriminacao', 1, 2000, NrOcorrDiscriminacao_1, StringReplace(NFSe.Servico.Discriminacao, Opcoes.QuebraLinha, FpAOwner.ConfigGeral.QuebradeLinha, [rfReplaceAll]), DSC_DISCR)); Result.AppendChild(AddNode(tcStr, '#34', 'CodigoMunicipio', 1, 7, NrOcorrCodigoMunic_1, OnlyNumber(NFSe.Servico.CodigoMunicipio), DSC_CMUN)); Result.AppendChild(GerarCodigoPaisServico); Result.AppendChild(AddNode(tcInt, '#36', 'ExigibilidadeISS', NrMinExigISS, NrMaxExigISS, NrOcorrExigibilidadeISS, StrToInt(FpAOwner.ExigibilidadeISSToStr(NFSe.Servico.ExigibilidadeISS)), DSC_INDISS)); Result.AppendChild(AddNode(tcInt, '#38', 'MunicipioIncidencia', 7, 7, NrOcorrMunIncid, NFSe.Servico.MunicipioIncidencia, DSC_MUNINCI)); Result.AppendChild(AddNode(tcStr, '#39', 'NumeroProcesso', 1, 30, NrOcorrNumProcesso, NFSe.Servico.NumeroProcesso, DSC_NPROCESSO)); Result.AppendChild(GerarListaItensServico); end;
    1 ponto
  21. Para mim está funcionando na emissão porem assincrono então depois de 1 minuto eu uso a opção de consultar NFSe por RPS e pego os dados da nota e xml, caso de erro na emissão do ADN precisa olhar no portal da prefeitura pois ela não devolve no webservice, pelo menos não consegui esse resultado nem consultando o lote pelo número do protocolo. Agora sobre o cancelamento, a Etherium obriga a enviar alem do codigo o motivo em texto, então eu fiz uma alteração no Etherium.provider.pas procedure TACBrNFSeProviderEtherium204.Configuracao; inclui o seguinte : CancPreencherMotivo := True e manda o valor ao chamar ACBrNFSeX1.CancelarNFSe with ConfigGeral do begin ConsultaPorFaixaPreencherNumNfseFinal := True; CancPreencherMotivo := True; <------------- end; ao alterar o Etherium.provider.pas precisei refazer a instalação do componente.
    1 ponto
  22. @Anderson Grolli aguarde alguns minutos e tente usar a consulta do provedor pelo número da RPS enviada, verifica se funciona. No demo tem essa opção implementada.
    1 ponto
  23. @Ederson Selvati Obrigado pela contribuição ! Criado a tarefa ACBR-8800 para validação; Assim que concluida reportamos aqui.
    1 ponto
  24. Bom dia @Reginaldo Rodrigues Pereira Foi ajustado. Só atualizar o ACBr: https://sourceforge.net/p/acbr/code/44204/tree//trunk2/Fontes/ACBrDFe/ACBrNFSeX/Provedores/Coplan.Provider.pas?diff=51af3fbbe88f3d037b5f1a76:44203
    1 ponto
  25. Olá comunidade ! Foi publicada a Portaria SRE Nº 277 definindo a obrigatoriedade do preenchimento do responsável técnico para as NF-e e NFC-e emitidas no estado de Minas Gerais. É importante lembrar que os membros da comunidade que são Corporativo e PRO tem acesso aos cursos disponibilizados pelo ACBr e um deles é o Responsável Técnico na NF-e onde o conceito de responsável técnico é explicado além de ser demonstrado na prática como preencher as informações na solução ACBr.
    1 ponto
  26. Olá, pessoal! Se você está implementando a NFSe no Padrão Nacional e está encontrando dificuldades para obter o XML da nota após o envio, este guia foi feito para você. Muitas vezes, a confusão acontece porque o fluxo do Padrão Nacional exige a distinção clara entre o DPS e a NFSe. Abaixo, detalhamos o fluxo correto para consultar e baixar o XML definitivo. O Fluxo de Consulta Correto Diferente de outros provedores, no Padrão Nacional, o ideal é realizar uma "ponte" entre a Chave do DPS e a Chave da NFSe. 1. Consulta pela Chave do DPS (42 dígitos) O segredo para o sucesso é utilizar a Chave do DPS. Essa chave possui 42 dígitos e o ideal é que você a tenha armazenado em seu banco de dados no momento da emissão. Delphi/Lazarus // LIdDPS deve conter a chave de 42 dígitos do DPS ACBrNFSeX.ConsultarDPSPorChave(LIdDPS); 2. Obtenção da NFSe através do retorno Se a consulta do DPS for bem-sucedida, o componente receberá o ID da Nota Fiscal. Com esse ID, fazemos a consulta final para obter o XML completo da NFSe: Delphi/Lazarus if ACBrNFSeX.WebService.ConsultaNFSeporRps.Sucesso then begin // Agora consultamos pela Chave da Nota retornada, e não mais pelo DPS ACBrNFSeX.ConsultarNFSePorChave(ACBrNFSeX.WebService.ConsultaNFSeporRps.idNota); // O XML da NFSe estará disponível aqui: ShowMessage(ACBrNFSeX.NotasFiscais.Items[0].XmlNfse); end; Caso esteja validando um processo de emissão que foi interrompido e a consulta do DPS não foi realizada com sucesso você pode entender que o DPS não foi recebido e a nota não existe. Observações Importantes Diferença de Chaves: Não confunda a Chave do DPS (enviada) com a Chave da NFSe (gerada pelo governo). Ambas são importantes, mas para baixar o XML final, a consulta por chave de nota é a mais precisa. Persistência de Dados: Salve sempre a chave de 42 dígitos do DPS no seu banco de dados. Ela é o seu "passaporte" para localizar a nota caso haja uma queda de conexão ou timeout. Provedor Nacional: Este fluxo é o padrão esperado para prefeituras que aderiram ao convênio da NFSe Nacional via Ambiente de Dados Nacional (ADN). Conclusão Seguindo esses passos, você garante que sua aplicação consiga recuperar o XML da NFSe de forma consistente, evitando erros de "Nota não encontrada" ou retornos vazios. A chave é entender que o processo é uma escada: Dados do DPS -> Consulta Chave DPS -> Consulta Chave NFSe -> XML Final. Esperamos que esta dica ajude a agilizar as implementações de vocês! Créditos à comunidade ACBr e ao amigo @icozeira pelo compartilhamento de experiências!
    1 ponto
×
×
  • 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...