Diogo Loff Postado 26 Fevereiro Postado 26 Fevereiro Pessoal, a ultima atualização realizada em PadraoNacional.GravaXML o bloco de GerarXMLTotalTributos parou de funcionar, ao menos no meu sistema estava funcionando de acordo, mexeram para atender uma questão específica do simples mas não observaram outras questões. Meu caso eu não informo no sistema o IBPT em percentuais, sempre é valor mesmo que seja regime simples ou normal, só não trabalho com MEI. Até semana passada estava funcionando, onde minha versão usava um ACBr da semana do dia 09/02. Por outros motivos tive que atualizar e agora passou a não funcionar mais dar problema com o bloco de "totTrib". Ao meu ver esta lógica esta totalmente equivocada, para que trabalha sempre com valores informados e não percentuais. function TNFSeW_PadraoNacional.GerarXMLTotalTributos: TACBrXmlNode; begin Result := CreateElement('totTrib'); if (NFSe.Servico.Valores.totTrib.pTotTribFed > 0) or (NFSe.Servico.Valores.totTrib.pTotTribEst > 0) or (NFSe.Servico.Valores.totTrib.pTotTribMun > 0) then Result.AppendChild(GerarXMLPercentualTotalTributos) else if (NFSe.OptanteSN = osnOptanteMEEPP) then Result.AppendChild(AddNode(tcDe2, '#1', 'pTotTribSN', 1, 5, 1, NFSe.Servico.Valores.totTrib.pTotTribSN, '')) else if (NFSe.Servico.Valores.totTrib.indTotTrib <> indSim) then Result.AppendChild(AddNode(tcStr, '#1', 'indTotTrib', 1, 1, 1, indTotTribToStr(NFSe.Servico.Valores.totTrib.indTotTrib), '')) else Result.AppendChild(GerarXMLValorTotalTributos); end; Foi fixado a questão do simples ser sempre por percentuais. Inclusive não se consegue mais nem usar a opção de não querer informar, caso deseje não informar. if (NFSe.OptanteSN = osnOptanteMEEPP) then Result.AppendChild(AddNode(tcDe2, '#1', 'pTotTribSN', 1, 5, 1, NFSe.Servico.Valores.totTrib.pTotTribSN, '')) Infelizmente não fiz uma cópia da versão do dia 09 então não sei como estava este arquivo originalmente. Mas ao meu ver a lógica sempre deveria priorizar os valores primeiro e depois o modelo por percentuais. Eu ajustei desta forma para resolver meu problema. Favor avaliarem a questão. function TNFSeW_PadraoNacional.GerarXMLTotalTributos: TACBrXmlNode; begin Result := CreateElement('totTrib'); if (NFSe.Servico.Valores.totTrib.vTotTribFed > 0) or (NFSe.Servico.Valores.totTrib.vTotTribEst > 0) or (NFSe.Servico.Valores.totTrib.vTotTribMun > 0) then Result.AppendChild(GerarXMLValorTotalTributos) else begin if (NFSe.Servico.Valores.totTrib.pTotTribFed > 0) or (NFSe.Servico.Valores.totTrib.pTotTribEst > 0) or (NFSe.Servico.Valores.totTrib.pTotTribMun > 0) then Result.AppendChild(GerarXMLPercentualTotalTributos) else begin if (NFSe.Servico.Valores.totTrib.indTotTrib <> indSim) then begin Result.AppendChild(AddNode(tcStr, '#1', 'indTotTrib', 1, 1, 1, indTotTribToStr(NFSe.Servico.Valores.totTrib.indTotTrib), '')) end else begin if (NFSe.OptanteSN = osnOptanteMEEPP) then Result.AppendChild(AddNode(tcDe2, '#1', 'pTotTribSN', 1, 5, 1, NFSe.Servico.Valores.totTrib.pTotTribSN, '')) end; end; end; end; A lógica é bem clara e facil de entender Tem valor "usa os valores" Não tem e tem percentuais "usa os percentuais" Não tem e tem indicação de não querer informar "indica" Não tem a indicação, confere se é simples e "usa o percentual especifico de simples". Vi no log que foi mexido para atender justamente a questão do simples, mas digo com clareza que não esta atendendo, pois se deseja trabalhar com valores no simples esta dando erro, pois na lógica que foi atualizada nunca será possivel usar valores neste caso. Segue anexo fonte. PadraoNacional.GravarXml.pas
Diogo Loff Postado 10 Abril Autor Postado 10 Abril Acabei de atualizar os fontes, e este item continua com o problema para quem deseja trabalhar com valores direto e é simples. Implementei novamente a minha solução proposta.
Solution Diogo Loff Postado Segunda as 17:22 Autor Solution Postado Segunda as 17:22 Ola, fiz atualização hoje 15/06/2026 e vi que implementaram a solução dos valores do IBPT para simples nacional conforme havia sugerido. Obrigado. Pode encerrar o tópíco, pelos testes que fiz esta correto.
Consultores Juliomar Marchetti Postado Terça as 14:56 Consultores Postado Terça as 14:56 Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico. Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!
Recommended Posts