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

Вниз

Связи   Найти похожие ветки 

 
kay   (2002-06-01 14:14) [0]

Народ Please Help, очень надо! У меня есть таблица Table1 и связанная с ней таблица Table2.
Так вот при осуществлении поиска в Table2, поиск происходит только относительно одной записи таблици Table1, активной в данный момент.
Как мне сделать поис по всей таблице Table2?
И в дальнейшем чтоб запис в Table1, которой будет соответствовать найденная запись в Table2, стала активной?


 
kaif ©   (2002-06-01 15:08) [1]

Нужно отключать на время связь Master-Detail, например, присваивая Table2.MasterSource := nil.
Затем делать Table2.Locate.
Затем делать Table1.Locate и опять восстанавливать связь Master-Detail:
Table2.MasterSource := DataSource1.
Чтобы все это не мигало 10 раз можно попытаться все это обрамить методами
Table2.DisableControls
...
Table2.EnableControls
Одним словом, поэкспериментировать немного нужно.
------------------
Хотя можно вообще иначе:
Отдельно в некоем Table3 или в Query найти то, что нужно,
а затем сделать соответствующий Table1.Locate.
Я бы так поступил.


 
Anatoly Podgoretsky ©   (2002-06-01 15:18) [2]

Связь в неправильном направлении


 
kaif ©   (2002-06-01 15:26) [3]

>2 Anatoly Podgoretsky © (01.06.02 15:18)
не всегда так.
Например, у человека список накладных с позициями и он хочет (очень редко, правда) найти накладную с какой-то совершенно определенной позицией. Тогда получится примерно то, что спрашивающий хочет.
Хотя я согласен, что лучше иметь отдельный интерфейс для такого поиска со связью "наоборот". А что, если таких накладных несколько?...


 
kay   (2002-06-01 15:39) [4]

>kaif © (01.06.02 15:26)
Поиск по Table2 проходит успешно. Но запись в Table1 не становится активной, при Table2.MasterSource := DataSource1, активной становится та, запись, которая была активной до этого, а мне именно нужно сделать активной запись, соответствующую поиску в Table1?


 
Anatoly Podgoretsky ©   (2002-06-01 16:19) [5]

kaif © (01.06.02 15:26)
Пимер неудачный, это поиск, делается по второй таблице, со связью на первую, или вообще без связи
А делать отключение связей в вышеприведенной схеме, и идеологически неверно и соответствующие проблемы


 
kaif ©   (2002-06-02 00:30) [6]

В общем, я думаю:
1. нужно делать поиск в отдельном компоненте.
2. позиционировать Table1, куда надо, зная значение ключа из первого поиска.
3. окончательно позиционировать Table2, делая еще один поиск.
Или я просто не понимаю, о чем идет речь...


 
Anatoly Podgoretsky ©   (2002-06-02 09:49) [7]

Вот сейчас нормальный алгоритм, а отключение связей дает глюки и грубо по хакерски



Страницы: 1 вся ветка

Текущий архив: 2002.06.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
6-88976
Ghost.
2002-04-17 13:30
2002.06.27
По поводу кодировок...


3-88707
Timur_2002
2002-06-03 11:56
2002.06.27
Вопрос по InterBase


6-88981
ATLANTIDO
2002-04-16 23:55
2002.06.27
Сетевое окружение


1-88781
Alex
2002-06-13 16:02
2002.06.27
Ini


1-88923
Windeus
2002-06-15 04:05
2002.06.27
to #num line in RichEdit