Estou com o mesmo problema: "Total do BC ICMS difere do somatório dos itens"
Mas.... só quando coloco mais de um item na NF. Quando tem apenas 1 item autoriza certinho!
Eu criei um totalizador do bcicms:
with ICMS do
begin
CST := cst00; // por hora vou usar esse pois estou em homologação, depois vou fazer a tributacao individual
CSOSN := csosn101; // a empresa é do simples nacional com direito a credito de icms
ICMS.orig := oeNacional;
ICMS.modBC := dbiValorOperacao;
ICMS.vBC := Prod.vProd;
ICMS.pICMS := dm.Cons_produtoICMS.Value; // vem do cadastro de produto a aliquota do icms
ICMS.vICMS := (Prod.vProd*dm.Cons_produtoICMS.Value)/100; // calculo do valor icms, onde prod.cprod é o valor do produto individualmente mais acima
ICMS.modBCST := dbisMargemValorAgregado;
ICMS.pMVAST := 0;
ICMS.pRedBCST:= 0;
ICMS.vBCST := 0;
ICMS.pICMSST := 0;
ICMS.vICMSST := 0;
ICMS.pRedBC := 0;
wtvicms:=wtvicms+ICMS.vICMS;
wtvbcicms:=wtvbcicms+Prod.vProd;
end;
E lá em baixo informo esse total:
Total.ICMSTot.vBC := wtvbcicms;
Total.ICMSTot.vICMS := wtvicms;
Total.ICMSTot.vBCST := 0;
Total.ICMSTot.vST := 0;
Total.ICMSTot.vProd := wtotprod;
Total.ICMSTot.vFrete := 0;
Total.ICMSTot.vSeg := 0;
Total.ICMSTot.vDesc := 0;
Total.ICMSTot.vII := 0;
Total.ICMSTot.vIPI := 0;
Total.ICMSTot.vPIS := 0;
Total.ICMSTot.vCOFINS := 0;
Total.ICMSTot.vOutro := 0;
Total.ICMSTot.vNF := strtofloat(dbsub_total.text)
Total.ISSQNtot.vServ := 0;
Total.ISSQNTot.vBC := 0;
Total.ISSQNTot.vISS := 0;
Total.ISSQNTot.vPIS := 0;
Total.ISSQNTot.vCOFINS := 0;
Mas... quando tem mais de um item os valores não conferem.
Alguém poderia me ajudar?