Fórum componente timer #138260
18/02/2003
0
é o seguinte galera:
eu queria fazer o meu banco de dados gerar informações para mim de tempo em tempo(20 a 20 minutos) mas acho que isso é impossivel.
então vou apelar para o componente Timer do delphi só que não sei botar ele para funcionar. como faço isso.
eu queria fazer o meu banco de dados gerar informações para mim de tempo em tempo(20 a 20 minutos) mas acho que isso é impossivel.
então vou apelar para o componente Timer do delphi só que não sei botar ele para funcionar. como faço isso.
Mineiro
Curtir tópico
+ 0
Responder
Posts
18/02/2003
Carnette
é só colocar o tempo que voce deseja que a função ONTIMER seja disparada voce coloca o valor na propriedade INTERVAL que o evento OnTimer é disparador...e ali vc coloca todos os comandos que deseja.
1000 = 1 segundo
(1000 * 60) * 20 = 20 minutos
20000 =
1000 = 1 segundo
(1000 * 60) * 20 = 20 minutos
20000 =
Responder
Gostei + 0
17/07/2014
P. Azeredo
Então, eu tenho um problema...
Eu coloquei no ONTIMER assim:
dm.cdsusumsg.close;
dm.sqlusumsg.sql.clear;
dm.sqlusumsg.sql.Text:='select * from usumsg where hora;<:p1 and status =:p2 and codigousu=:p3';
dm.sqlusumsg.parambyname('p2').asString := 'Enviado';
dm.sqlusumsg.parambyname('p3').AsString := (dm.cdsusumsg.fieldByname('codigousu').asstring);
dm.cdsusumsg.open;
if not Dm.cdsusumsg.IsEmpty then
Application.MessageBox('Você tem uma nova mensagem', 'Informação', 0);
Ou seja, ele vai procurar na tabela USUMSG, onde o usuário seja o que estiver logado e se tiver alguma mensagem com o status ENVIADO, ele mostra uma msg para aquele usuário...
Porém, nada está acontecendo... eu envio uma mensagem... ai amsg fica com status de enviado mas não acontece nada... o timer não avisa que chegou uma nova mensagem.
Eu coloquei no ONTIMER assim:
dm.cdsusumsg.close;
dm.sqlusumsg.sql.clear;
dm.sqlusumsg.sql.Text:='select * from usumsg where hora;<:p1 and status =:p2 and codigousu=:p3';
dm.sqlusumsg.parambyname('p2').asString := 'Enviado';
dm.sqlusumsg.parambyname('p3').AsString := (dm.cdsusumsg.fieldByname('codigousu').asstring);
dm.cdsusumsg.open;
if not Dm.cdsusumsg.IsEmpty then
Application.MessageBox('Você tem uma nova mensagem', 'Informação', 0);
Ou seja, ele vai procurar na tabela USUMSG, onde o usuário seja o que estiver logado e se tiver alguma mensagem com o status ENVIADO, ele mostra uma msg para aquele usuário...
Porém, nada está acontecendo... eu envio uma mensagem... ai amsg fica com status de enviado mas não acontece nada... o timer não avisa que chegou uma nova mensagem.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)