Fórum Agreggate + Filtro #394322
25/01/2011
Galera, boa tarde!
A situação é o seguinte... eu tenho uma tabela que possui o consumo de cada mês dos produtos de uma loja de equipamentos de segurança. Nesta tabla eu tenho campos agreggates que calculam o consumo geral do mês. Entretanto, ao filtrar o banco de dados, como exemplo: óculos, o campo agreggate continua somando todos os consumos. Ele não dá o valor somente dos óculos. Como eu faria isso?
Atenciosamente,
Posts
25/01/2011
Efraim Santana
tem como vc colocar a estrutura da tabela.
fica mais facil entender e ajudar.
Por acaso vc esta se Referindo a campos Aggregates em ClientDataSet ???
Se for é so fazer isto :
criar um Novo campo Aggregate com a Instrução
Count(Oculos) >>> Numero de Registro onde o Oculos não esta em branco
Ou
Sum(Oculos) -->>Medira a quntidade de Oculos
E o Filtro se aplica normalmente nesta condiçoes
26/01/2011
Rafael Ribeiro
Vou tentar exemplificar melhor.
Sim, o campo agreggate é do ClientDataSet.
Vamos supor o seguinte, eu tenho uma tabela (PRODUTO) que está vinculada aos Datasets: IDPRODUTO, DESCRICAO, GRUPO, QUANTIDADE.
Dentro do ClientDataSet eu crio um campo aggregate: QUANTIDADE_TOTAL, onde sua Expression é SUM(QUANTIDADE).
Para o field GRUPO eu tenho as seguintes opções de dados: CARTEIRA, CORDÃO, MOCHILA, ÓCULOS.
Quando eu vou analisar os dados, meu campo agreggate dá o somatório da quantidade de todos os produtos, independente do GRUPO.
Dessa forma, eu resolvo fazer um filtro onde eu seleciono o GRUPO em uma "combo". Até aqui legal, porque minha DBGrid fica somente com os ítens do grupo que eu escolhi, entretanto, o campo agreggate continua somando a quantidade de todos os produtos e eu preciso que some, por exemplo, apenas a quantidade de óculos.
Espero ter ficado mais claro.
Grato pela ajuda de todos!
Rafael Ribeiro
Talves vc esteja falando de Indices e Agrupamento . Um campo Aggregado pode ser agrupado por indices
Mas antes de atacar o problema utilizando o agrupamento , fiquei sem entender o sequinte
o campo quantidade de refere a UNIDADES de CARTEIRA, CORDÃO, MOCHILA, ÓCULOS.
Assim qd vc aplica o filtro por exemplo para Oculos vc so tera Registro com Oculos , cuja a
quantidade se refere a Oculos .. Correto ???
IDPRODUTO, DESCRICAO, GRUPO, QUANTIDADE.
1-----------babababbabba-Oculos-----2
2-----------babababbabba-Oculos-----1
3-----------babababbabba-Oculos-----2
4-----------babababbabba-Oculos-----1
5-----------babababbabba-Oculos-----2
6-----------babababbabba-Oculos-----1
Totalizando = 9 Oculos ... É o que deveria retornar na Expressão SUM(Quantidade)
E como esta Retornando ?????
27/01/2011
Rafael Ribeiro
Olá Bom Dia!
O sistema retorna a quantidade de todos os produtos, não somente dos óculos.
Grato,
Rafael Ribeiro
Fiz um exemplo aqui , e esta diferente do que vc postou. Como disse desde do inicio o Filtro esta
aplicando corretamente no Somatorio do Campo Agrregate
Se quiser lhe envio por emai este exemplo
27/01/2011
Rafael Ribeiro
SHOW!!! ENVIE SIM... rafael.marins.ribeiro@hotmail.com ... por favor!!!!
Grato,
Rafael Ribeiro
SHOW!!! ENVIE SIM... rafael.marins.ribeiro@hotmail.com ... por favor!!!!
Grato,
Rafael Ribeiro
..
enviado
28/01/2011
Rafael Ribeiro
Marco, boa tarde!
O seu exemplo me ajudou muito. Meu sistema estava certinho. O erro era ridiculo. O resultado era jogado pra uma statusbar, entretanto, quando eu aplicava o filtro eu não mandava atualizar a statusbar. Mas, valeu! Ajudou! Ainda estou em ritmo de férias... até o cérebro resolver funcionar... já viu né!
Abçs
Rafael
Imagino .. Não tinha o porque não funcionar . O filtro tb se aplica ao Aggregate . A questao era tirar
isto da sua cuca
Este tópico esta sendo fechado por inatividade. Se necessário, sinalizar para que seja reaberto ou abrir um novo.