![]() |
|
#1
|
|||
|
|||
![]() Имеется поле "Дата". Нужно написать в коде нечто подобное:
if 'текущая дата' -(минус) 'Дата' > 30 then Окажите пожалуйста посильную помощь, не могу додуматься... |
#2
|
||||
|
||||
![]() Цитата:
Получить текущую дату - функция Date. Получить текущую дату и время - функция Now. Пример: Код:
if Date - Int(Table1.FieldByName('Дата').AsDateTime) > 30 then |
#3
|
|||
|
|||
![]() Цитата:
Сделел так Код:
if Date - Int(datamodule3.ADOTable1.FieldByName('Дата').AsDateTime) > 25 then И получилось, что проверка условия выполняется только для первой строки таблицы, а нужно проверять всю таблицу. Подскажите где подкрутить? |
#4
|
||||
|
||||
![]() Цитата:
Чтобы выполнить какое либо действие для всех записей таблицы, нужно по ним пройтись циклом. Пример: Код:
procedure TForm1.Button1Click(Sender: TObject); begin datamodule3.ADOTable1.First; // Становимся на первую запись таблицы while not datamodule3.ADOTable1.Eof do // Пока записи не закончились: begin if Date - Int(datamodule3.ADOTable1.FieldByName('Дата').AsDateTime) > 25 then begin Memo1.Lines.Add('Условие выполняется в записи №'+IntToStr(datamodule3.ADOTable1.RecNo)); end; datamodule3.ADOTable1.Next; // Переходим к следующей записи таблицы end; end; p.s. Ну и конечно используя TADOQuery вместо TADOTable можно SQL-запросом сразу выбрать только удовлетворяющие условию записи. |