danielrgoes Postado Maio 29, 2009 Denunciar Share Postado Maio 29, 2009 Bom Dia pessoalgostaria de saber como eu faço para comparar a data atual com o banco de dados FireBird para ver se é aniversario hjto tentando fazer o cod dData := date; // pega a data modulo.cds_funcionario.close; modulo.sql_funcionario.SQL.clear; modulo.sql_funcionario.SQL.Add('SELECT * FROM FUNCIONARIO '); modulo.sql_funcionario.SQL.Add('WHERE DT_ANIVERSARIO = '+ DateToStr(dData) ); modulo.cds_funcionario.Open();mais esta dando erro alguém pode me ajudar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Maio 29, 2009 Autor Denunciar Share Postado Maio 29, 2009 pessoal resolvi ai vai a soluçao sData := FormatDateTime('dd''.''mm''.''yyyy',now); sql := 'SELECT * FROM FUNCIONARIO WHERE DT_ANIVERSARIO = '+Chr(39)+ sData +Chr(39); modulo.cds_funcionario.close; modulo.sql_funcionario.SQL.clear; modulo.sql_funcionario.SQL.Add(sql); modulo.cds_funcionario.Open();o firebird só aceita . em vez de barra e a data tem que ser entre aspas simples por isso o Chr(39)valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Douglas Soares Postado Maio 29, 2009 Denunciar Share Postado Maio 29, 2009 Putz, tava desde de cedo me matando para descobrir isso pra você, eu consegui, se precisar tá aqui:modulo.cds_funcionario.close;modulo.sql_funcionario.SQL.clear;modulo.sql_funcionario.SQL.Add('SELECT CODIGO, USUARIO, SENHA, TIPO, DT_ANIVERSARIO, extract(day from dt_aniversario) as dia, extract(month from dt_aniversario) as mes '+ 'FROM '+ 'FUNCIONARIO '+ 'WHERE '+ 'extract(day from dt_aniversario) = :c_dia '+ 'and extract(month from dt_aniversario) = :c_mes');modulo.cds_funcionario.FetchParams;modulo.cds_funcionario.Params.ParamByName('c_dia').AsInteger := strtoint(copy(datetostr(date),1,2));modulo.cds_funcionario.Params.ParamByName('c_mes').AsInteger := strtoint(copy(datetostr(date),4,2));modulo.cds_funcionario.Open;Obs: ali no SELECT, você tem que especificar todos os seus fields, eu coloquei * mas não funcionou, porcausa do extract....se precisar usa ae, ehehe!Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Maio 29, 2009 Autor Denunciar Share Postado Maio 29, 2009 Putz, tava desde de cedo me matando para descobrir isso pra você, eu consegui, se precisar tá aqui:modulo.cds_funcionario.close;modulo.sql_funcionario.SQL.clear;modulo.sql_funcionario.SQL.Add('SELECT CODIGO, USUARIO, SENHA, TIPO, DT_ANIVERSARIO, extract(day from dt_aniversario) as dia, extract(month from dt_aniversario) as mes '+ 'FROM '+ 'FUNCIONARIO '+ 'WHERE '+ 'extract(day from dt_aniversario) = :c_dia '+ 'and extract(month from dt_aniversario) = :c_mes');modulo.cds_funcionario.FetchParams;modulo.cds_funcionario.Params.ParamByName('c_dia').AsInteger := strtoint(copy(datetostr(date),1,2));modulo.cds_funcionario.Params.ParamByName('c_mes').AsInteger := strtoint(copy(datetostr(date),4,2));modulo.cds_funcionario.Open;Obs: ali no SELECT, você tem que especificar todos os seus fields, eu coloquei * mas não funcionou, porcausa do extract....se precisar usa ae, ehehe!Abraços!Cara muito obrigado mesmo pela atençaoeu testei também a sua ideia e funcionou certinho muito bom ate melho que o meupois o meu é tipo um gambi não é?valeu mesmo abraçossssss Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Douglas Soares Postado Maio 29, 2009 Denunciar Share Postado Maio 29, 2009 Por nada!, estou aqui pra isso! ehehe!Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
danielrgoes
Bom Dia pessoal
gostaria de saber como eu faço para comparar a data atual com o banco de dados FireBird para ver se é aniversario hj
to tentando fazer o cod
dData := date; // pega a data
modulo.cds_funcionario.close;
modulo.sql_funcionario.SQL.clear;
modulo.sql_funcionario.SQL.Add('SELECT * FROM FUNCIONARIO ');
modulo.sql_funcionario.SQL.Add('WHERE DT_ANIVERSARIO = '+ DateToStr(dData) );
modulo.cds_funcionario.Open();
mais esta dando erro
alguém pode me ajudar
Link para o comentário
Compartilhar em outros sites
4 respostass 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.