Jump to content

Filter grid checkComboBox


OlegTimkiv

Recommended Posts

Добрый день! 

Пытаюсь сделать такой фильтр.  

Так работает :

'CompanyName LIKE ''%Alfreds Futterkiste%'' and ContactName = ''Maria Anders'' or ContactName = ''Ana Trujillo'''

Добавляя скобки или in ошибка "Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или вступают в конфликт друг с другом" .

'CompanyName LIKE ''%Alfreds Futterkiste%'' and (ContactName = ''Maria Anders'' or ContactName = ''Ana Trujillo'')' 
'CompanyName LIKE ''%Alfreds Futterkiste%'' and ContactName in (''Maria Anders'', ''Ana Trujillo'')'

Хотя в документации есть такой пример 

Country IN (SELECT Country from Country where Currency = '_Franc')

 

Filter.jpg

Link to comment
Share on other sites

5 minutes ago, Sherzod said:

Добрый день,

Есть тестовый случай для воспроизведения?

procedure TMainForm.UniDBGrid1ColumnFilter(Sender: TUniDBGrid; const Column: TUniDBGridColumn; const Value: Variant);
begin
  if UniMainModule.ADOQuery1.Active then
  begin
     UniMainModule.ADOQuery1.Filter :=
      'CompanyName LIKE ''%Alfreds Futterkiste%'' and (ContactName = ''Maria Anders'' or ContactName = ''Ana Trujillo'')' ;
      //'CompanyName LIKE ''%Alfreds Futterkiste%'' and ContactName in (''Maria Anders'', ''Ana Trujillo'')' ;
      //'CompanyName LIKE ''%Alfreds Futterkiste%'' and ContactName = ''Maria Anders'' or ContactName = ''Ana Trujillo''';
     UniMainModule.ADOQuery1.Filtered := true;
  end;
end;

Для теста думаю достаточно, могу сделать с формированием строки фильтра.  

GridFiltering.7z

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...