Campo Calculado
Caras, andei fazendo algumas pesquisas no fórum sobre Campo Calculado, e encontrei algumas coisas interessantes, mas tenho um problema. Criei em um TADOQUERY dois campos Lookup, e um calculado. Os campos Loockup puxam registros de outra tabela (óbvio). O campo calculado deve fazer o calculo subtotal, ou seja, ´VlrUnitario * Qtde´. Para isso coloquei o seguinte codigo baseado na pesquisa:
procedure TFrmEntradasProdutos.Subtotal;
var
Subtotal: Currency;
i: Integer;
begin
QryItensNF.Edit;
QryItensNF.First;
For i:= 1 To QryItensNF.RecordCount Do
begin
QtdeProd:= GrdProdutos.Fields[4].AsInteger;
VlrUnit:= GrdProdutos.Fields[5].AsFloat;
Subtotal:= QtdeProd * VlrUnit;
GrdProdutos.Fields[6].AsString:= FormatCurr(´#0.00´,Subtotal); //Já tentei colocar QryItensNFSubtotal.AsCurrency:=... e nao deu certo
QryItensNF.Next;
End;
end;
Vale dizer q o DBGrid esta concatenado ao Data Source e este ao OQuery. O erro q ocorre diz q QryItensNF nao esta em modo de Edição nem de Inserção. Se for notar eu coloco a Query em Edição (´QryItensNF.Edit´).
Por que esta ocorrendo isso???
Valeu a ajuda!!!!!!!!!
procedure TFrmEntradasProdutos.Subtotal;
var
Subtotal: Currency;
i: Integer;
begin
QryItensNF.Edit;
QryItensNF.First;
For i:= 1 To QryItensNF.RecordCount Do
begin
QtdeProd:= GrdProdutos.Fields[4].AsInteger;
VlrUnit:= GrdProdutos.Fields[5].AsFloat;
Subtotal:= QtdeProd * VlrUnit;
GrdProdutos.Fields[6].AsString:= FormatCurr(´#0.00´,Subtotal); //Já tentei colocar QryItensNFSubtotal.AsCurrency:=... e nao deu certo
QryItensNF.Next;
End;
end;
Vale dizer q o DBGrid esta concatenado ao Data Source e este ao OQuery. O erro q ocorre diz q QryItensNF nao esta em modo de Edição nem de Inserção. Se for notar eu coloco a Query em Edição (´QryItensNF.Edit´).
Por que esta ocorrendo isso???
Valeu a ajuda!!!!!!!!!
Diorgenes175
Curtidas 0
Respostas
Ari
06/02/2004
Diogenes quando preciso criar Campo calculado eu crio este campo no Filds Editor da Qry e Coloco no Evento onCalcFields da qry o que este campo vai receber
Espero que tenha ajudado
Espero que tenha ajudado
GOSTEI 0