Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 151 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Estou com este erro o estranho que valores ate 34 reais, nao da erro, para valor acima 35 reais da erro, segue um bloco validado com um valor de 34 reais, o produto tem ncm 21069090 entao tem reducao de base de 40 pct, sendo CST  200 e classtrib 200047 

bcalculo valor do produto

erro esta dando tanto em homologacao quanto em producao.

em um venda de 35,60  esta fazendo 0,0365  e esta arredondando para 0,04  e na reducao esta ficando na aliquota 

gRed.pAliqEfet := 0,06       para produtos CST 000, nao tem reducao nao esta dando erro para vendas acima deste valor,

porque este codigo funciona para uma venda ate 34 reais, e acima da erro.

 

 with gIBSCBS do
                begin
                 vBC := bcalculo;
                 with gIBSUF do
                 begin
                  pIBSUF := 0.1;
                  vIBSUF := RoundAbnt((bcalculo*pIBSUF)/100,2);
                  total_vIBSUF:= total_vIBSUF + vIBSUF;
                  //valor  competencia do IBS  da  UF
                  gDif.pDif := 0;
                  gDif.vDif := 0;
                  gDevTrib.vDevTrib := 0;

                  if aclass = '200047' then
                   begin
                    gRed.pRedAliq  := 40;
                    gRed.pAliqEfet := pIBSUF * RoundAbnt((1-gRed.pRedAliq/100),2);
                   end
                   else if aclass = '200034' then
                   begin
                    gRed.pRedAliq  := 60;
                    gRed.pAliqEfet := pIBSUF * RoundAbnt((1-gRed.pRedAliq/100),2);
                   end
                   else
                   begin
                    gRed.pRedAliq := 0;
                    gRed.pAliqEfet := 0;
                   end;
                 end;
 

 

det nItem="1">
- <prod>
  <cProd>3</cProd>
  <cEAN>SEM GTIN</cEAN>
  <xProd>NOTA FISCAL EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xProd>
  <NCM>21069090</NCM>
  <CFOP>5102</CFOP>
  <uCom>UN</uCom>
  <qCom>1.0000</qCom>
  <vUnCom>34.0000000000</vUnCom>
  <vProd>34.00</vProd>
  <cEANTrib>SEM GTIN</cEANTrib>
  <uTrib>UN</uTrib>
  <qTrib>1.0000</qTrib>
  <vUnTrib>34.0000000000</vUnTrib>
  <indTot>1</indTot>
  </prod>
- <imposto>
- <ICMS>
- <ICMSSN102>
  <orig>0</orig>
  <CSOSN>102</CSOSN>
  </ICMSSN102>
  </ICMS>
- <IBSCBS>
  <CST>200</CST>
  <cClassTrib>200047</cClassTrib>
- <gIBSCBS>
  <vBC>34.00</vBC>
- <gIBSUF>
  <pIBSUF>0.1000</pIBSUF>
- <gRed>
  <pRedAliq>40.0000</pRedAliq>
  <pAliqEfet>0.0600</pAliqEfet>
  </gRed>
  <vIBSUF>0.03</vIBSUF>
  </gIBSUF>
- <gIBSMun>
  <pIBSMun>0.0000</pIBSMun>
- <gRed>
  <pRedAliq>40.0000</pRedAliq>
  <pAliqEfet>0.0000</pAliqEfet>
  </gRed>
  <vIBSMun>0.00</vIBSMun>
  </gIBSMun>
  <vIBS>0.03</vIBS>
- <gCBS>
  <pCBS>0.9000</pCBS>
- <gRed>
  <pRedAliq>40.0000</pRedAliq>
  <pAliqEfet>0.5400</pAliqEfet>
  </gRed>
  <vCBS>0.18</vCBS>
  </gCBS>
  </gIBSCBS>
  </IBSCBS>
  </imposto>
  <vItem>34.00</vItem>
  </det>
- <total>
- <ICMSTot>
  <vBC>0.00</vBC>
  <vICMS>0.00</vICMS>
  <vICMSDeson>0.00</vICMSDeson>
  <vFCP>0.00</vFCP>
  <vBCST>0.00</vBCST>
  <vST>0.00</vST>
  <vFCPST>0.00</vFCPST>
  <vFCPSTRet>0.00</vFCPSTRet>
  <vProd>34.00</vProd>
  <vFrete>0.00</vFrete>
  <vSeg>0.00</vSeg>
  <vDesc>0.00</vDesc>
  <vII>0.00</vII>
  <vIPI>0.00</vIPI>
  <vIPIDevol>0.00</vIPIDevol>
  <vPIS>0.00</vPIS>
  <vCOFINS>0.00</vCOFINS>
  <vOutro>0.00</vOutro>
  <vNF>34.00</vNF>
  </ICMSTot>
- <IBSCBSTot>
  <vBCIBSCBS>34.00</vBCIBSCBS>
- <gIBS>
- <gIBSUF>
  <vDif>0.00</vDif>
  <vDevTrib>0.00</vDevTrib>
  <vIBSUF>0.03</vIBSUF>
  </gIBSUF>
- <gIBSMun>
  <vDif>0.00</vDif>
  <vDevTrib>0.00</vDevTrib>
  <vIBSMun>0.00</vIBSMun>
  </gIBSMun>
  <vIBS>0.03</vIBS>
  <vCredPres>0.00</vCredPres>
  <vCredPresCondSus>0.00</vCredPresCondSus>
  </gIBS>
- <gCBS>
  <vDif>0.00</vDif>
  <vDevTrib>0.00</vDevTrib>
  <vCBS>0.18</vCBS>
  <vCredPres>0.00</vCredPres>
  <vCredPresCondSus>0.00</vCredPresCondSus>
  </gCBS>
  </IBSCBSTot>
  <vNFTot>34.00</vNFTot>
  </total>
- <transp>
  <modFrete>9</modFrete>
- <vol>
  <qVol>0</qVol>
  </vol>
  </transp>
- <pag>
- <detPag>
  <tPag>01</tPag>
  <vPag>34.00</vPag>
  </detPag>
  </pag>
- <infAdic>
  <infCpl>Trib aprox R$ 1,43 Federal e R$ 2,38 Estadual|Fonte:IBPT/FECOMERCIO SP 39A19D</infCpl>
  </infAdic>
- <infRespTec
  • Consultores
Postado

Quando for enviar o xml, não envia só uma parte dele, envia o arquivo anexado se possível e quando for bloco de código, use a opção de CODE que tem no post.

Valter Patrick
Gerente de Projetos na empresa CTEC
Consultor ACBr
(33)98400-0936
GitHub: https://github.com/valterpatrick

Ajude o Projeto ACBr crescer - Assine o Clube PRO                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

  • Solution
Postado

Bom dia consegui, arrumar analisando o xml, e fazendo os calculos entendi o que estava errado, estava dando certo ate 30 reais porque a sefaz aceita arredondamento ate 0,01, vi que a conta do vIBSUF estava no local errado, eu estava fazendo direto pela aliquota 0,1 na realidade eu preciso fazer a reducao de base e depois calcular

fiz aqui a mudanca deu certo

deveria ter feito mais testes antes de postar desculpa novamente ai no grupo;

         pIBSUF := 0.1;

                  gDif.pDif := 0;
                  gDif.vDif := 0;
                  gDevTrib.vDevTrib := 0;

                  if aclass = '200047' then
                   begin
                    gRed.pRedAliq  := 40;
                    gRed.pAliqEfet := pIBSUF * RoundAbnt((1-gRed.pRedAliq/100),2);
                    vIBSUF := RoundAbnt((bcalculo*gRed.pAliqEfet)/100,2);   mudei aqui o calculo do IBS
                   end
                   else if aclass = '200034' then
                   begin
                    gRed.pRedAliq  := 60;
                    gRed.pAliqEfet := pIBSUF * RoundAbnt((1-gRed.pRedAliq/100),2);
                    vIBSUF := RoundAbnt((bcalculo*gRed.pAliqEfet)/100,2);  mudei aqui tambem o calculo
                   end
                   else
                   begin
                    vIBSUF := RoundAbnt((bcalculo*pIBSUF)/100,2);    trouxe aqui quando nao tem reducao de base
                    gRed.pRedAliq := 0;
                    gRed.pAliqEfet := 0;
                   end;

                    total_vIBSUF:= total_vIBSUF + vIBSUF;
 

mudei isto de local apliquei a aliquota de reducao no calculo como os valores dao muito baixo 0,02 0,03 porque a aliquota e baixa entao dava certo quando fazia venda de valores baixos. 

</ICMS>
<IBSCBS>
<CST>200</CST>
<cClassTrib>200047</cClassTrib>
<gIBSCBS>
<vBC>36.50</vBC>
<gIBSUF>
<pIBSUF>0.1000</pIBSUF>
<gRed>
<pRedAliq>40.0000</pRedAliq>
<pAliqEfet>0.0600</pAliqEfet>
</gRed>
<vIBSUF>0.02</vIBSUF>
</gIBSUF>
<gIBSMun>
<pIBSMun>0.0000</pIBSMun>
<gRed>
<pRedAliq>40.0000</pRedAliq>
<pAliqEfet>0.0000</pAliqEfet>
</gRed>
<vIBSMun>0.00</vIBSMun>
</gIBSMun>
<vIBS>0.02</vIBS>
<gCBS>
<pCBS>0.9000</pCBS>
<gRed>
<pRedAliq>40.0000</pRedAliq>
<pAliqEfet>0.5400</pAliqEfet>
</gRed>
<vCBS>0.20</vCBS>
</gCBS>
</gIBSCBS>
</IBSCBS>
</
 
 
Postado

entendi valter nos proximos vou mandar desta forma desculpa novamente, sobre codigo e xml, sempre fiz desta forma

fiz um outro post mais e outro assunto, nao vou repetir aqui e fazer aqueles erros de postagem aproveitar gancho,

pode encerrar o post, entendi, entao para que serve a reducao de base, reduzir imposto e depois aplicar a reducao na base.

  • Este tópico foi criado há 151 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.