Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > FastReport Тематическое оглавление |
Автор: xMaDx 14.3.2009, 07:47 |
Доброе утро! У меня есть некий список ID Name Key По Key привязывается группа из другой таблицы. Алфавитное и индексное оглавления я сделал, повесив 2 якоря на ID и Name. Сгруппировал я их тоже, создав новый ADOQuery2 (естественно получилось на много больше строк, так как для 1 позиции может быть несколько групп). И никак не могу понять, как выводить номер страницы, где находится данная позиция в сгруппированном тематическом оглавлении. Буду благодарен за любую помощь. |
Автор: Kbl4AH 14.3.2009, 11:43 |
Ничего не понял ![]() |
Автор: xMaDx 15.3.2009, 08:03 |
Есть 2 таблицы: Table (ID, Name, Key) - список позиций Group (Key, GroupName) - список ключей из Table и присвоенная им группа (на 1 key может быть несколько групп) Задача: 1) вывести полную таблицу - решена 2) Построить оглавление по алфавиту - решена 3) Построить оглавление по ID - решена 4 ) Построить Оглавление по группам - вот тут проблема Нельзя чтобы в основной таблице позиции множились, но нужно сгруппировать позиции по группам. И для каждой позиции в группе предоставить на каком листе находится данная позиция. У меня получается 2 Dataset 1) "SELECT * FROM Table" - для вывода всех позиций 2) "SELECT a.Name, b.GroupName FROM Table a INNER JOIN Group b ON a.Key = b.Key" - для страницы сгруппированных позиций Так вот, у меня не получается вывести на каком листе находится позиция в группе (тем более эта позиция может быть в разных группах) Добавлено через 10 минут и 34 секунды Должно получится вот в таком духе: Транспортные средаства: - Камаз - стр. 1 - Лада - стр. 3 - Жигули - стр. 1 Легковые автомобили: - Лада - стр. 3 - Жигули - стр. 1 Грузовые автомобили: - Камаз - стр. 1 |