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

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

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2016, 20:29   #1
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
Печаль фильтр и отображения

Всем здравствуйте, прошу помощи
Как отображать только связанные строчки в инете всё перерыл ничего нету(
и фильтр есть вот такой код
Код:
ADOTable1->Filtered = false;
ADOTable1->Filter = "ИНН >= 0 AND ИНН <=" + Edit12->Text;
ADOTable1->Filtered = true;
он фильтрует числовое поле, но только после ввода полного значения, а как сделать чтобы фильтровал при вводе первого символа
со строками сделано так и работает
Код:
ADOTable1->Filtered = false;
String s = String().sprintf("[%s] = '%s'", ComboBox2->Text, DateToStr(DateTimePicker3->Date));
ADOTable1->Filter = s;
ADOTable1->Filtered = true;
Заранее благодарен
Попробовал вот так, компилится, но ничего не происходит
Код:
ADOTable1->Filtered = false;
String s = String().sprintf("[%s] = '%s'", ComboBox2->Text, Edit12->Text);
ADOTable1->Filter = s;
ADOTable1->Filtered = true;
NextGen25 вне форума Ответить с цитированием
Старый 02.06.2016, 20:47   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Фильтруй событием OnFilterRecord
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 02.06.2016, 21:14   #3
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Фильтруй событием OnFilterRecord
тоже ничего не получается, засунул код в рекорд а толку ноль, вообще ничего не делает
NextGen25 вне форума Ответить с цитированием
Старый 02.06.2016, 21:30   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А чего ты там засунул и в какой рекорд?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 02.06.2016, 22:13   #5
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А чего ты там засунул и в какой рекорд?
void __fastcall TForm7::ADOTable1FilterRecord(TData Set *DataSet,
bool &Accept)
{
ADOTable1->Filtered = false;
ADOTable1->Filter = "ИНН >= 0 AND ИНН <=" + Edit12->Text;
ADOTable1->Filtered = true;
}
NextGen25 вне форума Ответить с цитированием
Старый 02.06.2016, 22:20   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Так не пойдет. В событии нужно проверять кодом твой ИНН и в Accept истину, если подходит по условию. Выделяй из ИНН первые цифры и колдуй над ними. Свойство Filter тут не при делах. Хотя и в нем можно чего-то задать. Но не в OnFilterRecord
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 02.06.2016, 22:35   #7
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Так не пойдет. В событии нужно проверять кодом твой ИНН и в Accept истину, если подходит по условию. Выделяй из ИНН первые цифры и колдуй над ними. Свойство Filter тут не при делах. Хотя и в нем можно чего-то задать. Но не в OnFilterRecord
ничего не понял, а просто в editchange нельзя сделать так как у меня выше, там для строковых полей, а нужно чтобы для числовых было.
NextGen25 вне форума Ответить с цитированием
Старый 02.06.2016, 22:45   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

В делфи примерно так. В билдере очень похоже
Код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  ADOTable1.Filtered:=False;
  ADOTable1.Filtered:=True;
end;

procedure TForm1.ADOTable1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
var s: String;
begin
  {цифры из эдита совпадают с началом ИНН}
  Accept:=(Copy(IntToStr(ADOTable1.FieldByName('ИНН').AsInteger),1,Length(Edit1.Text))=Edit1.Text);
end;
А еще лучше ADOQuery использовать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 02.06.2016 в 22:48.
Аватар вне форума Ответить с цитированием
Старый 02.06.2016, 22:58   #9
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
Радость

Цитата:
Сообщение от Аватар Посмотреть сообщение
В делфи примерно так. В билдере очень похоже
Код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  ADOTable1.Filtered:=False;
  ADOTable1.Filtered:=True;
end;

procedure TForm1.ADOTable1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
var s: String;
begin
  {цифры из эдита совпадают с началом ИНН}
  Accept:=(Copy(IntToStr(ADOTable1.FieldByName('ИНН').AsInteger),1,Length(Edit1.Text))=Edit1.Text);
end;
А еще лучше ADOQuery использовать
Спасибо тебе большое) буду пытаться разобраться со ошибками
NextGen25 вне форума Ответить с цитированием
Старый 02.06.2016, 22:58   #10
NextGen25
Пользователь
 
Регистрация: 06.12.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от NextGen25 Посмотреть сообщение
Спасибо тебе большое) буду пытаться разобраться со ошибками
я в квери вообще ноль, а тут чуть чуть знаю)
NextGen25 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема отображения в ИЕ Bariy47 HTML и CSS 5 30.01.2013 14:00
Отображения окна по F1 AndreyAPG Visual C++ 2 26.04.2012 08:29
Проблема отображения формулы viosagmir Microsoft Office Word 2 24.10.2010 01:47
проблемы отображения Karl_Karlovi4 Общие вопросы Delphi 12 31.12.2007 09:21