Dúvida aniversariantes
bem pessoal, eu utilizei o pesquisar e tem muito muito assunto sobre mostrar os aniversariantes, eu fiquei a tarde toda procurando fiz varios testes mas nao conseguir, eu reparei muito que o pessoal mostrou comandos como
sql.clear;
sql.add();
mas tipo eu to utilizando IB/FB
unicos componentes que eu estou utilizando no Data Module é IBTable e
DataSource e algumas consultas IBQuery e DataSource
o problema que nao conseguir utilizar esses comandos no delphi
sql.clear e sql.add
eu queria saber se alguem poderia me ajudar o que eu preciso para colocar no ibquery os comandos como:
select *
from tabela
where (extract(day from DataAniversario) between :DIAInicial and :DIAFinal)
and extract(month from DataAniversario)=:MES
e o que eu posso colocar no delphi dois edit para colocar a data inicial e a data final e o botao vou utilizar o comando param?
ou um edit mesmo serve e mandar pesquisar ver se a data do aniversariante coincide com a data atual do windows. pode ser coisa simples mesmo obrigado
se alguem puder me ajudar fico grato
bem eu tenho uma table chamado cliente e o campo se chama cli_datanasc
sql.clear;
sql.add();
mas tipo eu to utilizando IB/FB
unicos componentes que eu estou utilizando no Data Module é IBTable e
DataSource e algumas consultas IBQuery e DataSource
o problema que nao conseguir utilizar esses comandos no delphi
sql.clear e sql.add
eu queria saber se alguem poderia me ajudar o que eu preciso para colocar no ibquery os comandos como:
select *
from tabela
where (extract(day from DataAniversario) between :DIAInicial and :DIAFinal)
and extract(month from DataAniversario)=:MES
e o que eu posso colocar no delphi dois edit para colocar a data inicial e a data final e o botao vou utilizar o comando param?
ou um edit mesmo serve e mandar pesquisar ver se a data do aniversariante coincide com a data atual do windows. pode ser coisa simples mesmo obrigado
se alguem puder me ajudar fico grato
bem eu tenho uma table chamado cliente e o campo se chama cli_datanasc
Rodrigo X
Curtidas 0
Respostas
N_informatica
26/04/2008
Caro amigo.
Partindo do princípio de que vc já tem uma conexão ativa com o BD coloque uma IBQuery no seu form e configure a propriedade DataBase apontando para a sua conexão com o DB depois vá na propriedade SQL da IBQuery e insira a seguinte Query:
SELECT * FROM CLIENTE WHERE CLI_DATANASC BETWEEN :Dti AND :Dtf
Onde :Dti = Data Inicial e :Dtf = Data Final que vc vai informar de preferência utilizando o componente DateTimerPicker da paleta de componente Win32.
Não se esqueça de que deve colocar um componente DateTimePicker para cada data sendo assim vc utilizará dois.
No programa quando vc fôr passar estes parâmetros o código ficará como descrito a baixo:
IBQuery1.Close;
IBQuery1.ParamByName(´Dti´).AsDate := DateTimerPicker1.Date;
IBQuery1.ParamByName(´Dtf´).AsDate := DateTimerPicker2.Date;
IBQuery1.Open;
if IBQuery1.Eof then
begin
MessageBox(Handle, ´Nenhum aniversariante encontrado para o período Informado´, ´Aviso´, MB_OK+MB_ICONWARNING);
Abort;
end;
.
.
.
Partindo do princípio de que vc já tem uma conexão ativa com o BD coloque uma IBQuery no seu form e configure a propriedade DataBase apontando para a sua conexão com o DB depois vá na propriedade SQL da IBQuery e insira a seguinte Query:
SELECT * FROM CLIENTE WHERE CLI_DATANASC BETWEEN :Dti AND :Dtf
Onde :Dti = Data Inicial e :Dtf = Data Final que vc vai informar de preferência utilizando o componente DateTimerPicker da paleta de componente Win32.
Não se esqueça de que deve colocar um componente DateTimePicker para cada data sendo assim vc utilizará dois.
No programa quando vc fôr passar estes parâmetros o código ficará como descrito a baixo:
IBQuery1.Close;
IBQuery1.ParamByName(´Dti´).AsDate := DateTimerPicker1.Date;
IBQuery1.ParamByName(´Dtf´).AsDate := DateTimerPicker2.Date;
IBQuery1.Open;
if IBQuery1.Eof then
begin
MessageBox(Handle, ´Nenhum aniversariante encontrado para o período Informado´, ´Aviso´, MB_OK+MB_ICONWARNING);
Abort;
end;
.
.
.
GOSTEI 0