Incluir, consultar, alterar ou descontar quantidade no estoque
Procedure Tfrmpedidomanut.Edit1Change(Sender: TObject);
begin
if edit1.Text <> '' then
begin
ADOQUERY1.Close;
ADOQUERY1.SQL.Clear;
ADOQUERY1.SQL.Add('select * from tbproduto');
ADOQUERY1.SQL.Add('Where descricao Like "'+ edit1.Text +'%"');
ADOQUERY1.SQL.Add('Order By descricao');
ADOQUERY1.Open;
end;
conforme vc digita a adoquery abre, mostra e mostra os produtos no dbgrid que estão na sua tbproduto
os outros produtos serão eliminados do dbgrid com a digitação deixando somente o produto
desejado e apontando para ele, e é ai que esta a manha, a adoquery aponta para o produto
e quando então toda altereção que acontecer sera com o produto que ela esta apontando,
mas o produto esta la na tabela de material.
O proximo codigo encherga o produto na adoquery e edita ele exatamente na adoquery, ja que esta
fica apontando direto para o produto que foi digitado no edit1, e se encontra na tabela de cadastro de produto
esse evento voce deve colocar em um botão de confirmação...
procedure Tfrmpedidomanut.BitBtn9Click(Sender: TObject);
var
Prod : Real;
Vend : Real;
total: real;
begin
if edit2.Text <> '' then //o edit 2 deve esta com a quantidade de entrada ou saida
begin
ADOQUERY1.Edit;
Vend := StrToFloat(edit2.Text);
Prod := StrToFloat(ADOQUERY1quantidade.Text);
ADOQUERY1quantidade.Text := FloatToStr(Prod+Vend); //esse é para somar no estoque(tbproduto), para diminuir troque o sinal de + para -
ADOQUERY1.Post;
ADOQUERY1.Refresh;
end
else
begin
showmessage('Indique a quantidade!');
edit2.SetFocus;
end;
end;
/nessas linhas é que acontece a magica de pegar a quantidade do produto que a query esta apontando e somar com quantidade
que foi digitada no edit2, lembre-se que a query esta apontando para o produto la na tbproduto, sendo assim
tudo que voce fizer nela e salvar sera feito no iten na sua tebela...
essa dica serve tabem para fazer uma consulta e ser usada para varias ideias é só viajar...
espero que ajude, se não entender é só postar duvidas que eu respondo... valewss
procedure TFrmCad_Venda.EdtProdutoExit(Sender: TObject);
begin
If edtproduto.Text = '' then
begin
showmessage ('Digite o código do produto, ou pesquise pelo nome');
EdtProduto.SelectAll;
edtproduto.SetFocus;
exit;
end;
with dm.QryProduto do
begin
close;
sql.Clear;
sql.add ('SELECT * FROM PRODUTO WHERE COD_PRODUTO = ' + Edtproduto.text + ' ');
open;
if recordcount = 0 then
begin
showmessage ('Produto não cadastro');
EdtProduto.SelectAll;
edtproduto.SetFocus;
exit;
end;
end;
BtnInserir.Enabled := True;
Principal
Assinar:
Postar comentários (Atom)
📌 Tela de Splash, Tela de Login e Tela Principal em Delphi: Aprendendo na Prática
No desenvolvimento de sistemas, a experiência do usuário começa muito antes de utilizar as principais funcionalidades do software. Elemen...

-
Usei muito esta função no Clipper e como não a encontrei no Delphi, recriei-a e estou publicando para compartilhar com a comunidade function...
-
Alterar as cores do título de um DBGrid em tempo execução dará mais vida ao seu programa e trará uma aparência mais profissional ao sistema....
-
No evento OnClique de um botão ou menu, etc., colocar o texto abaixo (supondo-se que você tenha setado a propriedade name do form como For...
Nenhum comentário:
Postar um comentário