Jump to content
daniel_silva

Soma automática no dbgrid

Recommended Posts

daniel_silva

Bom dia. :D

Estou a fazer uma tela para orçamentos, e o meu objetivo é: 

Ao inserir um artigo com o preço já introduzido de outra tabela, queria que somasse o campo preço automaticamente numa caixa de texto. 

Edited by daniel_silva

Share this post


Link to post
Share on other sites
JoãoRicardo

como eu sou bom na area de PCs nao te sei responder :D

 

Edited by JoãoRicardo

Share this post


Link to post
Share on other sites
nunopicado

Tens várias formas de fazer isso...
Uma é ires tomando conta dos valores inseridos, e somar directo no programa.

Outra por exemplo é na tua query teres um campo de soma, e ao adicionares novos valores o campo vai sendo actualizado, e tu mostras o valor desse campo.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
nunopicado

É complicado dar mais detalhes sem saber ao certo o teu cenário.
Mas por exemplo, tens uma query para a DBGrid.
Queres saber a soma dos valores de uma determinada coluna.

Crias uma segunda query, algo tipo isto:
 

SELECT Sum(Price) AS Total FROM Orcamentos WHERE Doc = 1234

E depois metes um TDBEdit, por exemplo, com um segundo TDataSource ligado a esta segunda query, e usas o campo Total para o preencher.

 

Depois, no OnDataChange do datasource da query principal (da DBGrid), fazes o refresh da segunda query:

procedure TForm1.QueryOrcamentosDataChange(Sender: TObject);
begin
  QueryTotal.Refresh;
end;

 

Desta forma, quando a grid for editada, a query total será processada novamente, actualizando o valor do total.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
daniel_silva

Vou tentar explicar o meu cenário, tenho uma tela de orçamentos... E imagina insiro um artigo que aparece automaticamente o preço num dbedit, e é sempre assim, insiro outro artigo com o preço... É assim o ciclo. 

O que queria fazer era, insiro o 1º artigo de 60€ aparece automático no dbedit ao inserir o 2º artigo de 100€ queria que aparece no dbedit (valor total) a soma desses dois artigos, ou seja 120€ e sempre assim. 

Vou experimentar da maneira como disseste, e já digo alguma coisa :D  

Obrigado :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.