Fórum DataSet ?? #299280

13/10/2005

0

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

Responder

Posts

13/10/2005

Sabado

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


Responder

Gostei + 0

13/10/2005

Galwacco

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


Responder

Gostei + 0

13/10/2005

Sabado

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.


Responder

Gostei + 0

13/10/2005

Galwacco

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,


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar