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

(Resolvido) Botão alterar em um DBGRID


jpnogueira12

Pergunta

Estou desenvolvendo um sistema onde realizo um cadastro Pedido e gravo no banco de dados.
Tenho uma com um dbgrid para que eu posso puxar o numero do pedido(ID_PEDIDO) e no dbgrid ele me apresenta o id do pedido e o nome do cliente.
Quero saber como eu posso selecionar a linha do meu dbgrid e abrir um outro formulário idêntico ao de cadastro só que para edição dos campos... esse novo formulário deve trazer os campos preenchidos já com os dados do banco que foram salvos quando foi efetuado o pedido.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

exemplo:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, Grids, DBGrids;

type
  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    Query1: TQuery;
    DataSource1: TDataSource;
    Query1COD_FORNEC: TFloatField;
    Query1COD_PROD: TStringField;
    Query1PERFIL: TStringField;
    Query1ACABAMENTO: TStringField;
    Query1DESCRICAO: TStringField;
    Query1QUANTIDADE: TFloatField;
    Query1DATA: TDateField;
    Query1VAL_UNIT: TFloatField;
    Query1VAL_TOTAL: TFloatField;
    Query1OBS: TStringField;
    Query1VAL_VENDA: TFloatField;
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
   // TRAZER A INFORMAÇÃO DO DBGRID ( CLIQUE DO MOUSE NA CELULA ) DO FORM1 PARA O FORM2

   Form2.Edit1.Text := Query1COD_PROD.Value;

   Form2.Edit2.Text := Query1DESCRICAO.Value;

   Form2.ShowModal;
end;

end.

 

Quero saber como eu posso selecionar a linha do meu dbgrid e abrir um outro formulário idêntico ao de cadastro só que para edição dos campos...

oBS: Quando voce clica na celula do dbgrid, abre o Form2 e coloca nele a informação dos campos do registro selecionado.

O inverso tambem pode ser feito... voce abre o Form2 ( O Form que voce está usando )  procura a informação que voce quer e depois transfere para o Form1 ( o seu form ) 

no exemplo esta bem claro como fazer.

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
6 horas atrás, Jhonas disse:

exemplo:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, Grids, DBGrids;

type
  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    Query1: TQuery;
    DataSource1: TDataSource;
    Query1COD_FORNEC: TFloatField;
    Query1COD_PROD: TStringField;
    Query1PERFIL: TStringField;
    Query1ACABAMENTO: TStringField;
    Query1DESCRICAO: TStringField;
    Query1QUANTIDADE: TFloatField;
    Query1DATA: TDateField;
    Query1VAL_UNIT: TFloatField;
    Query1VAL_TOTAL: TFloatField;
    Query1OBS: TStringField;
    Query1VAL_VENDA: TFloatField;
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
   // TRAZER A INFORMAÇÃO DO DBGRID ( CLIQUE DO MOUSE NA CELULA ) DO FORM1 PARA O FORM2

   Form2.Edit1.Text := Query1COD_PROD.Value;

   Form2.Edit2.Text := Query1DESCRICAO.Value;

   Form2.ShowModal;
end;

end.

 

Quero saber como eu posso selecionar a linha do meu dbgrid e abrir um outro formulário idêntico ao de cadastro só que para edição dos campos...

oBS: Quando voce clica na celula do dbgrid, abre o Form2 e coloca nele a informação dos campos do registro selecionado.

O inverso tambem pode ser feito... voce abre o Form2 ( O Form que voce está usando )  procura a informação que voce quer e depois transfere para o Form1 ( o seu form ) 

no exemplo esta bem claro como fazer.

abraço

Tentei fazer mas dá erro no Form2.ShowModal;

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...