Гость |
Отправлено: 02.11.2003, 18:33 |
|
Не зарегистрирован

|
Подскажите, как сделать так, чтобы при вставке новой записи в таблицу, у которой включена фильтрация, новая запись отображалась сразу в DBGrid. Refresh() не помогает.
Использую ADO и MS Access. |
 |
Admin |
Отправлено: 02.11.2003, 20:03 |
|

Владимир
Группа: Администратор
Сообщений: 1190

|
Вообще-то, если вставляемая запись отвечает условиям фильтра,
она сразу появляется в DBGrid.
CODE |
ADOTable1->Open(); // открываем таблицу
ADOTable1->Filtered = false;
ADOTable1->Filter = "Name like 'C*'";
ADOTable1->Filtered = true; // включаем фильтрацию
ADOTable1->Insert();
ADOTable1->FieldByName("Name")->AsString = "Cuba";
ADOTable1->Post(); // запись сразу отразиться в DBGrid
ADOTable1->Insert();
ADOTable1->FieldByName("Name")->AsString = "Austria";
ADOTable1->Post(); // запись не отразиться в DBGrid
|
А самый проверенный способ — переоткрывать таблицу
ADOTable1->Close(); ADOTable1->Open();
|
 |
|