Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > FastReport Тематическое оглавление


Автор: xMaDx 14.3.2009, 07:47
Доброе утро!

У меня есть некий список ID Name Key
По Key привязывается группа из другой таблицы.

Алфавитное и индексное оглавления я сделал, повесив 2 якоря на ID и Name.
Сгруппировал я их тоже, создав новый ADOQuery2 (естественно получилось на много больше строк, так как для 1 позиции может быть несколько групп).

И никак не могу понять, как выводить номер страницы, где находится данная позиция в сгруппированном тематическом оглавлении.

Буду благодарен за любую помощь. 

Автор: Kbl4AH 14.3.2009, 11:43
Ничего не понял smile 

Автор: 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

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)