Ir para conteúdo
  • Cadastre-se

Lucas Lima Freire Brito

Membros
  • Total de ítens

    6
  • Registro em

  • Última visita

Lucas Lima Freire Brito's Achievements

Rookie

Rookie (2/14)

  • First Post
  • Week One Done
  • One Month Later
  • One Year In
  • Conversation Starter

Recent Badges

0

Reputação

  1. Certo, podemos mudar o .fr3 para ficar valor acréscimo em baixo ou em cima isso indefere por que minha visão é melhorar a ferramenta da comunidade, mas dessa forma não vai funcionar o processo, por que a nomenclatura de valor liquido = ValorBaseCalculoProduto + Acréscimo - Desconto; Pelo motivo que atualmente esses são os valores que se encontram no acbr: FieldByName('Valorliquido').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc ,',0.00'); ---> (62,50 - 12,50) = 50,00 FieldByName('ValorAcrescimos').AsString := FormatFloatBr( Prod.vProd + Prod.vOutro,',0.00'); ---> (62,50 + 10,00) = 72,50 Para isso funcionar nos valores do acréscimo teria que subtrair o valor do desconto passando a ficar dessa forma se fizer a seguinte alteração: FieldByName('Valorliquido').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc ,',0.00'); ---> (62,50 - 12,50) = 50,00 FieldByName('ValorAcrescimos').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc + Prod.vOutro,',0.00'); ---> (62,50 - 12,50 + 10,00) = 60,00 Mas dessa forma vamos resolver o problema com um remendo, onde não aconselho a fazer, gastei mais de 1 hora analisando o ACBr para identificar o erro, mas se for a única forma para solucionar o problema ok.
  2. O XML é de uma venda real ou um caso hipotético? O que acontece é que meus clientes são de diversos segmentos. Esse é um caso real que fiz de demonstração em uma maquina de homologação para demonstrar o que é ocorre. Em que cenário vai haver acréscimo e desconto na mesma venda? Acontece sempre que é realizado uma venda de produtos que possuem acréscimo devido a negociação. e no fechamento da venda ocorre um desconto exemplos de balcão de venda de farmácias pequenas, e na sequencia o cliente no ponto de vendas chora um desconto nos produtos que acaba sendo rateado entre os produtos do cupom. O .fr3 que estou utilizando já esta com acréscimo antes do desconto como você tinha dito. O problema é que se for utilizar da forma que o ACBr esta tratando, antes o valor liquido, não acrescenta o valor de acréscimo. vou tentar demonstrar melhor abaixo: por que da forma que esta hoje atende apenas se o cliente tiver no produto, apenas desconto ou acréscimo não podendo ter os dois. No .FR3 esta da seguinte forma nos dois exemplos abaixo Exemplo com ACBr, Antes da correção. procedure TACBrNFeFRClass.CarregaDadosProdutos; FieldByName('Valorliquido').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc ,',0.00'); Dessa forma, se não for somar o valor vOutro ele não soma no valor liquido o acréscimo onde fica o problema pois no caso apresentado FieldByName('Valorliquido').AsString := FormatFloatBr( 62,50 - 12,50 ,',0.00'); FieldByName('Valorliquido').AsString := 50,00; Exemplo com ACBr, Após as mudanças. procedure TACBrNFeFRClass.CarregaDadosProdutos; FieldByName('Valorliquido').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc + Prod.vOutro ,',0.00'); Essa foi a forma que utilizei pra resolver o problema, por que se na hora de carregar os dados do XML ele não popular o valor de acréscimo do item no valor liquido, vai ter que ser alterado no .fr3 e não faz muito sentido pois o valor líquido seria o valor deduzido de acréscimos e descontos, esse caso dessa forma que estava sendo tratado funcionava apenas quando existe apenas desconto ou acréscimo.
  3. Arquivo em anexo. O problema não é no XML, e sim quando é realizado uma criação do objeto com os valores lendo o xml do acbr, dessa forma o item é composto de valor - Desconto + Acréscimo esse é um exemplo de um dos produtos do XML que consta o valores: <vDesc>68.00</vDesc> <vOutro>0.96</vOutro> <det nItem="1"><prod><cProd>62598</cProd><cEAN>7896006200604</cEAN><xProd>NOTA FISCAL EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xProd><NCM>30049099</NCM><CEST>1300401</CEST><indEscala>S</indEscala><CFOP>5405</CFOP><uCom>U</uCom><qCom>3.6000</qCom><vUnCom>62.5000000000</vUnCom><vProd>225.00</vProd><cEANTrib>7896006200604</cEANTrib><uTrib>U</uTrib><qTrib>3.6000</qTrib><vUnTrib>62.5000000000</vUnTrib><vDesc>68.00</vDesc><vOutro>0.96</vOutro><indTot>1</indTot></prod><imposto><vTotTrib>13.38</vTotTrib><ICMS><ICMS60><orig>0</orig><CST>60</CST></ICMS60></ICMS><PIS><PISNT><CST>04</CST></PISNT></PIS><COFINS><COFINSNT><CST>04</CST></COFINSNT></COFINS></imposto></det> ACBrNFeDANFEFRDM.pas
  4. Estudando uma regra da ACBR identifiquei um erro mas não tenho acesso para realizar a correção do .pas [*] Erro na TACBrNFeFRClass.CarregaDadosProdutos; --| O ValorLiquido do produto estava somando apenas o valor de Desconto do XML, dessa forma desprezando o valor de despesa acessórios (vOutros) que é o acréscimo do valor do produto. Alguém que tem acesso verifica a alteração e verifica se é valido para fazer alteração no projeto principal, espero ter ajudado a comunidade. PATH Index: ACBrNFeDANFEFRDM.pas =================================================================== --- ACBrNFeDANFEFRDM.pas (revision 20998)ACBrNFeDANFEFRDM.pas.patch +++ ACBrNFeDANFEFRDM.pas (working copy) @@ -1069,8 +1069,8 @@ FieldByName('Valorliquido').AsString := FormatFloatBr( Prod.vProd - Prod.vDesc + Prod.vOutro,',0.00'); Espero ter contribuído com a comunidade !
×
×
  • 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...