SOMAR DADOS DE UMA TABELA

SNNIFFER 01/10/2010 15:05:39
#354255
Estou usando a seguinte codificação para a soma de valores especificos de uma tabela MySQL, em um text estará a soma dos valores credito e em outro text os debitos.

Set desp = New ADODB.Recordset
SQL = [Ô]SELECT * FROM fluxo[Ô]
desp.Open [Ô]Select valor,tipo,data from caixa where tipo = [ô][Ô] & [Ô]debito[Ô] & [Ô][ô] and data = [ô][Ô] & txtData.Text & [Ô][ô][Ô], gConexao

Dim TotDesp As Currency
TotDesp = Soma + CCur(desp([Ô]valor[Ô]))
desp.MoveNext

txtDespesas.Text = TotDesp
txtDespesas.Text = Format(txtDespesas.Text, [Ô]Currency[Ô])

Está adicionando apenas o primeiro valor da tabela, não está somando.
Alguem tem uma dica?

Vlw
ENGALEXANDRE 01/10/2010 15:35:27
#354257
Resposta escolhida
O que é a variável Soma?

Não seria

Dim TotDesp As Currency
[txt-color=#e80000]TotDesp = 0[/txt-color]
[txt-color=#e80000] WHILE NOT desp.EOF[/txt-color]
TotDesp = [txt-color=#e80000]TotDesp[/txt-color] + CCur(desp([Ô]valor[Ô]))
desp.MoveNext

txtDespesas.Text = TotDesp
txtDespesas.Text = Format(txtDespesas.Text, [Ô]Currency[Ô])

Alexandre

LROSSI 01/10/2010 15:43:48
#354260
ou

Set desp = New ADODB.Recordset
SQL = [Ô]SELECT * FROM fluxo[Ô] [txt-color=#e80000][ô]não sei pra q isso tá aki....[/txt-color]
desp.Open[txt-color=#e80000] [Ô]Select sum(valor) as valor from caixa where tipo = [ô][Ô] & [Ô]debito[Ô] & [Ô][ô] and data = [ô][Ô] & txtData.Text & [Ô][ô][Ô][/txt-color], gConexao
txtDespesas.Text = Format(desp([Ô]valor[Ô]), [Ô]#,##0.00[Ô])


é isso?
NALDO 01/10/2010 15:50:38
#354262
ou então você pode estar usando um operador que já vem no mysql mesmo,

sum(nome_tabela)

ele soma todos os dados da tabela do mysql...
SNNIFFER 01/10/2010 15:59:43
#354267
Galera a dica do LROSSI funfou, mas, a questão é que eu queria os valores em moedas (R$) e os tatais das casas decimais, estou usando o currency, mas, não adianta.
MARCELO.TREZE 01/10/2010 18:59:01
#354283
não entendi, não seria isto

txtDespesas.Text = Format(CDbl(desp([Ô]valor[Ô])), [Ô]Currency[Ô])
GUIMORAES 02/10/2010 09:55:41
#354298
Citação:

ou

Set desp = New ADODB.Recordset
SQL = [Ô]SELECT * FROM fluxo[Ô] [ô]não sei pra q isso tá aki....
desp.Open [Ô]Select sum(valor) as valor from caixa where tipo = [ô][Ô] & [Ô]debito[Ô] & [Ô][ô] and data = [ô][Ô] & txtData.Text & [Ô][ô][Ô], gConexao
txtDespesas.Text = Format(desp([Ô]valor[Ô]), [Ô]#,##0.00[Ô])


é isso?



Bom, Fiz uma modificação no código.

[txt-color=#0000f0]Set desp = New ADODB.Recordset
desp.Open [Ô]Select sum(valor) as valor, tipo,data from caixa where tipo = [ô][Ô] & [Ô]debito[Ô] & [Ô][ô] and data = [ô][Ô] & txtData.Text & [Ô][ô] group by tipo,data[Ô], gConexao
txtDespesas.Text = Format(desp([Ô]valor[Ô]), [Ô]#,##0.00[Ô])[/txt-color]


Você disse que quer o Valor em R$, basta formatar o campo ao receber a variavel desp.

Você pode usar o comando do marcelo-treze.

[txt-color=#0000f0]txtDespesas.Text = Format(CDbl(desp([Ô]valor[Ô])), [Ô]Currency[Ô]) [/txt-color]


Abraços
NALDO 04/10/2010 15:17:40
#354378
Olá, vou aproveitar o tópico e postar uma dúvida, eu quero que todos os meus valores sejam apresentando da seguinte forma, [ R$ 1,99 ], mas não estou conseguindo, ele está apresentando corretamente, [ 12,00 ], mas simbolo do real, [ R$ ], não está aparecendo dentro do ListGrid...

Código:

Do While rs.EOF = False
l = l + 1
lista.ListItems.Add l, , rs(0)
lista.ListItems(l).SubItems(1) = rs(1)
lista.ListItems(l).SubItems(2) = Format(rs(2), [Ô]#,##0.00[Ô])
lista.ListItems(l).SubItems(3) = rs(3)
lista.ListItems(l).SubItems(4) = rs(4)

rs.MoveNext
Loop
Tópico encerrado , respostas não são mais permitidas