Search Results for

    Show / Hide Table of Contents

    Пример 4. Отчет с оглавлением, навигацией и структурой

    В этом примере рассмотрим построение отчета, который имеет следующие особенности:

    • на первой странице отчета располагается оглавление, или "Содержание", на элементы которого можно нажимать для перехода к нужной странице;
    • сбоку в окне просмотра отображается структура отчета, на элементы которой также можно нажимать.

    Отчет будет использовать данные из таблиц Categories и Products. В содержании будет напечатан список категорий, в основной части отчета - список категорий и продуктов. Шаблон отчета будет состоять из двух страниц: на первой странице будем печатать содержание, на второй - основную часть отчета.

    Сначала займемся оглавлением. Создайте новый отчет и добавьте в него источники данных Categories и Products. Подключите бэнд "Данные" к таблице Categories и расположите объекты следующим образом:

    Чтобы сделать элементы содержания интерактивными, настройте их свойство "Гиперссылка":

    В качестве закладки укажите имя категории. Сама закладка (свойство Bookmark) будет определена нами позже у объектов на второй странице отчета.

    Для того чтобы напечатать в содержании номер страницы, на которую мы ссылаемся с помощью закладки, нужно сделать следующее:

    • включить у отчета двойной проход (это можно сделать в меню "Отчет|Свойства..."). Это нужно сделать, потому что страница с содержанием находится перед остальными страницами. В момент печати содержания еще не известно, на каких страницах будут напечатаны категории;
    • использовать функцию Engine.GetBookmarkPage, которая возвращает номер страницы по имени закладки. В данном случае имя закладки содержится в поле [Categories.CategoryName], поэтому вызов функции выглядит так:
    [Engine.GetBookmarkPage([Categories.CategoryName])]
    

    На второй странице отчета располагается отчет типа master-detail следующего вида:

    Нам надо настроить закладку, на которую будет совершен переход при нажатии на элемент оглавления. Для этого выделите первый бэнд "Данные" и в его свойстве Bookmark укажите следующее выражение:

    [Categories.CategoryName]
    

    Для настройки структуры отчета сделайте следующее:

    • выделите первую страницу (сам объекта "Страница"). Это можно сделать, переключившись на страницу;
    • в окне "Свойства" задайте следующее значение свойства OutlineExpression:
    "Содержание"
    
    • переключитесь на вторую страницу отчета;
    • выделите первый бэнд "Данные" и настройте его свойство OutlineExpression:
    [Categories.CategoryName]
    
    • выделите второй бэнд "Данные" и настройте его свойство OutlineExpression:
    [Products.ProductName]
    
    Back to top © 1998-2025 Copyright ООО «Быстрые отчеты»