MaxValue do ClientDataSet não funciona

Delphi

19/11/2005

quando tento utilizar a propriedade MaxValue de um campo do ClientDataSet, é sempre retornado o valor zero.
porquê isso está acontecendo?
algum macete para retornar o valor correto?


Raserafim

Raserafim

Curtidas 0

Respostas

Firekiller

Firekiller

19/11/2005

Max onde tá retornando 0 ?? Porque se não estou enganado, o MaxValue é só uma restrição de Valor Máximo para campos Numéricos...


GOSTEI 0
Raserafim

Raserafim

19/11/2005

humm é verdade. foi mal. realmente o MaxValue é pra limitar o valor.
mas o que eu queria é saber o maior valor de um campo no conjunto de registros. tem alguma função q retorne o maior valor?


GOSTEI 0
Paulo

Paulo

19/11/2005

seria isso?

SELECT MAX(CAMPOINTEGER) FROM TABELA



GOSTEI 0
Kotho

Kotho

19/11/2005

Vc pode criar um campo do tipo Aggregate e na propriedade Expression, vc coloca MAX(CAMPO).

Tbém é necessário setar True para Active desse campo... e True para AggregatesActive no ClientDataSet.

A única restrição para esse tipo de campo, é sempre acessá-lo como AsString... pois se a tabela estiver vazia e vc acessar com AsInteger, dá erro...


GOSTEI 0
Raserafim

Raserafim

19/11/2005

Paulo, não posso utilizar esse código SQL pois não posso consultar os dados no banco, tem que ser os dados que estão no ClientDataSet, pois sofreram algumas alterações.


GOSTEI 0
Raserafim

Raserafim

19/11/2005

Katho, da forma como vc falou os dados utilizados são os que estão na base, ou são os que estão diretamente no ClientDataSet?


GOSTEI 0
Kotho

Kotho

19/11/2005

São os que estão no ClientDataSet... inclusive, se vc filtar o CDS, ele vai calcular somente os dados que estiverem visíveis...

Você pode tbém fazer os calculos por grupos... mas isso é outra estória...


GOSTEI 0
POSTAR