Consulta SQL em paradox
Nesta consulta utilizaremos comandos em sql para fazer uma consulta entre um intervalo de datas. Dentro do sistema de despesas, crie o formulário abaixo:
Coloque o componente SQL que está na guia BDE chamado Query (fica ao lado do table) e altere as propriedades:
Name: qryDespesa
SQL: Clique no botão ao lado e digite: Select * From Despesa where data between :datainicial and :datafinal
Observação:
-
Select * From Despesa --> faz a seleção dos registros de todos os campos (* - asterisco quer dizer todos) da tabela despesa
- where data between :datainicial and :datafinal -->onde o campo data estiver no intervalo entre as datas
Params: Clique no botão ao lado e na janela que abriu, deverá aparecer dois parâmetros: datainicial e datafinal. Selecione datainicial e na propriedade DataType coloque ftDate. Faça isso também para o datafinal.
Coloque o componente DataSource da guia Data Access, e altere as propriedades:
Name: dsDespesa
DataSet: qryDespesa
Coloque o componente DBGrid da guia Data Controls , e altere as propriedades:
Name: grdDespesa
DataSource: dsDespesa
Codificando o botão Pesquisar
if mskDataInicial.Text = '' then
begin
Application.MessageBox('Informe a Data Inicial','Data',mb_IconInformation);
mskDataInicial.SetFocus;
exit;
end;
if mskDataFinal.Text = '' then
begin
Application.MessageBox('Informe a Data Final','Data',mb_IconInformation);
mskDataFinal.SetFocus;
exit;
end;
qryDespesa.Close; //Fecha a tabela - toda consulta em SQL há necessidade de fechar a tabela primeiro
qryDespesa.ParamByName('datainicial').AsDate :=
strTodate(mskDataInicial.Text);
qryDespesa.ParamByName('datafinal').AsDateTime :=
strTodate(mskDataFinal.Text);
qryDespesa.Open;
Observação: Na segunda linha, é convertida a data digitada no maskedit (strTodate) sendo passada para o parâmetro datainicial.
Codificando o botão Sair
Close;
No evento onShow, digite o código:
mskDataInicial.Text :='';
mskDataFinal.Text :='';
No evento onClose, digite o código:
qryDespesa.Close;