Ir para conteúdo
Fórum Script Brasil
  • 0

Preciso De Ajuda! (Resolvido)


Halan Lopes

Pergunta

17 respostass a esta questão

Posts Recomendados

  • 0

É tipo assim:

use um Edit pra receber esse total, ex:

procedure TForm1.Button1Click(Sender: TObject);
var vTotal : Real;
begin
  vTotal := 0;
  Table1.First;
  while not Table1.EOF do begin
    vTotal := vTotal + Table1.FieldByName('Total').Value;
    Table1.Next;
  end;
  Edit1.text := FormatFloat('0,00',vTotal);
end;

Abs. Progr'amador.

Link para o comentário
Compartilhar em outros sites

  • 0

O Código Acima do " Programador " ele tá certo... Tente ser mais especifico...

olha só você usa o Data Modulo então a sua tabela em vez de Table1 por exemplo vai ter o Nome do DataModulo.TAble1...

Onde Table1 é o nome da Tabela...

Esse código quando se clica no botão ele soma, agora se quer que some automatimente coloque esse código em outo evento, o que você achar masi adquado...

Lembrando que ele mexe com a tabela , não com o seu DBGrid...

Mais Duvidas Tente ser mais claro dar mais detalhes... Ai o pessoal ajuda mais...

Há! veja esse post aqui está logo abaixo... Ele vai lhe ajudar mostra como criar um campo Calculado em sua table e pode mostrar no DBgrid, não grava no banco só para visualizar...

http://scriptbrasil.com.br/forum/index.php?showtopic=53474

Valeu.. Tbaiano wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

gostaria que ficasse assim "1,50" mas o que está acontecendo é que

ele está arredondando pra "2", e com aquele exemplo

Edit1.text := FormatFloat('0,00',vTotal);

aparece assim "002"

quando eu coloquei

Edit1.text := FormatFloat(' ',vTotal);

ele retornou o valor certo "1,5" mas sem a casa decimal que era pra ficar assim "1,50"

Link para o comentário
Compartilhar em outros sites

  • 0

o codigo é esse!

procedure TfrmPedido.DBGrid1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

var vTotal : Real;

begin

vTotal := 0;

DataModule1.DetalhedoPedido.First;

while not DataModule1.DetalhedoPedido.EOF do begin

vTotal := vTotal + DataModule1.DetalhedoPedido.FieldByName('Total').Value;

DataModule1.DetalhedoPedido.Next;

end;

Edit1.text := FormatFloat('0.00',vTotal);

end;

é como se o segundo valor fosse um comando pra descer, dai ele entra apenas o primeiro valor!

Link para o comentário
Compartilhar em outros sites

  • 0

faz assim:

procedure TfrmPedido.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var vTotal : Real;
begin
  if key = vk_return then begin // 'vk_return' representa a tecla enter
     vTotal := 0;
     DataModule1.DetalhedoPedido.First;
     while not DataModule1.DetalhedoPedido.EOF do begin
        vTotal := vTotal + DataModule1.DetalhedoPedido.FieldByName('Total').Value;
        DataModule1.DetalhedoPedido.Next;
     end;
     Edit1.text := FormatFloat('0.00',vTotal);
  end;
end;

Abs. Progr'amador.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...