Форум: "Базы";
Текущий архив: 2003.04.21;
Скачать: [xml.tar.bz2];
ВнизФильтр записей в TTable Найти похожие ветки
← →
SanteR (2003-04-02 15:58) [0]Есть две связанных таблицы master-detail.
Detail автоматом фильтруется по некому полю в master.
А возможно ли сам master фильтровать по полю в detail?
Пробовал свойство Filtered & событие OnFilterRecord - не помогает. Не успевают обновляются поля в detail и фильтр работает не корректно.
Спасибо.
← →
Mike Kouzmine (2003-04-02 16:18) [1]Так свяжи их по двум полям, по трем, по четырем и т.д.
← →
SanteR (2003-04-02 16:52) [2]Этим я только дополнительно отфильтрую таблицу detail, а мне надо master фильтровать.
Так что я пока не могу придумать как фильтровать master по значениям полей в другой таблице (detail).
Видно придется добавлять нужные поля в master и как-то синхронизировать их содержимое с соответствующими полями в detail...
← →
Mike Kouzmine (2003-04-02 16:59) [3]Подожди. Ты хочешь чтобы детайл фильтровался на основании мастера, а мастер, в свою очередь по детайлу? Так не получиться. Замкнутый круг.
← →
Соловьев (2003-04-02 17:02) [4]
> Пробовал свойство Filtered & событие OnFilterRecord - не
> помогает
код?
← →
SanteR (2003-04-03 12:05) [5]> Mike Kouzmine
Спасибо. Я так и думал, но не был уверен просто.
> Соловьев
А код я все-таки приведу
(правда не D6, а, извиняюсь, CBuilder6)
Table2 - master
Table3 - detail
В нужное время выполняются
Table3->MasterSource = DataSource2;
Table3->MasterFields = "TaskID";
Table3->Filtered = true;
Обработчик для фильтрации например такой
void __fastcall TDataModule1::Table2FilterRecord(TDataSet *DataSet,
bool &Accept)
{
Accept = (Table3Frequency1->AsFloat >= 0.1);
}
//---------------------------------------------------------------------------
← →
Johnmen (2003-04-03 12:16) [6]Думая, что указанное в вопросе желание нереализуемо, т.к. :
1. связи М-Д внутренне (BDE) реализуются с помощью фильтров
2. внутренний фильтр на T3 выставляется после события OnFilterRecord для T2
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c