Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
ВнизФильтрация данных! Найти похожие ветки
← →
Merlot (2003-06-02 15:43) [0]Всем привет!
Подскажите пожалуйста, как мне программно поставить фильтр на поле с датами. Пытаюсь сделать Table.Filter:="dh1="01.01.2003"";-ругается.
Подскажите как правильно составить?
← →
Stas (2003-06-02 15:48) [1]Дату нужно тоже взять в кавычки
Table.Filter:="dh1=01.01.2003"
← →
Stas (2003-06-02 15:49) [2]Или вот так Table.Filter:="dh1="+#39+01.01.2003+#39
← →
Stas (2003-06-02 15:55) [3]Я вообще запарился вот так : Table.Filter:="dh1="+#39+"01.01.2003"+#39
← →
Mike Kouzmine (2003-06-02 15:57) [4]Table.Filter:="dh1=" + QuotedStr(DateToStr(Dat));
← →
Kirill_S (2003-06-02 16:14) [5]Господа, таже проблема!!!
Варианты :
Table1.Filter:="Submitted=" + QuotedStr(DateToStr(Dmin));
или
Table1.Filter:="Submitted="+#39+"21.04.03"+#39;
при выполнении возникает ошибка: ... - Date, time, or timestamp expression expected, instead found "21.04.03" in filter expression.
Помогите, кто знает!
← →
Mike Kouzmine (2003-06-02 16:16) [6]И тоже парадокс, дбейз или фокс?
← →
Kirill_S (2003-06-02 16:27) [7]to Mike Kouzmine,
база DBISAM
главное, что другие поля нормально фильтруются (строковые) проблема только с датой:(
← →
Sandman25 (2003-06-02 16:29) [8]ShortDateFormat := "dd.mm.yy";
← →
Соловьев (2003-06-02 16:29) [9]
> Kirill_S © (02.06.03 16:14
а поле Submitted точно date?
а если использовать OnFilterRecord?
← →
Mike Kouzmine (2003-06-02 16:30) [10]Значит с датой надо работать по другому. Как не подскажу.
← →
Kirill_S (2003-06-02 16:42) [11]> Соловьев ©,
поле Submitted - TDateTimeField .
с OnFilterRecord пробовал, но что-то неудачно, хотя может и неправильно делал, можешь примерчик подкинуть?
← →
Соловьев (2003-06-02 16:45) [12]
...
Accept := DataSet.FieldByName("Submitted").AsDateTime = Now;
...
← →
Kirill_S (2003-06-02 16:57) [13]> Соловьев ©,
procedure TForm1.Button1Click(Sender: TObject);
type TFilterRecordEvent = procedure(DataSet: TDataSet; var Accept: Boolean) of object;
var
Accept: Boolean;
.......
begin
Table1.Filtered:=true;
Accept := Table1.FieldByName("Submitted").AsDateTime = Now;
end;
правильно, или еще что-то нужно прописывать? таким образом не работает...
← →
Соловьев (2003-06-02 16:59) [14]Table.OnFilterRecord
← →
Kirill_S (2003-06-02 17:09) [15].....
Accept := Table1.FieldByName("Submitted").AsDateTime = Now;
Table1.OnFilterRecord(DataSource1.DataSet, Accept);
end;
при выполнении : Access violation at address 00000000. Read of address 00000000.
← →
Соловьев (2003-06-02 17:13) [16]event есть такой у Table. Кликаешь в Object Inspector на нем дважды.
← →
Kirill_S (2003-06-02 17:24) [17]Огромное спасибо, все работает!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.029 c