-
Zdrasduviyti moy vapros prastoy ya xacu zdelit filter v Ehlib. Vapros takoy kak filtiravat AdoDataset1+Dbgrideh1 umina ni palucayitsa.
-
В DBGridEh была фича, что имена полей сравнивались case sensetive. Надо было if UpperCase(FieldName) = 'TTT' then ... Хотя это к отрисовке относилось, что там с фильтрацией - не в курсе.
-
Ya xaroso ni panimal mojici napisat po padrobni
-
> AdoDataset1 ? он прекрасно сам умеет фильтровать полученные данные. а для собственно получения фильтры не нужны, нужны запросы с "ограничителями", они и более функциональны и в основном быстрее работают (например если ограничивать по индексированному полю).
-
Mojiti napisat padrobna.Patamusta ya deluyu i umina ni palucayitsa. Niznayu pacumu! Tam v help Ehlib napisina shto dalijna bit DataSetDriverEh1 i MemTableEh1. No ya deluyu eta no ni palucayitsa.
-
> No ya deluyu eta no ni palucayitsa.
Показывай, что не получается.
-
DataSetDriverEh1.ProviderDataSet:=ADODataSet1;
MemTableEh1.DataDriver:=DataSetDriverEh1;
DataSource1.DataSet:=MemTableEh1;
DBGridEh1.DataSource:=DataSource1;
DBGridEh1.STFilter.Visible:=true; DBGridEh1.STFilter.Local:=true;
ADODataSet1.Open; MemTableEh1.Open;
ADODataSet1.Filtered:=true; MemTableEh1.Filtered:=true;
ya deliyu tak eta dalijna bit no ni bivayit shtota ni xvatayit
-
> ya deliyu tak eta dalijna bit no ni bivayit shtota ni xvatayit
Неправильно делаешь. Возьми один DBGridEh, один DataSource, один ADODataSet DataSource1.DataSet := ADODataSet1;
DBGridEh1.DataSource := DataSource1;
убери MemTableEh вообще, Убери DataSetDriverEh1 Попробуй на такой простой связке.
-
Toje ni palucayitsa ya pervit raz tak delil no ni palucalsa.a sprafka ehlib qavarit sto nada DataSetDriverEh1 patamusta ehlib ni mojit samastoyatelno delit filter. A ti spasiba Ega23 patamusta xocish pamaqat mina
-
> Toje ni palucayitsa ya pervit raz tak delil no ni palucalsa
Ещё раз: 1. заведи новый проект. 2. положи на форму ADOConnection, настрой соединение, выстави ADOConnection.Connected := True (чтобы убедиться, что есть соединение). 2. Положи на форму ADODataSet, задай ему какой-нибудь простой запрос, например, Select 1 задай Connection, выстави Active := True 3. положи на форму DataSource, в качестве DataSet пропиши ему ADODataSet 4. Положи на форму DBGridEh, укажи ему DataSource. Убедись, что ты видишь в DBGridEh одну запись со значением 1. Сделай для начала это.
-
> Ega23 © (15.12.10 16:30) [9]
Человек же тебе явно сказал, что с фильтрами в DBGridEh мучается. А они, начиная с версии библиотеки 5.0, работают исключительно с тем TDataSet, которые поддерживает интерфейс IMemTableEh.
В комплекте поставки библиотеки идут адаптеры для популярных библиотек (IBX, ADO, FIBPlus), а сам TDBGridEh фильтрует исключительно TMemTableEh, ибо оно в памяти. Можно конечно свой DataSet написать, который будет поддерживать IMemTableEh, но это БДСМ еще тот.
Если же увязать DBGridEh напрямую с набором данных, как ты говоришь, то фильтра, группировка по колонке, выбор "галочек" в фильтре "a-la M$Excel" - обломится. Такова, увы, политика партии. Подозреваю, что она корнями из-за вертикальной совместимости со старыми версиями.
-
> А они, начиная с версии библиотеки 5.0
А, тогда прошу прощения. Я EhLib только версии 3.6 использовал (да и то 3 года назад).
-
Problema zdez umina ehlib 5.02.i zdeluyu kak zkazal bise. Pajalista pamaqiti mina yesli mojna mayamusta eta mina nujna. shto mina zdelit com problema?
-
> umina ehlib 5.02
Извини, но лично я в данном вопросе помочь не могу. Как сказал
> PEAKTOP © (15.12.10 17:06) [10]
> начиная с версии библиотеки 5.0, работают исключительно > с тем TDataSet, которые поддерживает интерфейс IMemTableEh.
-
> а сам TDBGridEh фильтрует исключительно TMemTableEh, ибо оно в памяти. ADODataSet тоже в памяти... и что не умеет?
> MemTableEh это что то типа клиентского датасета? ну судя по провайдеру данных... тогда имеет смысл до собственно фильтрации, еще в дизайн тайм проверить связку, данные там есть? (в гриде должно отразится) > ADODataSet1.Open;
> ADODataSet1.Filtered:=true; > MemTableEh1.Filtered:=true; вот это явно лишнее, одно не используется, а второе еще и вредное (с ехгридом конфликтов не будет? пользуется тем же самым...)
-
в Ehlib фильтре есть такая проблема: фильтрует только по оному столбцу, а потом сообщает что аргументы имеют какой та ни такой ни сякой тип... в чем проблема?
-
> в чем проблема? типа такого сякого нет. ваш К.О.
|