Форум: "Базы";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];
ВнизОпределение выделенной строки в DBGrid Найти похожие ветки
← →
max1991 (2007-07-20 16:12) [0]Уважаемые мастера, подскажите пожалуйста, как можно опеределить какая строка в сетке выделена
← →
stone © (2007-07-20 16:18) [1]а зачем?
← →
Ega23 © (2007-07-20 16:24) [2]Это та строка, напротив которой чёрный треугольничек находится.
← →
Desdechado © (2007-07-20 16:30) [3]А если несколько, то SelectedRows
← →
max1991 (2007-07-20 16:31) [4]Идея такая, есть SQL-сервер, everest(бывшая AIDA), everest шлёт на сервер отчёты о компьютерах(аппаратные и программные данные), на сервере три таблицы, две из них собственно с данными: в первой имя компьютера, дата и время выполнения отчета и ключевое поле ID, вторая таблица-это все остальнае данные, связь между ними ID->ReportID.
Хотелось бы сделать так, чтобы при выделении в первой таблице опр. строки, отражались записиподчинённой таблицы, но загвоздка в том, что во второй таблице оч. много лишних данных и хотелось бы организовать фильтрацию в ней, но так как в подчиненной таблице filter не работает, скорее всего придётся создавать sql-запросы, содержащие фильтры.
А для всего этого мне нужно определить значение ID выделенной строки.
← →
max1991 (2007-07-20 16:32) [5]Multiselect-а нет, выделяется только одна строка.
← →
max1991 (2007-07-20 16:35) [6]понятно, что та, напротив которй треугольник, но хотелось бы, чтоб вообще без него, неотображался вовсе этот столбец.Как столбец отключить - нашел, а как определить, какая срока в данный момент выделена, не знаю :(.
← →
Ega23 © (2007-07-20 16:38) [7]Это называется мастер-детальная связь.
Решается элементарно с указанием подчинённому НД в качестве DataSource - DataSource главного НД.
← →
stone © (2007-07-20 16:40) [8]Так тебе в текущая позиция в датасете нужна, грид тут ни при чем.
Не понятно при чем тут фильтрация в дочерних таблицах, когда нужна простая связь Master-Detail на уровне датасетов.
← →
Stanislav © (2007-07-20 16:50) [9]Читай про параметрические запросы и связь Master-Detail.
← →
max1991 (2007-07-20 17:02) [10]cсвязь между таблицами есть, если в первой таблице выбрана какая-то строка, то во второй отображаются все данный из второй таблицы, связанные именно с этой записью, проблема в том, что нужно во второй таблице выводить не все строки, а только некоторые, именно строки, т.к. сам everest сваливает на сервер во вторю таблицу всё(параметры железа и параметры программ).
Так вот, есть 2 DBGrid, 2 DataSource, 2 ADOTAble, связанные между собой, образую две тройки. Первая тройка отвечает за загрузку с сервера и отображение первой таблицы, где ключевым явл. поле ID; Вторая тройка - за загрузку связанных с первой таблицей(поле ID) значений из второй, всё это работает, но в ADOTable подчинённой таблицы нельзя использовать св-во filtered, фильтры не работают, при компиляции вываливается ошибка, а нужно чтобы отображались связанные с первой таблицей только определённые строки, а не все связанные с ней.
← →
stone © (2007-07-20 17:06) [11]
> но в ADOTable подчинённой таблицы нельзя использовать св-
> во filtered, фильтры не работают
Работают. Но нужно использовать не свойство Filter, а событие OnFilterRecord
← →
Stanislav © (2007-07-20 17:07) [12]ниче непонял.
← →
max1991 (2007-07-20 17:13) [13]> stone © (20.07.07 17:06) [11]
>
> > но в ADOTable подчинённой таблицы нельзя использовать
> св-
> > во filtered, фильтры не работают
>
> Работают. Но нужно использовать не свойство Filter, а событие
> OnFilterRecord
А можно небольшой пример с использованием этого события или пояснение, т.к как использовать св-во filter понятно: ADOTable2.Filter:="RUser=""ivanov""", а как применить событие-несовсем.
← →
max1991 (2007-07-20 17:15) [14]непонятно собственно, как, используя это событие ввести неоходимый фильтр
← →
stone © (2007-07-20 17:20) [15]в справке пример есть
procedure TForm1.DataSetFilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
Accept := DataSet["AmountOfPurchase"] > StrToInt(Edit1.Text);
end;
← →
max1991 (2007-07-20 17:29) [16]огромное спасибо за помощь, всё работает!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.048 c