Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 27-10-2025 em todas as áreas

  1. Olá pessoal, Por favor deem atenção. Como sabem estamos aos poucos saindo das units "pcn". E um dos passos para fazermos isso foi criar uma unit chamada ACBrDFe.Conversao.pas (Veja aqui sobre). Mas essa unit tinha alguns problemas e mudanças de comportamento indesejados então precisamos refazê-la. Isso pode quebrar o seu código e por isso precisamos de sua atenção. TL/DR: A unit ACBrDFe.Conversao.pas não é uma cópia da pcnConversao.pas com outro nome. A pcnConversao.pas ainda funciona, mas quando você for utilizar a ACBrDFe.Conversao.pas, vai precisar fazer ajustes! Ainda está aí? Beleza, agora vamos aos detalhes. Em primeiro lugar queremos deixar claro que ela vai continuar sendo parte da migração para fora das units "pcn*" em especial a pcnConversao.pas. Vamos resumir aqui no entanto algumas alterações que foram feitas: A constante LineBreak foi removida. Se você precisa dela no seu código, use a constante que já vem no Delphi/Lazarus SLineBreak. Diversos tipos foram renomeados. Listamos abaixo alguns: TpcnTipoCampo = TACBrTipoCampo; TpcnTagAssinatura = TACBrTagAssinatura; TpcnTipoImpressao = TACBrTipoImpressao; TpcnTipoEmissao = TACBrTipoEmissao; TpcnTipoAmbiente = TACBrTipoAmbiente; TpcnProcessoEmissao = TACBrProcessoEmissao; TpcnTpEvento = TACBrTipoEvento; TpcteModal = TModal; TpcnTipoNFe = TTipoNFe; TpcnOrigemMercadoria = TOrigemMercadoria; TpcnCSTIcms = TCSTIcms; TpcnCSOSNIcms = TCSOSNIcms; TpcnCstPis = TCSTPis; TpcnCstCofins = TCSTCofins; TpcteTipoRodado = TTipoRodado; TpcteTipoCarroceria = TTipoCarroceria; TpcnUnidTransp = TUnidTransp; TpcnUnidCarga = TUnidCarga; TpcteProp = TtpProp; TpcnindIEDest = TindIEDest; TpcnRegTribISSQN = TRegTribISSQN; TpcnindIncentivo = TindIncentivo; TpcnRegTrib = TRegTrib; TpcnindRatISSQN = TindRatISSQN; TpcnindRegra = TindRegra; TpcnCodigoMP = TCodigoMP; As funções de conversões de tipos enumerados foram refeitas para seguir o padrão "Try-Parse". Esse é um padrão comum em linguagens de programação (incluindo o Delphi com as funções TryStrToDate e StrToDate). A função que tem no nome o prefixo "Try" realiza a verificação de uma possível conversão sem lançar exceções, retornando um booleano para indicar se a conversão foi bem-sucedida e armazenando o resultado, em caso de sucesso, em um parâmetro de saída. A função que não tem esse prefixo, gera uma exception quando o tipo não puder ser convertido. Essa função que inicia com "Try" substitui a função anterior que tinha um parâmetro "ok". Um dos objetivos de usar esse padrão é porque muitas pessoas nem se dão conta que é preciso verificar o parâmetro "ok" antes de usar o resultado da função. Como sabemos disso? Bem, este tipo de uso é frequente em contribuições e até mesmo no código antigo do ACBr... Almejamos assim deixar o código mais claro. Por enquanto o seu código que usa a pcnConversao vai continuar funcionando. Mas vai retornar vários warnings. A ideia é que você possa ir corrigindo no seu tempo. Nós mesmo estamos usando e isso vai aumentar a quantidade de warnings gerados que você vê ao compilar os componentes ACBr ... Por outro lado, vamos modificar o código do ACBr para deixar de utilizar a unit pcnConversao internamente o quanto antes. Os hints/warnings estão sendo ajustados na unit pcnConversao.pas para refletir o que foi delineado aqui. E como sempre, fiquem a vontade para reportar quaisquer problemas, sugestões e melhorias. Obrigado pela atenção pessoal.
    5 pontos
  2. Olá! Compartilho um projeto de exemplo mostrando como emitir NFe/NFCe usando Node.js + Docker integrado à ACBrLib. Contribuições são bem-vindas! Faça um fork do repositório, crie um branch e abra um PR. https://github.com/Gabrielmororo180/node-nfe
    5 pontos
  3. Olá comunidade ! Foi publicada a versão 7.7 do FAQ da EFD ICMS IPI trazendo uma atualização do item 19.1 que faz referência a Reforma Tributária. A nova redação do item ficou conforme abaixo: Veja o FAQ completo AQUI.
    3 pontos
  4. @Thiago Ribeirao veja esse tópico, porque a parti dele consegui resolver um problema assim
    2 pontos
  5. O Conselho Nacional de Política Fazendária – CONFAZ, por meio do Ajuste SINIEF nº 30/2025, determina que fica alterado o prazo de 03.11.2025 para 05.01.2026 a proibição de uso da NFC-e contra pessoa jurídica (CNPJ). Fonte prorrogação do ajuste : https://www.confaz.fazenda.gov.br/legislacao/ajustes/2025/ajuste-sinief-30-25 **Prorrogado **Foi publicado no Diário Oficial da União, o Ajuste SINIEF nº 11/2025, que traz alterações importantes na NFC-e (Nota Fiscal de Consumidor Eletrônica). Ocorre que, a partir de 03 de novembro de 2025, a NFC-e só poderá ser emitida exclusivamente quando o destinatário for pessoa física inscrita no CPF e não mais quando for pessoa jurídica, inscrita no CNPJ. Fonte ajuste anterior: https://www.confaz.fazenda.gov.br/legislacao/ajustes/2025/AJ011_25
    1 ponto
  6. Criei a classe TACBrDISGertecTEC55lib, que herda de TACBrDISClass, e implementei os métodos necessários seguindo como base a TACBrDISGertecTEC65lib. Ajustei o número de linhas e colunas, que são diferentes no modelo TEC55. Também alterei a classe ACBrDIS, adicionando o item "disGertec55Lib" no enum TACBrDISModelo, e modifiquei a procedure SetModelo para instanciar corretamente. Adicionei o comentário "linhaAlterada" nas partes modificadas para evidenciar as mudanças. A contribuição segue em anexo para avaliação. ACBrDIS.pas ACBrDISGertecTEC55lib.pas
    1 ponto
  7. Muito obrigado pela contribuição @Igor Faria @Alexandre de Paula, pelo que analisei dos fontes, está tudo correto... podemos fazer o Merge
    1 ponto
  8. Acho que coincidentemente tinha caído o serviço deles kkkk, porque aqui nao estava funcionando, mas acabei de enviar uma NFCOM e validou Segue:https://www.dfe.ms.gov.br/nfcom/qrcode?chNFCom=50251015929060000160620000000054731011601607&tpAmb=2
    1 ponto
  9. Boa tarde @IMATECH, Já esta no SVN.
    1 ponto
  10. ja deu certo atualizando o arquivo ACBrNFSeXServicos.ini , grato
    1 ponto
  11. Eu acredito que no modelo atual de NFe, quando os valores eram 0, nós podiamos omitir esse valores e tags, mas isso veio acontacendo com o tempo. Pelo o que tenho percebido, nas informações da reforma tributaria, mesmo se 0 devemos colocar as tags, talvez isso mude no futuro, mas estamos tendo que nos acostumar de uma maneira diferente, pelo menos por hora
    1 ponto
  12. Bom dia a todos. Deixa eu colocar uma duvida e ver se é isso mesmo ou talvez precisemos de alguma alteração. Em uma NF de venda para um municipio, ou seja, ente governamental. Tendo nessa NF itens com com aliquota integral, redução e isenção, não está adicionando as tags da gTribCompraGov nos itens isentos. Na ACBrNFe.XmlWriter, na linha 4260 (estou na ultima versão enquanto escrevo), ele testa as aliquotas de CBS, iBS Mun e UF - que no caso serão 0, AND tpEnteGov <> tcgNenhum - no meu caso tcgMunicipios. E por estar zerado ele não adiciona a tag. Consequentemente, o recebo a rejeição 'Rejeição: Grupo de informações da composição do valor do IBS e da CBS em compras governamentais não informado [nItem: 1]'. Rejeição 1141. Vou adicionar o XML para demonstrar isso. Acho que mesmo quando isento, deve-se colocar as tags. Irei testar isso e volto para falar. Grande abraço a todos 35251053437315000167550010005063461003610107-nfe.xml
    1 ponto
  13. Olá comunidade ! Foi publicado comunicado no Portal SPED informando que se encontra disponível para download a versão 6.1.0 do PGE EFD contribuições. A nova versão: Leia o comunicado na íntegra AQUI.
    1 ponto
  14. Olá, comunidade ! Ao conferir no Portal da Nota Fiscal Eletrônica é possível observar que a Sefaz do estado de Minas Gerais está possui contingência agendada, com previsão de inicio às 18h00 do dia 24/10/2025 e término às 08h10 do dia 25/10/2025. Para utilizar as soluções ACBr em contingência durante esse período siga as orientações do tópico abaixo:
    1 ponto
  15. Boa tarde Walter, Se o certificado for A3, utilize a seguinte configuração: SSLType = LT_TLSv1_2 Se for A1 altere o SSLLib de libWinCrypt para libOpenSSL. Dica: configure somente o SSLLib e SSLType, os demais o componente se encarrega usar os valores corretos para cada opção escolhida. Não esqueça de copiar as DLLs do OpenSSL que estão na pasta: ...\DLLs\OpenSSL Sugiro usar as DLLs da pasta: 1.1.1.10 ou 3.1.3
    1 ponto
  16. Olá Pessoal, Algumas duvidas frequentes dos desenvolvedores que estão iniciando seus projetos de emissão de NFS-e. 1. O provedor XYZ já esta implementado no componente ACBrNFSeX? Resp.: É muito simples de obter essa resposta, dentro da pasta: ...\Fontes\ACBrDFe\ACBrNFSeX temos o arquivo: Provedores-Implementados.txt e seu conteúdo contem a lista em ordem alfabética de todos os provedores implementados no componente, se o nome do provedor estiver nessa lista então a resposta é Sim. 2. Usando o componente ACBrNFSeX consigo emitir notas para a cidade ABC? Resp.: Na mesma pasta da resposta anterior temos o arquivo: ACBrNFSeXServicos.ini, seu conteúdo contem todas as cidades brasileiras em ordem por código IBGE, se a cidade contem um provedor associado a cidade desejada a resposta é SIM. 3. Procurei no arquivo ACBrNFSeXServicos.ini e a cidade desejada não contem um provedor associado a ela, isso significa que não é possível emitir NFS-e para esta cidade? Resp.: A principio não vai ser possível, mas você pode entrar em contato com a prefeitura e questionar sobre a empresa (provedor) contratada para implementar a emissão de NFS-e por aplicação de terceiros. Precisamos saber qual é o provedor bem como as URLs de homologação e produção do webservice para a cidade em questão (atenção: não serve as URLs usadas para emissão via site/portal da prefeitura). 4. Eu mesmo posso alterar o arquivo ACBrNFSeXServicos.ini para realização de testes antes de criar um tópico sugerindo a inclusão do provedor a uma cidade que ainda não tenha ou alteração de URL ou troca de provedor? Resp.: Sim, toda colaboração é bem vinda, você pode seguir as orientações constantes no inicio do arquivo ACBrNFSeXServicos.ini, elas vão lhe ajudar nessa tarefa que é muito simples. 5. Qual é procedimento correto para emissão de NFS-e quando o prestador de serviço for MEI? Resp.: Observe que na aba "Geral" do programa exemplo temos o campo: Layout da NFSe com as seguinte opções: Se for selecionado a opção lnfsProvedor o componente vai usar o layout adotado pelo provedor, por outro lado se for selecionado a opção lnfsPadraoNacionalv1 o componente vai usar o layout da NFS-e Padrão Nacional que é utilizado obrigatoriamente por todos os prestadores MEI. 6. Então não preciso altear o provedor para PadraoNacional no arquivo ACBrNFSeXServicos.ini ? Resp.: Não, porque no momento somente quem é MEI é obrigado a emitir suas notas no Padrão Nacional os demais prestadores continuam emitindo segundo o layout do provedor contratado pela prefeitura. 7. Quando é que devemos alterar o provedor para PadrãoNacional de um cidade? Resp. O dia que a prefeitura dessa cidade aderir a emissão da NFS-e Padrão Nacional para todos os prestadores. 8. Como eu descubro o layout utilizado por um provedor? Resp.: Executando o programa exemplo do componente ACBrNFSeX e selecionando a cidade desejada e clicando no botão [Salvar Configurações], na aba "Emitente", será apresentado o provedor, layout e versão. 9. Como eu sei se a cidade aderiu ou não a emissão da NFS-e Padrão Nacional? Resp.: No programa exemplo na aba "Emitente" selecione a cidade desejada e clique no botão [Salvar Configuração], depois na aba "Geral" altere o layout para Padrão Nacional e clique novamente no botão para salvar a configuração. Note que a direita as abas vão mudar. Por fim clique no botão [Convenio] que esta na aba "Consultar Parâmetros Municipais", se a cidade aderiu vai constar o valor 1 (Sim) para "Aderente ao Emissor Nacional". 10. Como eu sei se o provedor exige certificado digital e quais os serviços disponibilizados pelo provedor? Resp.: Novamente com o programa exemplo temos essa resposta clicando no botão [Informações sobre o Provedor] que esta na aba "Geral". Você notou que eu respondi varias perguntas usando o programa exemplo? Quando nós consultores e moderadores orientamos estudar o programa exemplo é porque você vai encontrar muitas respostas para as suas duvidas. Nas perguntas acima foi necessário apenas executar o programa exemplo e o configurar para obter as respostas. Estudando o código do programa exemplo você vai saber como utilizar os diversos métodos implementados no componente. Por fim mas não menos importante, sempre utilize o programa exemplo para realizar os testes, pois é a única aplicação em comum entre nós do Projeto ACBr e você Desenvolvedor.
    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.