Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц, летом дешевле!

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2007, 17:28   #1
Markus
Новичок
Джуниор
 
Регистрация: 26.03.2007
Сообщений: 2
Восклицание Ошибка при фильтрации!

вот такой вопрос:
есть реализованная фильтрация ClientDataSet:
Код:
...
if FilterForm.PDJXPCheckBox5.Checked=True then begin
   with FilterForm.PDJXPCheckListBox1 do begin
   for i:=0 to Count-1 do begin
   if Checked[i] then
   r:=r+'or [Metro]='+QuotedStr(FilterForm.PDJXPCheckListBox1.Items[i]);
   end;
   for i:=0 to Count-1 do begin
   if FilterForm.PDJXPCheckListBox1.Checked[i]=False then s:=s+''
   else s:=s+'and ('+Copy(r, 4, MaxInt)+ ')';
   end;
   end;
   end;
...
if s<>'' then begin
Komponents.ClientDataSet2.Filter:=Copy(s, 5, MaxInt);
Komponents.ClientDataSet2.IndexFieldNames:='Kolichestvo komnat';
Komponents.ClientDataSet2.Filtered:=True;
FilterForm.Close;
end else if s='' then
Komponents.ClientDataSet2.Filter:=s;
FilterForm.Close;
end;
работает все нормально. Но если в PDJXPCheckListBox1 поставить галочки на
больше 34-х строках и нажать кнопку "фильтр", то программа уходит в
ошибку. Как я понимаю слишком длинная получается формула сравнения. Но уменьшить количество строк в итемс в PDJXPCheckListBox1 ни как нельзя, как можно заметить из кода, это станции метро.... Ни как не могу понять что сделать. Очень прошу помочь!
Markus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц, летом дешевле!

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка Devourer12345 Microsoft Office Access 2 10.08.2008 20:24
ошибка фильтрации Dozent Общие вопросы Delphi 5 25.06.2008 22:52
Ошибка Freeman Общие вопросы C/C++ 3 26.05.2008 19:43
ошибка ben95 Общие вопросы Delphi 5 06.02.2008 23:25