Array
(
)

MaxValue do ClientDataSet não funciona

Raserafim
   - 19 nov 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?


Firekiller
   - 19 nov 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...


Raserafim
   - 20 nov 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?


Paulo
   - 20 nov 2005

seria isso?


Citação:
SELECT MAX(CAMPOINTEGER) FROM TABELA



Kotho
   - 21 nov 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...


Raserafim
   - 22 nov 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.


Raserafim
   - 22 nov 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?


Kotho
   - 25 nov 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...