logo
small logo
  • Продукты
  • Купить
  • Поддержка
  • Статьи
  • Клиентская панель Поддержка
  • Главная
  • /
  • Статьи
  • /
  • Как сделать наследование отчетов в FastReport .NET
  • Запуск приложения с FastReport .NET в Docker под Linux

    17 ноября 2021 г.

    Docker – это программная платформа для быстрой разработки, тестирования и развертывания приложений. Благодаря нему мы

    Подробнее
  • Установка FastReport Business Graphics в FastReport .NET

    25 ноября 2021 г.

    FastReport Business Graphics – это библиотека, содержащая несколько продвинутых способов визуализации данных. На сегодняшний день

    Подробнее
  • Копирование бэндов отчета в другой со всем содержимым.

    31 марта 2021 г.

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

    Подробнее
  • Как использовать диаграмму Гантта в FastReport Business Graphics

    11 октября 2021 г.

    С релизом FastReport Business Graphics появился такой интересный вид диаграмм, как диаграмма Гантта. Прежде

    Подробнее
  • Как использовать Online Designer в ASP .NET Core

    17 января 2018 г.

    Одной из новинок FastReport .NET 2018 стала адаптация OnlineDesigner под фреймворк .NET Core. В целом, онлайн

    Подробнее

Как сделать наследование отчетов в FastReport .NET

29 января 2021 г.

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

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

Наследование отчетов в FastReport .NET организовано следующим образом. В начале создается так называемый базовый отчет, от которого будут наследоваться другие. Этот отчет должен содержать шаблон с информацией общей для всех наследуемых отчетов. Например, это может быть шапка с реквизитами компании.

Как уже говорилось выше вы можете изменять базовый шаблон отчета, и тогда он изменится во всех наследованных отчетах. Но вы также можете редактировать информацию из базового отчета в наследованном. Эти изменения будут сохранены только в этом конкретном отчете.
Но что, если вы изменили объект из базового отчета в наследованном, а затем изменили этот же объект в базовом отчете? В этом случае, к этому объекту будут применены изменения из базового отчета, но только те, которые не пересекаются с изменениями в наследованном. Например, если вы в наследованном отчете изменили шрифт в текстовом объекте, а затем в базовом задали жирное написание для этого же объекта, то будут применены оба изменения. А если, вы в базовом отчете тоже измените шрифт, то в наследованном отчете это не отразится, так как он уже был изменен в нем.

Стоит помнить и об ограничениях при наследовании отчета. Нельзя:

  1. Удалять и перемещать базовый отчет, иначе все наследованные отчеты будут повреждены.
  2. Наследовать отчет от другого наследованного. То есть не допускается множественное наследование.
  3. Использовать в базовом отчете скрипт, параметры отчета, объект «Таблица» и «Матрица».

А теперь рассмотрим пример создания наследованного отчета. Сначала нужно создать базовый отчет.

Например, он будет содержать шаблон отчета с заголовком:

FastReport.NET

Сохраняем этот отчет с каким-нибудь именем, содержащим base – так будет проще его найти среди других шаблонов отчетов.

Для создания наследованного отчета вам нужно воспользоваться мастером создания наследованного отчета. Он доступен либо в приветственном окне, либо в окне создания нового отчета (File->New):

FastReport.NET

Мастер создания наследованного отчета предложит вам лишь одно действие – выбрать базовый отчет с помощью диалогового окна открытия файла. Выберите созданный ранее базовый отчет. Все элементы отчета имеют значок замка. Это означает, что они наследованы от базового. 

FastReport.NET

Вновь добавленные объекты уже не будут иметь такого значка. Добавим источник данных в наш отчет и разместим поля на бэнде «Данные». Для примера можно взять демонстрационный источник данных nwind.xml из поставки FastReport.NET:

FastReport.NET

Из источника данных выберем таблицы Categories и Products. Эти таблицы связаны по ключу и поэтому мы легко можем создать отчет типа Master-Detail:

FastReport.NET

Как видите, добавленные поля данных и бенды Header и DetailData не имеют значка замка. По этому признаку вы всегда отличите объекты наследованного отчета от базового.

Таким образом вы можете создать большое количество отчетов в едином стиле, а затем с легкостью редактировать их всех, изменяя лишь базовый шаблон.

О продукте Скачать Купить
avatar
Dmitriy Fedyashov
Технический писатель
Fast Reports Team: Dmitriy Fedyashov - Technical Writer at Fast Reports
.NET FastReport

Добавить комментарий
logo
  • +7(800)551-75-80
  • info@fastreport.ru
  • Ростов-на-Дону, Россия, 344082, ул.Обороны 24, офис 311
  • Купить
  • Загрузить
  • Документация
  • Отзывы
  • Как деинсталировать
  • Онлайн поддержка
  • FAQ
  • Видео уроки
  • Форум
  • Статьи
  • Наши Новости
  • Пресса о нас
  • Реселлеры
  • Нестандартное лицензирование
  • ВУЗам
  • Карьера
  • Контакты

© 1998-2022 ООО «Фаст Репортс»

  • Согласие с обработкой персональных данных
  • Не является публичной офертой