Carlos Alberto Dalmasio Postado Março 30, 2015 Denunciar Share Postado Março 30, 2015 Boa tarde. Estou com o seguinte problema. Tenha uma tabela de pedidos e preciso comparar entre duas datas. Meu código é o seguinte: with dm.SQL_vendas do Close; clear; SQL.add ('select * from vendas'); SQL.add ('where ped-data BETWEEN :data inicial AND :data_final'); ParamByName('data_inicial').value := data inicial.Text; ParamByName ('data final ').value := data final.Text; Open; if RecordCount = 0 then ShowMessage "Pedido Não encontrado" Se usoo código no editor de SQL, passando as datas '2015-03-26" and '2015-04-26' funciona normalmente executando dentro do Form, não consigo encontrar pedidos. Onde estou errando? Agradeço a ajuda. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Março 31, 2015 Denunciar Share Postado Março 31, 2015 Provavelmente o parâmetro que você está passando em ParamByName('data_inicial').value := data inicial.Text; ParamByName ('data final ').value := data final.Text; está no formato dd/mm/aaaa. O Mysql usa aaaa-mm-dd. A solução pode ser de duas formas: Ou você cria uma função para inverter a string de sua data, Ou você usa a ParamByName('data_inicial').value := StrToDate(data_inicial.Text); ParamByName ('data_final').value := StrToDate(data_final.Text); A segunda opção sempre deu problemas quando eu usava BDE como componente para acesso ao banco. Cuidado com o espaço no parâmetro 'data final '. Será melhor usar 'data final' Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Carlos Alberto Dalmasio
Boa tarde. Estou com o seguinte problema.
Tenha uma tabela de pedidos e preciso comparar entre duas datas.
Meu código é o seguinte:
with dm.SQL_vendas do
Close;
clear;
SQL.add ('select * from vendas');
SQL.add ('where ped-data BETWEEN :data inicial AND :data_final');
ParamByName('data_inicial').value := data inicial.Text;
ParamByName ('data final ').value := data final.Text;
Open;
if RecordCount = 0 then
ShowMessage "Pedido Não encontrado"
Se usoo código no editor de SQL, passando as datas '2015-03-26" and '2015-04-26' funciona normalmente
executando dentro do Form, não consigo encontrar pedidos.
Onde estou errando?
Agradeço a ajuda.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.