![]() |
|
|
#1
|
|||
|
|||
|
Несколько дней мучаюсь с фильтрами, не пойму что я не так делаю, подскажите пожалуйста!!
Цитата:
|
|
#2
|
||||
|
||||
|
Попробуй так
Filter:='IMSI LIKE '+Chr(39)+edit1.Text+'%'+Chr(39); Chr(39) дает ' -(Апостраф) |
|
#3
|
||||
|
||||
|
Так что мучаетесь? Ошибка выходит или неправильно на ваш взгляд фильтруется? В чем проблема то?
|
|
#4
|
|||
|
|||
|
Цитата:
В мое варианте все как бы работает, но ничего визуально не происходит. |
|
#5
|
||||
|
||||
|
В целях эксперимента, замените:
Код:
DBGrid1.DataSource.DataSet.Filter:='(IMSI LIKE '''+edit1.Text+'%'')'; Код:
DBGrid1.DataSource.DataSet.Filter:='(IMSI = ''qwerty'')'; |
|
#6
|
|||
|
|||
|
Цитата:
|
|
#7
|
||||
|
||||
|
Киньте весь код, выполняемый при нажатии на кнопку.
|
|
#8
|
|||
|
|||
|
Цитата:
|
|
#9
|
||||
|
||||
|
Встаньте на строку
Код:
if (edit1.Text<>'') then |
|
#10
|
|||
|
|||
|
Строка стала зеленой с меткой красным перечеркнутым кругом вместо красного круга, дальше никаких действий не происходило
|
|
#11
|
|||
|
|||
|
помогите пожалуйста, очень нужно для диплома
|
|
#12
|
||||
|
||||
|
Я не совсем понял, что вы там описали про зеленые крестики...
Делаем так (комментим весь ваш код и прописываем showmessage): Код:
procedure TfmStatzv.Button1Click(Sender: TObject);
begin
{if (edit1.Text<>'') then
begin
DBGrid1.DataSource.DataSet.Filter:= '(IMSI = ''qwerty'')';
DBGrid1.DataSource.DataSet.Filtered:=true;
end
else
DBGrid1.DataSource.DataSet.Filtered:=false;}
ShowMessage('test');
end; |
|
#13
|
||||
|
||||
|
тогда уж так:
Код:
if DBGrid1.DataSource.DataSet.Filtered then
ShowMessage(DBGrid1.DataSource.DataSet.Filter)
else
ShowMessage('!Filter'); |
|
#14
|
|||
|
|||
|
Цитата:
|
|
#15
|
||||
|
||||
|
Код:
procedure TfmStatzv.Button1Click(Sender: TObject);
begin
if (edit1.Text<>'') then
begin
DBGrid1.DataSource.DataSet.Filtered:=false;
DBGrid1.DataSource.DataSet.Filter:= '(IMSI LIKE '''+edit1.Text+'%'')';
DBGrid1.DataSource.DataSet.Filtered:=true;
end
else
DBGrid1.DataSource.DataSet.Filtered:=false;
end; |