ajuda delphi pesquisa
ola pessoal só novo aqui no forum e no delphi queria saber como faço para fazer uma colsulta...
tipo assim tenho um formulario de agenda de serviços e queria pesquisar qual o fucionario que realizou o serviço,sendo que
gostaria que aparecece no grid só os serviços que o fucionario realizou,
o meu banco de dados é o interbase
tipo assim tenho um formulario de agenda de serviços e queria pesquisar qual o fucionario que realizou o serviço,sendo que
gostaria que aparecece no grid só os serviços que o fucionario realizou,
o meu banco de dados é o interbase
Glebson Guimaraes
Curtidas 0
Respostas
Deivison Melo
02/10/2012
Aqui tem um exemplo usando webbroker, mas o conceito é o mesmo!
http://www.facunte.com.br/livros/dw7/livro_delphi_web_capitulo_7.pdf
Qualquer dúvida postar!
http://www.facunte.com.br/livros/dw7/livro_delphi_web_capitulo_7.pdf
Qualquer dúvida postar!
GOSTEI 0
Joel Rodrigues
02/10/2012
Sua dúvida é com relação a consulta (SQL) ou a programação no Delphi?
Poste a estrutura de suas tabelas.
Poste a estrutura de suas tabelas.
GOSTEI 0
Glebson Guimaraes
02/10/2012
minha duvida é na consulta sql
como fazer a consulta.
como fazer a consulta.
GOSTEI 0
Joel Rodrigues
02/10/2012
Bom, não conheço a estrutura das suas tabelas, mas a consulta não parece difícil, bastaria um select na tabela de serviços filtrando pelo funcionário, não?
SELECT * FROM SERVICOS WHERE FUNCIONARIO = :valor
GOSTEI 0
Glebson Guimaraes
02/10/2012
HO EU FIZ ASSIM
procedure Tformagenda.Button2Click(Sender: TObject);
begin
DmDados.IBQueryAgenda.Close;
DmDados.IBQueryAgenda.ParamByName('Fuci_atend').AsString:='%'+Edit1.Text+'%';
DmDados.IBQueryAgenda.open;
end;
POREM NUM APARECE NADA QUANDO DIGITO NO EDIT E CLICO NO BUTTON2
GOSTEI 0
Joel Rodrigues
02/10/2012
Como está o SQL da sua tabela?
A ideia é a seguinte, adequando a consulta à sua tabela:
Como você está usando um comparador de igualdade, não precisa dos "coringas" (%).
A ideia é a seguinte, adequando a consulta à sua tabela:
procedure Tformagenda.Button2Click(Sender: TObject);
begin
DmDados.IBQueryAgenda.Close;
DmDados.IBQueryAgenda.SQL.Text := 'SELECT * FROM ATENDIMENTOS WHERE FUNCIONARIO= :fun';
DmDados.IBQueryAgenda.ParamByName('fun').AsString := Edit1.Text;
DmDados.IBQueryAgenda.open;
end;
Como você está usando um comparador de igualdade, não precisa dos "coringas" (%).
GOSTEI 0
Glebson Guimaraes
02/10/2012
select * from AGENDA
where FUCIONA_ATENDENTE= :Fuci_atend;
where FUCIONA_ATENDENTE= :Fuci_atend;
GOSTEI 0
Glebson Guimaraes
02/10/2012
ai amigao fiz assim
procedure Tformagenda.Button2Click(Sender: TObject);
begin
DmDados.IBQueryAgenda.Close;
DmDados.IBQueryAgenda.SQL.Text:= 'SELECT * AGENDA WHERE FUCIONA_ATENDENTE= : Fuci_anted';
DmDados.IBQueryAgenda.ParamByName('Fuci_anted').AsString:=Edit1.Text;
DmDados.IBQueryAgenda.open;
end;
daí da um erro 'IBQueryAgenda: Parameter 'fuci_atend' not found'
procedure Tformagenda.Button2Click(Sender: TObject);
begin
DmDados.IBQueryAgenda.Close;
DmDados.IBQueryAgenda.SQL.Text:= 'SELECT * AGENDA WHERE FUCIONA_ATENDENTE= : Fuci_anted';
DmDados.IBQueryAgenda.ParamByName('Fuci_anted').AsString:=Edit1.Text;
DmDados.IBQueryAgenda.open;
end;
daí da um erro 'IBQueryAgenda: Parameter 'fuci_atend' not found'
GOSTEI 0
Joel Rodrigues
02/10/2012
Você separou os dois pontos (:) do nome do parâmetro, deve ficar junto.
GOSTEI 0
Glebson Guimaraes
02/10/2012
da outro erro Dynamic error sql code = 104 lin,1
daquele outro jeito passa fica na linha debaixo
daquele outro jeito passa fica na linha debaixo
GOSTEI 0
Joel Rodrigues
02/10/2012
Cara, tá faltando também o FROM (SELECT * FROM AGENDA...)
GOSTEI 0
Glebson Guimaraes
02/10/2012
é eu vi ja coloquei
só que quando clico num acontece nada ta igual o outro
só que quando clico num acontece nada ta igual o outro
GOSTEI 0
Glebson Guimaraes
02/10/2012
obrigado pela força kra deu certo sim,
eu tambem tinha colocado a função habilitar ou desabilitar datasource.
e dai nem precisa dizer o resto
kkk
rsrsrrs
eu tambem tinha colocado a função habilitar ou desabilitar datasource.
e dai nem precisa dizer o resto
kkk
rsrsrrs
GOSTEI 0
Joel Rodrigues
02/10/2012
Ah ha, show de bola. Que bom que você conseguiu.
Grande abraço.
Estou encerrando o tópico.
Grande abraço.
Estou encerrando o tópico.
GOSTEI 0
Alisson Santos
02/10/2012
procedure Tformagenda.Button2Click(Sender: TObject);
begin
with DmDados.IBQueryAgenda do
begin
Close;
Sql.Clear;
Sql.Add('select * from agenda');
Sql.Add('where FUCIONA_ATENDENTE = ' + Quoted(Edit1.Text));
Open;
end;
Essa maneira não precisaria criar um parametro para ter o retorno.
GOSTEI 0