Страница 1 из 2

Как сделать оглавление

Добавлено: 02 сен 2013, 09:55
keeper
Здравствуйте!

У меня есть отчет, который состоит из нескольких разделов.
Нужно в начале отчета сделать оглавление со списком этих разделов (к счастью список фиксированный) и страницей, с которой он начинается. Т.к. в процессе построения отчета страницы могут сдвинуться вниз, то я пытаюсь проставить страницы в конце построения отчета - обрабатываю событие отчета "Конец построения", но те изменения, которые я вношу в отчет в этом событии не попадают в результирующий отчет.
Как мне проставить страницы в оглавлении?

Re: Как сделать оглавление

Добавлено: 02 сен 2013, 17:54
Aleksey
Здравствуйте,

Пожалуйста, посмотрите следующую главу из документации как сделать оглавление в аттаче.

Спасибо.

Re: Как сделать оглавление

Добавлено: 29 июн 2014, 12:49
Ингвар
А нет ли у вас готового примера по созданию отчета с оглавлением?

Re: Как сделать оглавление

Добавлено: 30 июн 2014, 14:28
HighAley
Здравствуйте.

Смотрите отчёт Interactive Reports - Anchors в нашем Демо.

Спасибо.

Re: Как сделать оглавление

Добавлено: 30 июн 2014, 18:35
Ингвар
Спасибо.
Можете ли вы пояснить что означает
{GetAnchorPageNumber(sender.TagValue)}
а именно - sender.TagValue?
В документации написано
{GetAnchorPageNumber(component.TagValue)}

Re: Как сделать оглавление

Добавлено: 01 июл 2014, 14:46
HighAley
Здравствуйте.

sender.TagValue возвращает значение свойства Tag текущего компонента. А метод GetAnchorPageNumber() уже ищет якорь с таким значением, поставленный с помощью AddAnchor().

Спасибо.

Re: Как сделать оглавление

Добавлено: 02 июл 2014, 11:43
Ингвар
Еще такой вопрос.
Заметил что при сохранении отчета с оглавлением и гиперссылками в HTML5, переход по гиперссылкам не работает. При этом при сохранении в HTML или PDF - все работает корректно. Это ошибка?

Re: Как сделать оглавление

Добавлено: 02 июл 2014, 13:15
HighAley
Здравствуйте.

Эта функция ещё не была реализована в HTML5 экспорте.
Мы реализуем её в ближайшее время.

Спасибо.

Re: Как сделать оглавление

Добавлено: 02 июл 2014, 14:55
Ингвар
Тогда еще вопрос. В вашем Demo примере, в свойстве компонента "Тег" прописано:
{Products.ProductName}
Затем из поля этого же компонента мы обращаемся к тегу:
{GetAnchorPageNumber(sender.TagValue)}

А почему нельзя сразу в компоненте написать?
{GetAnchorPageNumber(Products.ProductName)}
Зачем использовать тег?

Re: Как сделать оглавление

Добавлено: 02 июл 2014, 16:49
HighAley
Здравствуйте.

Функция GetAnchorPageNumber() отрабатывает после построения всего отчёта. Поэтому обращение к колонке напрямую даст один результат для всех компонентов.
Поэтому на момент построения в поле Tag сохраняется имя, а уже потом оно берётся для поиска страницы.

Спасибо.