Aggregate Fields do ClientDataSet
Na verdade acho que aqui nesse fórum não seria o lugar correto pra colocar esse tópico (talvez seria mais correto colocar no fórum de Delphi), mas estou colocando aqui porque estou usando Interbase como base de dados onde o seguinte problema ocorre:
Tenho uma tabela com os seguintes dados:
| Codigo | Valor |
| 0 | R$ 5,00 |
| 1 | R$ 6,00 |
| 1 | R$ 2,00 |
| 0 | R$ 4,00 |
Fiz um Aggregate Field com a expressão ´SUM(Valor)´ que me retorna o valor total, mas percebi que esse não é o efeito desejado. Eu precisava saber o valor total de acordo com o codigo, ou melhor, o total de todo mundo onde codigo=0, depois codigo=1, etc...
Como eu posso fazer isso?
Valeu!
Tenho uma tabela com os seguintes dados:
| Codigo | Valor |
| 0 | R$ 5,00 |
| 1 | R$ 6,00 |
| 1 | R$ 2,00 |
| 0 | R$ 4,00 |
Fiz um Aggregate Field com a expressão ´SUM(Valor)´ que me retorna o valor total, mas percebi que esse não é o efeito desejado. Eu precisava saber o valor total de acordo com o codigo, ou melhor, o total de todo mundo onde codigo=0, depois codigo=1, etc...
Como eu posso fazer isso?
Valeu!
Delphi32
Curtidas 0
Respostas
Sremulador
19/03/2004
Group by codigo
[/u]
[/u]
GOSTEI 0
Afarias
19/03/2004
Bom... sendo a questão relacionada a manipular o CDS realmente seu lugar correto é no ClubeDelphi (da próxima vez vc já sabe! ;))
para fazer o q vc quer o CDS tem q estar usando um ÍNDICE com o campo q vc deseja agrupar (CODIGO) -- então crie um índice para o campo código e configure-o na propriedade IndexName
e então configure a propriedade GroupingLevel do TAggregateField para 1
T+
para fazer o q vc quer o CDS tem q estar usando um ÍNDICE com o campo q vc deseja agrupar (CODIGO) -- então crie um índice para o campo código e configure-o na propriedade IndexName
e então configure a propriedade GroupingLevel do TAggregateField para 1
T+
GOSTEI 0