• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

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

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Фильтрация данных по нескольким combobox и checkbox

korolkotov

Ученик
Регистрация
13 Авг 2012
Сообщения
1
Реакции
0
Баллы
0
Фильтрация данных по нескольким combobox и checkbox

здравствуйте, у меня такая проблема мне надо сделалать фильтрацию по комбобокс и чеккбоксам, работаю в Delphi, с копонентами ADO.
я написал такой код, но выходит ошибка

procedure TForm1.Button1Click(Sender: TObject);
begin
with datamodule3 do
begin
adoquery1.Close;
adoQuery1.SQL.clear;
if checkbox1.Checked=True then
begin adoquery1.SQL.add('select * from Недвижимость where (Недвижимость.Район) like "'+ combobox1.text+'%"'); adoquery1.SQL.Add('and Недвижимость.Кол_во_комнат like "'+combobox2.Text+'%"'); adoquery1.SQL.Add('and Недвижимость.Планировка like "'+combobox3.Text+'%"'); adoquery1.SQL.Add('and Недвижимость.Тип_дома like "'+combobox4.Text+'%"') ; adoquery1.SQL.Add('and select from Недвижимость.Мебель like'+'%да%'); end else adoquery1.SQL.add('select * from Недвижимость where (Недвижимость.Район) like "'+ combobox1.text+'%"'); adoquery1.SQL.Add('and Недвижимость.Кол_во_комнат like "'+combobox2.Text+'%"'); adoquery1.SQL.Add('and Недвижимость.Планировка like "'+combobox3.Text+'%"'); adoquery1.SQL.Add('and Недвижимость.Тип_дома like "'+combobox4.Text+'%"'); adoquery1.SQL.Add('and select from Недвижимость.Мебель like'+'%нет%') ; adoquery1.Open;
подскажите что делать?
 

Вложения

  • Безымянный.webp
    Безымянный.webp
    76.5 KB · Просмотры: 204
Подправил немного тебе сообщение, что бы текст был хоть как-то читабелен.

А если по существу, то в IF у тебя ошибка, неправильно заполнил условие. В условии не должно быть знака ;
вместо ; поставь просто + заключив просто в кавычки все, что тебе надо.
 
Количество end в процедуре равно количеству begin? Судя по приведенному листингу, не хватает по крайней мере трех end :)
 
Назад
Сверху