Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2012, 01:44   #1
reihtmonbern
Форумчанин
 
Регистрация: 08.01.2011
Сообщений: 102
По умолчанию Фильтр через CheckListBox не конвертирует, не отображает null

Добрый вечер у меня к вам вопрос ?
делаю фильтр через CheckListBox
1
в формкриэйт написал вот этот код
Код:
while not ADOQuery2.Recordset.EOF do
begin
CheckListBox1.Items.Add(ADOQuery2.Recordset.Fields[0].Value);
ADOQuery2.Recordset.MoveNext;
end;
while not ADOQuery3.Recordset.EOF do
begin
CheckListBox2.Items.Add(ADOQuery3.Recordset.Fields[0].Value);
ADOQuery3.Recordset.MoveNext;
end;
поиск по нажатию на кнопку
Код:
var
  I : Integer;
  S : string;
begin
  DataModule3.ADOTable1.filtered:=false;
  S := '';
  for I := 0 to CheckListBox1.Items.Count - 1 do
    if CheckListBox1.Checked[I] then
      S := S + 'Грузополучатель_ТОРГ12 = ' + QuotedStr(CheckListBox1.Items[I])+' or ';

  if S <> '' then
    S := Copy(S, 1, Length(S)-4);
  DataModule3.ADOTable1.Filter := S;
  DataModule3.ADOTable1.filtered:=true;
end;
программа работает но фильтр не отображает пустые строки либо вообще ругается и в чекбоке пусто он не работает.
в приложении картинка с ошибками
и сама программа подскажите пожалуйста как правельно нужно изменить код чтобы программа конвертировала и отображала значение null ??


___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это не символ решёточки, это КНОПОЧКА с решёточкой #) - смотри крайную кнопку на панели форматирования сообщения

Модератор.
Изображения
Тип файла: jpg 234.jpg (62.5 Кб, 50 просмотров)
Вложения
Тип файла: rar Новая папка.rar (757.0 Кб, 8 просмотров)

Последний раз редактировалось Serge_Bliznykov; 24.05.2012 в 08:47.
reihtmonbern вне форума Ответить с цитированием
Старый 24.05.2012, 11:24   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
как правельно нужно изменить код чтобы программа конвертировала и отображала значение null
1. узнать что мы (программа) хочет показать нам пустое значение (тот самый Null).
Код:
ADOQuery2.Recordset.Fields[0].IsNULL
ADOQuery2.Recordset.Fields[0].Value =NULL
2. Вывести какой-либо удобоваримый текст
Код:
CheckListBox1.Items.Add('значнение =NULL');
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расширенный фильтр через макрос tim_oha Microsoft Office Excel 7 23.11.2012 12:15
Подчиненная форма. Фильтр через поле со списком. depp.88 Microsoft Office Access 6 27.11.2011 23:50
Ничего не отображает :( Ksy JavaScript, Ajax 1 06.02.2011 23:40
Фильтр через DateTimePicker MixanMM БД в Delphi 1 28.07.2010 08:47