Neste pequeno artigo vamos criar uma simples pesquisa utilizando o DBExpress e ClientDataSet, com um Select parametrizado
Vamos tomar como base que tenhamos uma tabela de clientes e que tenha os seguintes
campos, ID, NOME, CIDADE.
Coloque um componente SQLDataSet da paleta DBExpress e ligue a propriedade
SQLConnection à conexão do seu banco. Na propriedade
CommandText coloque o seguinte código:
select ID, NOME, CIDADE from CLIENTE where NOME like :PNOME
Dê Ok e na propriedade Params, configure o parâmetro DataType
para ftString. Coloque agora um DataSetProvider da paleta DataAccess e mude
a propriedade
DataSet apontando para o sqlDataset1, que utilizamos anteriormente.
Coloque
agora um ClientDataSet da paleta DataAccess e mude a propriedade name para
cdsPesqCliente
e a propriedade ProviderName para DataSetProvider1. Ok! Configuramos os componentes,
então
coloque agora um botão e o seguinte código em seu evento onClick:
With cdsPesqCliente do
begin
Close;
FetchParams; //Traz os parâmetros da SQL para o ClientDataSet
Params.ParamByName('pNOME').AsString := edtNome.Text+'%';
Open;
end;
Este código está alimentando o parâmetro, com o valor
digitado no edtNome, que é um
componente TEdit. Para testar, você deve colocar esse campo também
em seu formulário.
Para ver a pesquisa em funcionamento, basta agora colocar um DataSource e
um DbGrid. Aponte o DBGrid ao Datasource e este ao o cdsPesqCliente.
Qualquer dúvida, basta me mandar um e-mail.
Por: Rubens Antunes (rubinho_jf) - desenvolvedor Delphi
desde de 2004 e autor do livro "Delphi, Faça
Uma Aplicação Comercial".
Contato: rubensantunes@yahoo.com.br
|