Operação com lookup
Olá, tenho dbgrid com codigo quantidade total,
da minha tabela detalhes do pedido criei dois campos
lookup com descrição do produto e valor e eu preciso
que ao entrar com a quantidade ele retorne no total
o
valor do produto * a quantidade eu estou fazendo da
seguinte
forma:
TbItemItemtotal.value := (TbItemItemQuant.value * TbProdProdValor.Value);
mas ele só pega no campo ProdValor o valor do primeiro
produto cadastrado na tabela de produtos eu tambem ja
tentei com o campo lookup do valor do produto mas tambem
não funcionou..alguem pode me ajudar.....
Obrigado a todos...
da minha tabela detalhes do pedido criei dois campos
lookup com descrição do produto e valor e eu preciso
que ao entrar com a quantidade ele retorne no total
o
valor do produto * a quantidade eu estou fazendo da
seguinte
forma:
TbItemItemtotal.value := (TbItemItemQuant.value * TbProdProdValor.Value);
mas ele só pega no campo ProdValor o valor do primeiro
produto cadastrado na tabela de produtos eu tambem ja
tentei com o campo lookup do valor do produto mas tambem
não funcionou..alguem pode me ajudar.....
Obrigado a todos...
Gaboni
Curtidas 0
Respostas
Andre0201
04/07/2003
Ola Gaboni,
por experiência própria, procure não usar llookup, use o campo calculado;
, por exemplo
No evento BeforePost do dataset use;
TbProdutos.IndexName := ´´;{sempre Indexar pelo campo antes de um findKey}
if tbProdutos.FindKey( [TbItemItemCodigo.AsString] ) then
begin
TbItemItemdescricao.AsString := TbProdutosDescricao.AsString;
TbItemItemValor.Float := TbProdutosValor.AsFloat;
TbItemItemtotal.Float := (TbItemItemQuant.Float * TbItemItemValor.Float);
end;
Com certeza vai funcionar;
[]s
por experiência própria, procure não usar llookup, use o campo calculado;
, por exemplo
No evento BeforePost do dataset use;
TbProdutos.IndexName := ´´;{sempre Indexar pelo campo antes de um findKey}
if tbProdutos.FindKey( [TbItemItemCodigo.AsString] ) then
begin
TbItemItemdescricao.AsString := TbProdutosDescricao.AsString;
TbItemItemValor.Float := TbProdutosValor.AsFloat;
TbItemItemtotal.Float := (TbItemItemQuant.Float * TbItemItemValor.Float);
end;
Com certeza vai funcionar;
[]s
GOSTEI 0