Fórum Somar dados de dois campo #419140

29/06/2012

0

Pessoal Boa Noite !

Estou precisando de ajuda ,estou criando um controle de estoque e queria fazer a soma dos valores do mes inteiro de um determinado produto. Ex durante o mes quanto em um determinado setor gastou.
Estou usando banco MYSQL ,clientdataset,e SQLQUERY.

Atraves dos forum descobri algo sobre loop , mas nem imagino como funciona .

Peço paciencia ,pois sou novo na area e nunca fiz algo desse tipo.

Obrigado
Watson Rocha

Watson Rocha

Responder

Posts

29/06/2012

Wasley Portes

Boa noite, você pode fazer um SELECT na tabela fazendo a soma.
SELECT SUM(CAMPO) FROM TABELA
Abraços
Responder

Gostei + 0

30/06/2012

Watson Rocha

Wasley Boa tarde !

Desculpe me mas não sei como faz isso . eu coloquei essa query no botão ,mas não deu certo ..
Você poderia me explicar como fazer isso !

Obrigado novamente ...

procedure TForm4.Button2Click(Sender: TObject);
begin
select sum (quantidade) from almox
end;

end.
Responder

Gostei + 0

30/06/2012

Watson Rocha

Wasley acho que eu nao fui bem claro.
quero somar todos os valores do Campo Valor e me retorne esse dados em um edit ou dbedit segue abaixo como estou fazendo

procedure TForm4.Button2Click(Sender: TObject);
begin
SQLQUERY1.Close;
SQLQUERY1.SQL.Clear;
SQLQUERY1.SQL.Add(select SUM(Valor) from almox );
SQLQUERY1.Open;
DBEDIT1.Text:= IntToStr(SQLQUERY1.RecordCount);
END;
END.

O erro que me apresenta é um seguinte ,ele está somando a quantidade de linha do meu dbgrid .pois que na verdade
eu quero que some os valores da linha do dbgrid
ex-NF-1 Valor 10 some com a NF-2 valor-20 e o resultado me mostrasse no edit = 30

Obrigado
Responder

Gostei + 0

30/06/2012

Wasley Portes

Você pode colocar assim.

procedure TForm4.Button2Click(Sender: TObject);
begin
SQLQUERY1.Close;
SQLQUERY1.SQL.Clear;
SQLQUERY1.SQL.Add(select SUM(Valor) as total from almox);
SQLQUERY1.Open;
DBEDIT1.Text:= SQLQUERY1.fieldbyname(total).asString;
END;

Acredito que vá funcionar.
Abraços
Responder

Gostei + 0

02/07/2012

Romulo Contro

Isso mesmo, a ideia do Wasley é valida...

vi que vc colocou RecordCount ali em cima... no caso, esse comando só serve para somar a quantidade de linhas e não de um determinado campo...

mas faz igual o Wasley falou que eu acredito que vai atender o que vc precisa
Responder

Gostei + 0

03/07/2012

Watson Rocha

Diogo Boa Tarde , O RecordCount eu coloco no lugar o fieldbyname ?

Obrigado
Responder

Gostei + 0

03/07/2012

Wasley Portes

Watson, depende da sua necessidade.
Para a quantidade de registros você utiliza assim:

procedure TForm4.Button2Click(Sender: TObject);
begin
SQLQUERY1.Close;
SQLQUERY1.SQL.Clear;
SQLQUERY1.SQL.Add(select count(*) as total from almox);
SQLQUERY1.Open;
DBEDIT1.Text:= SQLQUERY1.fieldbyname(total).asString;
END;


Para somar o valor de algum campo utiliza assim:

procedure TForm4.Button2Click(Sender: TObject);
begin
SQLQUERY1.Close;
SQLQUERY1.SQL.Clear;
SQLQUERY1.SQL.Add(select count(vl_nota) as total from almox);
SQLQUERY1.Open;
DBEDIT1.Text:= SQLQUERY1.fieldbyname(total).asString;
END;
Responder

Gostei + 0

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

Aceitar