Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.21;
Скачать: CL | DM;

Вниз

Фильтр записей в 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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
14-67515
me2
2003-04-04 09:29
2003.04.21
Нужен компонент


4-67621
_toltec
2003-02-21 23:05
2003.04.21
service


8-67400
Bananos
2003-01-20 00:00
2003.04.21
Bitmap.ScanLine


1-67249
levova
2003-04-11 09:41
2003.04.21
Как сделать кнопку нажатой?


1-67234
Вася
2003-04-10 10:29
2003.04.21
Консольное приложение и timer