Boa Noite, sou iniciante em Delphi, estou com dificuldade com uma consulta, utilizo banco de dados em Access, um AdoQuery, Data Source, DbConection.
Tenho uma DbGrid onde utilizo uma consulta com vários campos e duas datas, consegui com o código abaixo filtrar por vários campos, porém quando eu insiro um novo registro ele não aparece na consulta, somente os registros que ja existiam no banco. O que esta de errado com meu código? Como faço pra aparecer na consulta os novos registros?
<>
procedure TFrm_Cadastro.SpeedButton2Click(Sender: TObject);
Begin;
Frm_Cadastro.Tbl_Clientes.Close;
Frm_Cadastro.Tbl_Clientes.SQL.Clear;
Frm_Cadastro.Tbl_Clientes.SQL.Add('Select * from Tbl_Cad_Clientes where Cli_Nome like' + QuotedStr(txt_buscar_nome.text+'%'));
Frm_Cadastro.Tbl_Clientes.SQL.Add('and Cli_Duplicata like ' + QuotedStr(txt_buscar_duplicata.text+'%'));
Frm_Cadastro.Tbl_Clientes.SQL.Add('and Cli_Rota like'+ QuotedStr(txt_buscar_rota.text+'%'));
Frm_Cadastro.Tbl_Clientes.SQL.Add('and Cli_Situacao like'+QuotedStr(txt_buscar_situacao.text+'%'));
Frm_Cadastro.Tbl_Clientes.SQL.Add('and Cli_Cidade like'+QuotedStr(txt_buscar_cid.text+'%'));
Frm_Cadastro.Tbl_Clientes.SQL.Add('and Cli_Vendedor like'+QuotedStr(txt_buscar_vend.text+'%'));
Frm_Cadastro.Tbl_Clientes.Sql.Add('and Cli_DataVenda Between :dataini and :datafim');
Frm_Cadastro.Tbl_Clientes.Params.ParamByName('dataini').Value :=StrToDate(MaskEdit1.text);
Frm_Cadastro.Tbl_Clientes.Params.ParamByName('datafim').Value :=StrToDate(MaskEdit2.text);
Frm_Cadastro.Tbl_Clientes.Open;
Rel_Clientes.ShowReport();
end;
<>
Na primeira imagem mostra que o novo registro existe dentro do DbGrid.
na segunda imagem ao aplicar o filtro mostra apenas os registros antigos