Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите в чем ошибка?


Страницы:   1 2 3 4

Mariya ©   (2007-09-12 08:56:00) 

var strFilter: string;
       begin

tbmain.Filter := '';

if Trim(Edit1.Text) <> '' then
begin

 tbmain.Filter := 'Фамилия='+QuotedStr(Edit1.Text+'*');
 strFilter :=tbmain.Filter;
 tbmain.Filtered:=True;
end;

if Trim(Edit2.Text) <> '' then
begin
if (strFilter <> '') then tbmain.Filter:= strFilter +'Имя='+QuotedStr(Edit2.Text+'*');
end;
результат у меня должен быть виден на DBGrid1. Edit1-вводим фамилию, в Edit2-имя, фильтр по обоим полям не работает, выдает ошибку. Фильтр задан не правильно. Заранее спасибо.


Mariya   (2007-09-17 07:36:00) [1]

Доброго понедельника!


Германн   (2007-09-14 17:06:00) [2]


> Подумаю и попробую дома, всем удачных выходных!
>

Доживем до понедельника!
:-)


Mariya   (2007-09-14 16:59:00) [3]

Спасибо всем засодействие, рабочий день закончился! Подумаю и попробую дома, всем удачных выходных!


Anatoly Podgoretsky   (2007-09-14 16:13:00) [4]

Тоже показано, формальный синтаксис указан в [27] и достаточно много примеров.
В [45] лучше заменить TAdoQuery на TAdoDataset


Washington   (2007-09-14 16:04:00) [5]

Не проще [55]?


Mariya   (2007-09-14 15:53:00) [6]

спасибо, пробую... через минут 15 чувствую снова закидаю вопросами...


clickmaker   (2007-09-14 15:43:00) [7]


> [61] Mariya   (14.09.07 15:40)

это в дизайне
Grid.DataSource = DataSource1
DataSource1.DataSet = Query1
это "в кнопке"
Query1.SQL.Text := '...';


Mariya   (2007-09-14 15:40:00) [8]

Примерно я поняла, что писать (за синтаксис не ручаюсь верный), а вот уже в кнопке как это написать? что вот я ввела часть текста, покажите мне весь текст? Как это связать?


Anatoly Podgoretsky   (2007-09-14 15:37:00) [9]

Смотри clickmaker ©   (14.09.07 13:02) [45]


Сергей М.   (2007-09-14 15:32:00) [10]


> как писать запрос и где?


Текст запроса должен фигурировать в кач-ве значения св-ва SQL: TStrings компонента TQuery.

Попросту говоря, вместо танцев с бубном вокруг TTable.Filter/Filtered танцуешь с чуть другим бубном вокург TQuery.SQL, примерно вот так (см. выше по теме про содержимое текста запроса):

QueryMain.SQL := 'SELECT ... FROM ... WHERE';
QueryMain.Active := True;


stanislav   (2007-09-14 15:30:00) [11]

Mariya   (14.09.07 15:25) [57]
Все не читал, но незаметил где опубликованная строка, которая получается в результате формирования фильтра.


Mariya   (2007-09-14 15:25:00) [12]


> Еще пару сотен сообщений и уговорим.

Меня не нужно уговаривать, мне нужно помочь :)
Вы не могли бы более детальнее объяснить как писать запрос и где?


Плохиш   (2007-09-14 15:15:00) [13]


> Anatoly Podgoretsky ©   (14.09.07 15:07) [53]
> > Плохиш  (14.09.2007 14:17:51)  [51]
>
> По подсчетам только два К

Наличие/отсутствие на количество не влияет :-P


Washington   (2007-09-14 15:09:00) [14]

Качни книжицу "Библия Delphi" к примеру и ПЕРЕХОДИ НА ADO


Anatoly Podgoretsky   (2007-09-14 15:08:00) [15]


> Так тоже не работает, нужно писать запрос :(((

Еще пару сотен сообщений и уговорим.


Anatoly Podgoretsky   (2007-09-14 15:07:00) [16]

> Плохиш  (14.09.2007 14:17:51)  [51]

По подсчетам только два К


Mariya   (2007-09-14 14:37:00) [17]

Так тоже не работает, нужно писать запрос :(((


Плохиш   (2007-09-14 14:17:00) [18]


>   sql:='Primechanie='+QuotedStr('*'+s+'*')

'Primechanie like'+QuotedStr('*'+s+'*')
или
'Primechanie like'+QuotedStr('%'+s+'%')

PS. Уже замучился сдерживать пальцы, пытающиеся написать про три K:-(


Anatoly Podgoretsky   (2007-09-14 14:16:00) [19]

Сказано используй запросы, не будет твой фильтр работать.
Ну или на худой случай - OnFilterRecord, но с твоими запросами ты погибнешь. Но лучше


> но лучше конечно перейти сразу: с парадокса на другую базу,
>  с BDE на ADO (вернее от типа базы варианты), с навигационных
> методов на SQL, с зарплаты в 100$ на побольше и с работы
> где заставляют выполнять не свои задачи на соответствующую.

При том начинать с конца.


Mariya   (2007-09-14 13:54:00) [20]

У меня есть Едит5, куда я ввожу,что надо найти, нажимаю на кнопку он мне выдает в гриде ответ,
QuotedStr(s+'*'), в конце он  * принимает, неужели нельзя просто прописать, чтобы и в начале также как и в конце срабатывало?


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо