DataSet ??

Delphi

13/10/2005

Eu tenho um relatorio que consiste em mostrar o valor total de vendas por item durante o mês corrente.

Ele ficaria mais ou menos assim na pratica:


--------------------------------------------------------------------------------------------
| Chocolate | Pão | Leite | Queijo | Mostarda | Margarina |
--------------------------------------------------------------------------------------------
01/01/2005 | 45,00 | 18,00 | 30,00 | 20,00 | 15,00 | 20,00 |
--------------------------------------------------------------------------------------------
02/01/2005 | 35,00 | 15,00 | 35,00 | 10,00 | 15,00 | 05,00 |
--------------------------------------------------------------------------------------------
03/01/2005 | 40,00 | 12,00 | 10,00 | 26,00 | 05,00 | 22,00 |
--------------------------------------------------------------------------------------------


Eu sou programador em PHP e ainda estou aprendendo o básico do Delphi, eu gostaria de saber como que eu
poderia montar essa grade que eu ilustrei acima baseado no Select que eu estou fornecendo no exemplo que
eu montei em PHP abaixo???

Eu sei que não é nada difícil e que eu poderia estar buscando nos manuais ou coisa parecida mas eu gostaria de
ainda assim ter uma ´receita de bolo´.


Obrigado pela ajuda estendida!



-----------------------------------------------------------------------------------------



--------------------------
| lancamentos_financeiros |
--------------------------
| nome_lancamento_padrao | PK
| valor |
| data |
---------------------------






-----------------------------------------------------------------------------------------

$cnx; //Conexão com o banco de dados abstraida do exemplo.

$str = ´select lf.nome_lancamento_padrao as Nome,SUM(valor) as Valor, lf.data as Data
from lancamentos_financeiros lf, plano_contas
where (lf.data >= ´20050801´) AND (lf.data <= ´20050831´)
group by lf.nome_lancamento_padrao, lf.data´;


$query = mysql_query($str, $cnx);
?>
<body>


<?php

while($fetch = mysql_fetch_array($query)) {

echo ´<td>$fetch[´nome_lancamento_padrao´];</td>´;

}
?>


<?php
while($fetch1 = mysql_fetch_array($query)) {

echo ´<td>$fetch1[´valor´];</td>´;

}
?>

</body>


Galwacco

Galwacco

Curtidas 0

Respostas

Sabado

Sabado

13/10/2005

use sum, se o banco de dados dor SQL o MySQL e distribua em variáveis


GOSTEI 0
Galwacco

Galwacco

13/10/2005

Na verdade o que eu precisava era saber como se faz aquele bloco de códigos que eu fiz em PHP em Delphi.


GOSTEI 0
Sabado

Sabado

13/10/2005

prezado:
foi isso mesmo que postei.
como vc programa em php, deve utilizar mysql. qual o db queu esta utilizando atualmente para delphi? ai eu posso ser mais objetivo e colaborar com vc de modo mais direto.


GOSTEI 0
Galwacco

Galwacco

13/10/2005

Ok, desculpe, eu achei que voce estivesse falando de outra coisa!!

assim:

o Meu banco de dados é PostGreSQL e essa é a minha SQL:

begin
FDataSet.CommandText :=
´SELECT´ +
´ lf.data as Data, ´ +
´ lf.nome_lancamento_padrao as Nome,´ +
´ SUM(valor) as Valor´ +
´ FROM´ +
´ lancamentos_financeiros lf,´ +
´ plano_contas´ +
´ WHERE´ +
´ (lf.data >= :p_data1) AND´ +
´ (lf.data <= :p_data2)´ +
´ AND nome_lancamento_padrao in´ +
´ (:p_txt1, :p_txt2, :p_txt3, :p_txt4, :p_txt5, :p_txt6)´ +
´ group by lf.data,´ +
´ lf.nome_lancamento_padrao´;
end


sendo que de P_txt1 até P_txt6 serão os nomes dos itens que eu quero mostrar no relatorio, eu fiz assim pois na pagina de relatorio só cabe 6 campos na horizontal aí eu decidi colocar um form de antemão para poder
fazer uma pré-seleção do que eu quero que mostre norelatorio, pois numa loja pode-se ter mais de 500 itens á venda.

Obrigado,


GOSTEI 0
POSTAR