|
|
#1
|
|||
|
|||
Delphi+Access
Делал задачу , в аксес создана таблица, подгружена в делфи и по клику на кнопку идет фильтрация
( Код:
DataModule2.ADOTable1.IndexFieldNames:='Вид оборудования'; Цитата:
* копилятор ошибок не нашел, проблема при тестировании Вот полный исходник http://rapidshare.com/files/24202244...12c5a.rar.html |
#2
|
||||
|
||||
Пока неглядя в исходники возникает вопрос, причем здесь фильтрация если вы задаете поле сортировки?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 08.06.2009 в 07:30. |
#3
|
||||
|
||||
Поскольку вы БД пожалели, посмотреть рабочий вариан не удалось, но вот на что сразу обращу внимание.
1. Поля. Несмотря на то что акцесс позволяет использовать в именах таблиц/полей пробелы, при обращении к ним из Дельфи могут возникнуть проблемы, поэтому обрамляйте их квадратными скобками во избежании неоднозначностей. 2. Фильтр. Обычно принято сначала устанавливать значение для фильтра, а уже потом его активировать, у вас-же получается все наоборот: Код:
procedure TForm4.Button1Click(Sender: TObject); begin if (Length(Edit1.Text)>0) and (Length(Edit2.Text)>0) then DataModule2.ADOTable3.Filtered:=true else DataModule2.ADOTable3.Filtered:=false; DataModule2.ADOTable3.Filter:='Время начала эксперимента>='''+Edit1.Text+''' and Время начала эксперимента<='''+Edit2.Text+''''; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#4
|
|||
|
|||
квадратные скобки помогли ..
Еще впосик, есть колонки в БД "Результаты", числовая , как создать вычисляемое поле, в котором значения числового поля переводятся в другие единицы измерения ? |
#5
|
||||
|
||||
У вас есть на форме AdoTable или AdoQuery правой кнопкой на нем нажмите и выберите создать новое поле. Укажите тип поля Integer и поставьте флаг Calculated. В событии OnCalcField вычислите нужное значение.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |