Como Somar um campo calculado?

Delphi

01/02/2008

Olá Pessoal,

Tenho um ClientDataSet com os seguintes campos

ValorUnitario
Quantidade
E um campo calculado que chama clcValorTotal que é apenas a quantidade * o ValorUnitario

Agora como a tabela é de pedidos eu quero um campo para somar todos os campos calculados clcValorTotal

Obrigado ;)


Yallebr

Yallebr

Curtidas 0

Respostas

Marco Salles

Marco Salles

01/02/2008

primeiro )
Troque seu campo calculado por Internacall ...

procedure TForm1.cdsCalcFields(DataSet: TDataSet); begin if cds.State = dsInternalCalc then cds.FieldByName(´clcValorTotal´).AsCurrency:= cds.fieldbyname(´VallorUnitario´).AsCurrency*cds.fieldbyname(´Quantidade´).AsInteger; end;


Segundo)
[b:b556b852c9]Crie um Campo Agregatte no Cds...[/b:b556b852c9]
Duplo Click No Editor De Tfileds New Filed De um Nome ... Exemplo ( Somar) e escolha em Fileds Type a Opção -->> Aggregate



[b:b556b852c9]No campo Agregado USe na Propriedade [/b:b556b852c9]
Expression : Sum(clcValorTotal) Active:=True


[b:b556b852c9]No ClientDataSet Propriedade AgregateActive := True[/b:b556b852c9]

[b:b556b852c9]Mas Atenção ... Campos Agregates retornam Strings [/b:b556b852c9]
Exemplo cds.FieldByName(´Soma´).asstring --->> Certo cds.FieldByName(´Soma´).Currency --->>Errado..



GOSTEI 0
POSTAR