epassos 0 Denunciar post Postado Fevereiro 15, 2006 Pessoal, Estou desenvolvendo um sistema onde tem um cadastro de clientes. No cadastro pus um botão que chama um form de busca onde você vai digitando o nome do cliente e vai aparecendo todos os nomes semelhantes ao digitado. Vejam o código abaixo: procedure TfrmBuscaCliente.edtBuscaKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);beginqryBusca.close;qryBusca.SQL.Clear;qryBusca.sql.add('SELECT * FROM CLIENTEPJ WHERE upper(RAZAO) like upper('+#39+'%'+edtBusca.Text+'%'+#39')');qryBusca.Prepare;qryBusca.Open;end; O problema é o seguinte. Eu quero que, depois do usuario digitar o nome do cliente no Edit, ele vai clicar no DBGRID e selecionar o nome do cliente. Ai ele clica num botão e é direcionado para o form de cadastro do cliente com os dados do cliente. Tem como fazer isso? Estou usando para conexão, os componentes da paleta do Interbase. Um abraço para todos Compartilhar este post Link para o post Compartilhar em outros sites
LODVini 0 Denunciar post Postado Fevereiro 15, 2006 uma forma de fazer isso seria criar uma variável global no formulário principal, e quando o usuário escolher o cliente no grid do form da consulta, ele jogar o codigo do cliente na variável do form principal, ai se tu precisar de outras informações, cria um componente de query e como parâmetro passa o código do cliente. Depois popula os campos... com certeza deve ter outra forma...qualquer dúvida avisa. Compartilhar este post Link para o post Compartilhar em outros sites
epassos 0 Denunciar post Postado Fevereiro 15, 2006 uma forma de fazer isso seria criar uma variável global no formulário principal, e quando o usuário escolher o cliente no grid do form da consulta, ele jogar o codigo do cliente na variável do form principal, ai se tu precisar de outras informações, cria um componente de query e como parâmetro passa o código do cliente. Depois popula os campos... com certeza deve ter outra forma...qualquer dúvida avisa.Muito obrigado, se não for te explorar de demais, tem como você me explicar mais a fundo como funciona isso. Estou iniciando em Delphi e eu já suspeitava que seria desta que tenho que fazer. Só não sei como capturar a informação do Dbgrid e passar para a variável.Desde já agradeço a atenção Compartilhar este post Link para o post Compartilhar em outros sites
LODVini 0 Denunciar post Postado Fevereiro 15, 2006 algo mais ou menos assim: unit Unit1;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Edit1 : TEdit; Button1 : TButton; procedure FormCreate (Sender: TObject); procedure Button1Click (Sender: TObject); private { Private declarations } public { Public declarations } FPrmtrUsuCod : String; end;var Form1: TForm1;implementationuses Unit2;{$R *.DFM}procedure TForm1.FormCreate(Sender: TObject);begin FPrmtrUsuCod := '';end;procedure TForm1.Button1Click(Sender: TObject);begin Form2 := TForm2.Create(nil); try Form2.ShowModal; Edit1.Text := FPrmtrUsuCod; finally Form2.Free; end;end;end. unit Unit2;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, StdCtrls, Db, ZAbstractRODataset, ZDataset, ZConnection;type TForm2 = class(TForm) Button1: TButton; DBGrid1: TDBGrid; ZConnection1: TZConnection; ZReadOnlyQuery1: TZReadOnlyQuery; ZReadOnlyQuery1usu_cod: TStringField; DataSource1: TDataSource; Button2: TButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form2: TForm2;implementationuses Unit1;{$R *.DFM}procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);begin Action := caFree; Form2 := nil;end;procedure TForm2.Button1Click(Sender: TObject);begin // botao OK Form1.FPrmtrUsuCod := ZReadOnlyQuery1.FieldByName('usu_cod').AsString; Self.Close;end;procedure TForm2.Button2Click(Sender: TObject);begin // botao cancela Form1.FPrmtrUsuCod := ''; Self.Close;end;end. ai tu verifica como fica melhor para seu programa... mas isso é somente um exemplo.. se funcionar ou não, avisa :D Compartilhar este post Link para o post Compartilhar em outros sites