Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Бази";
Поточний архів: 2002.01.08;
Завантажити: [xml.tar.bz2];

Вниз

Установка фільтра в TDStringGrid Знайти схожі гілки


phantom2040   (2001-12-04 13:27) [0]

Люди помогите пожалуйста!
Проблема с синтаксисом, нужно установить фильтр в TDStringGrid, из поля TEedit1, но не один фильтр а несколько то есть я хочу установит несколько фильтров, значит следующий пример работает:
DataModule.DataSource.DataSet.Filter:="name="+QuotedStr(Edit1.Text+"*");
но установка 2 фильтров типа
DataModule.DataSource.DataSet.Filter:="name="+QuotedStr(Edit1.Text+"*")and "io="+QuotedStr(Edit2.Text+"*");
почему-то не прокатывает, хотя когда пишу непосредственнов свойстве Filter все работает, информация по справкам довольно скудная, и сам я не смого разобраться с синтаксисом, помогите??



Slava   (2001-12-04 13:43) [1]

Св-во Filter имеет тип String.
У тебя то, что справа от ":=" имеет тип String?



Igorok   (2001-12-04 15:05) [2]

попробуй так, проще и наглядней чем строки суммировать....

DataSource1.DataSet.Filter := Format("(name Like %s) and (io Like %s)",[QuotedStr(Edit1.Text+"*"),QuotedStr(Edit2.Text+"*")]);



Котелок   (2001-12-05 01:00) [3]

DataModule.DataSource.DataSet.Filter:="name="+QuotedStr(Edit1.Text+"*")+" and "+"io="+QuotedStr(Edit2.Text+"*");

and Тоже в фильтр входит его надо добавлять к строке;



EsKor   (2001-12-06 03:14) [4]

Замечание от "Котелка" совершенно справедливо, поскольку Filter имеет текстовый (строковый) тип, т.е. формат должен быть такой:
Filter:="условие";. "условие" м.б. "каким угодно" сложным.
Дополнительные "грабли" существуют при задании фильтра следующего вида:
X = "техт". В этом случае необходимо формировать строку в строке, типа
Filter := "X=""" + ComboBox.Text + """".
Кроме того, если используете операторы типа AND, OR и т.п., заключайте выражения до и после них в скобки. Не знаю как в Фильтре, а согласно синтаксису языка Object Pascal эти операторы имеют достаточно высокий приоритет, т.е. запись x = a AND b, будет обрабатываться как x = (a AND b),
а x > a AND x < b, может предстать в виде x > (a AND b) < b с соответствующими последствиями.



сторінки: 1 вся гілка

Форум: "Бази";
Поточний архів: 2002.01.08;
Завантажити: [xml.tar.bz2];

наверх









Пам'ять: 0.82 MB
Час: 0.031 c
1-22010
dorixe
2001-12-17 19:21
2002.01.08
treeview on dblclick


7-22440
Rumrunner
2001-05-13 00:32
2002.01.08
У Win98 є можливість надати спільний доступ до Інтернету для локальної мережі


1-22257
Dmitry1
2001-12-14 16:53
2002.01.08
Доброго часу доби


4-22460
Dimich
2001-11-01 08:49
2002.01.08
Люди-HELP !!! Дисер горить !!!


7-22419
пастор
2001-09-21 10:31
2002.01.08
У мене Celeron 800 варто його апгрейтити на Pentium III 800?





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в&#39;єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська