Yoshi 1 Denunciar post Postado Dezembro 14, 2007 Ai amigos to querendo fazer o seguinte quero q eu digite um Registro no Edit1 e que ele puxe da tabela os dados, fiz esse comando mais ta dando errado Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('select RAIINT from PACINT'); Query1.SQL.Add('where RAIINT like'+''''+Edit1.Text+'%'+''''); Query1.Open; Edit2.Text:=Query1.Fields.Fields[0].AsString; Edit3.Text:=Query1.Fields.Fields[1].AsString; Edit4.Text:=Query1.Fields.Fields[2].AsString; vlws http://forum.imasters.com.br/public/style_emoticons/default/natal_wink.gif Compartilhar este post Link para o post Compartilhar em outros sites
João Paulo Taraciuk 0 Denunciar post Postado Dezembro 14, 2007 Tente fazer o seguinte, Pode ser no evento onExit do Edit1: procedure Tform1.Edit1Exit(Sender: TObject); var parametro: string; begin parametro := (Edit1.Text); Query1.Active:=False; Query1.SQL.Clear; Query1.SQL.Add('select * from suatabela where Campo LIKE :PARAM');{Onde Campo é o nome do campo no banco de dados que poderia ser o nome} Query1.ParamByName('PARAM').Value:= parametro; Query1.Active:=True; if(Query1.RecordCount<>0)Then Begin Edit2.Text:=Query1.Fields[0].AsString; Edit3.Text:=Query1.Fields[1].AsString; Edit4.Text:=Query1.Fields[2].AsString; end else if(Query1.RecordCount=0)Then Begin ShowMessage('Não foram encontrados dados'); end; end; //Qualquer coisa poste aqui no fórum, Valew Compartilhar este post Link para o post Compartilhar em outros sites
Yoshi 1 Denunciar post Postado Dezembro 18, 2007 Entaum broder fiz assim o codigo e ta dando o seguinte erro Operat not valid in LIKE predicate usei esse comando procedure Tform1.Edit1Exit(Sender: TObject); var parametro: string; begin parametro := (Edit1.Text); Query1.Active := False; Query1.SQL.Clear; Query1.SQL.Add('select RAIINT, RGPINT, DTIINT from PACINT where RAIINT LIKE :RAIINT'); Query1.ParamByName('RAIINT').Value := parametro; Query1.Active := True; if(Query1.RecordCount<>0)Then Begin Edit2.Text:=Query1.Fields[1].AsString; Edit3.Text:=Query1.Fields[2].AsString; end else if(Query1.RecordCount=0)Then Begin ShowMessage('Não foram encontrados dados'); end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Dezembro 18, 2007 E aew bacana! beleza? tente assim: procedure Tform1.Edit1Exit(Sender: TObject); begin with Query1 do begin Active:= False; SQL.Clear; SQL.Add('SELECT RAIINT, RGPINT, DTIINT FROM PACINT'); SQL.Add('WHERE RAIINT LIKE ' + QuotedStr('%' + Edit1.Text + '%')); Active:= True; end; if (Query1.RecordCount > 0) Then begin Edit2.Text:=Query1.Fields[1].AsString; Edit3.Text:=Query1.Fields[2].AsString; end else begin ShowMessage('Não foram encontrados dados'); end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Yoshi 1 Denunciar post Postado Dezembro 18, 2007 I broder continua dando o mesmo erro, sera por que os campos são numeros eu tenhu q deixar como Float? Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Dezembro 18, 2007 Ahh sim!!!! se é um campo inteiro, no mínimo tem q fikar assim: procedure Tform1.Edit1Exit(Sender: TObject); begin with Query1 do begin Active:= False; SQL.Clear; SQL.Add('SELECT RAIINT, RGPINT, DTIINT FROM PACINT'); SQL.Add('WHERE RAIINT = ' + Edit1.Text); Active:= True; end; if (Query1.RecordCount > 0) Then begin Edit2.Text:=Query1.Fields[1].AsString; Edit3.Text:=Query1.Fields[2].AsString; end else begin ShowMessage('Não foram encontrados dados'); end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Yoshi 1 Denunciar post Postado Dezembro 27, 2007 Vlwwwwwwww broder deu certoooooooooooooooooo Compartilhar este post Link para o post Compartilhar em outros sites