Показать сообщение отдельно
  #4  
Старый 19.05.2015, 20:31
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, можно как-то так:
Запрос в ADOQuery1 (подправишь имена таблицы и поля):
Код:
SELECT COUNT(1) FROM Table WHERE Event_TS BETWEEN :ts_Start and :ts_end
Код в таймере:
Код:
procedure TForm1.Timer1Timer(Sender : TObject);
var
  ts_start, ts_end : TDateTime;
begin
  Timer1.Enabled := False;
  Try
    // пусти интервал проверки -1..+10 минут
   ts_start := Now - 1/(24*60);
   ts_end := Now + 10/(24*60);
   ADOQuery1.Active := False;
   ADOQuery1.Params.ParamByName('ts_start').AsDateTime := ts_start;
   ADOQuery1.Params.ParamByName('ts_end').AsDateTime := ts_end;
   ADOQuery1.Active := True;
   If ADOQuery1.RecordCount > 0 Then
     If ADOQuery1.Fields[0].AsInteger > 0 Then
        PlaySound('zvuk.wav');
  Finally
    ADOQuery1.Active := False;
    Timer1.Enabled := True;
  End;
end;

Ну вот как-то так.
Ответить с цитированием