logo
small logo
  • Продукты
  • Купить
  • Поддержка
  • Статьи
  • Клиентская панель Поддержка
  • Главная
  • /
  • Статьи
  • /
  • Как сделать отчет на основе среза куба FastCube .NET
  • Как использовать FastCube .NET в приложении ASP .NET Core

    6 мая 2021 г.

    1. О FastCube Генератор отчетов FastReport .NET покрывает почти все потребности пользователей в отчетности. Но все

    Подробнее
  • FastCube - высокоскоростной движок OLAP-кубов и Pivot Grid

    29 февраля 2020 г.

    Сложно представить анализ данных без технологии OLAP (On-Line Analytical Processing). Хотя существуют разные мнения по

    Подробнее
  • Семейство генераторов отчетов FastReport - быстрый обзор

    23 марта 2020 г.

    Отчетность – без нее невозможно вести деятельность ни в одной сфере жизнедеятельности. Бюрократия является неодолимой

    Подробнее
  • Подключаем источник данных к сводному OLAP-кубу (FastCube .NET)

    3 апреля 2018 г.

    FastCube .NET - это мощный механизм OLAP, который добавляет бизнес-аналитику в ваше приложение. Давайте посмотрим,

    Подробнее
  • Как использовать FastCube .NET в SPA приложении Knockout.js

    21 июля 2021 г.

    Для того чтобы вывести куб данных мы создадим SPA приложение с использованием Knockout.js (библиотека для

    Подробнее

Как сделать отчет на основе среза куба FastCube .NET

3 апреля 2018 г.

Аналитики, разбираясь с кубами иногда нуждаются в формировании отчетов, на основе срезов.

Когда это нужно? Когда на основе кубов нужно делать регулярные отчеты. Когда необходимо экспортировать куб в какой-либо популярный формат данных, который не доступен во встроенном экспорте FastCube.Net. Встроенный в FastCube экспорт предлагает нам 7 форматов:

 

А отчет FastReport .NET – 24. Плюс сохранение в облачные сервисы, отправка электронной почтой и по FTP:

 

В этой статье я хочу рассказать о такой прекрасной возможности, как сделать отчет на основе среза куба. По традиции рассматривать будем на примере.

Создадим WindowsForms приложение. Добавим в проект ссылки на библиотеки: FastReport, FastReport.Olap, FastReport.Bars. Их можно найти в папке с установленным FastCube.Net.

Добавляем на форму следующие компоненты из toolbar:

Cube, Slice, SliceGrid, Button

Настроим компонент Slice1. Для его свойства cube выберем значение cube1.

У компонента SliceGrid1 нужно задать свойство slice – slice1.

Для кнопки создадим обработчик события нажатия:

1
2
3
4
5
6
7
8
9
private void button1_Click(object sender, EventArgs e)
 {
 SliceCubeReportLink SliceLink = new SliceCubeReportLink();
 SliceLink.Slice = slice1;
 cube1.Load("C:/Program Files (x86)/FastReports/FastCube.Net Professional/Demos/Data/Cubes/simple.mdc");
 Report FReport = new Report();
 FReport.RegisterData(SliceLink, "TestCubeLink");
 FReport.Design();
 }

В первой строке кода мы создали объект SliceCubeReportLink, который как раз и отвечает за предоставление данных среза для отчета. Далее, мы присваиваем свойству slice значение slice1 для созданного объекта. То есть указываем откуда брать данные.

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

Затем, мы создаем объект отчета Report, загружаем в него файл с шаблоном отчета, регистрируем в нем источник данных, и запускаем отчет в дизайнере.

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

1
2
 FReport.Prepare();
 FReport.ShowPrepared();

Давайте, теперь рассмотрим шаблон отчета. Ведь мы только передаем в отчет данные из куба, и нам придется создать шаблон кросс-таблицы вручную. То есть генерировать отчет на лету из любого среза не получится. Всегда нужен заранее подготовленный шаблон.

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

1
 FReport.Design();

Запустим приложение. И нажмем кнопку формирования отчета:

При этом запустится дизайнер отчетов с пустым отчетом. Обратите внимание на область данных справа:

В нем есть источник данных куба – TestCubeLink.

А теперь посмотрите на вертикальную панель инструментов слева. А именно на значок  . Это компонент CrossView, который сформирует нам кросс-таблицу из источника данных куба. «Перетаскиваем» его на бэнд «Данные».

 

Справа, в инспекторе свойств, найдите CubeSource

 

В итоге мы получим вот такой шаблон отчета:

Сохраняем его в желаемое место. В моем примере он сохранен в: C:/Program Files (x86)/FastReports/FastCube.Net Professional/Demos/Data/Cubes/Test.frx.

Закрываем приложение. Теперь модифицируем код для кнопки:

1
2
3
4
5
6
7
8
SliceCubeReportLink SliceLink = new SliceCubeReportLink();
 SliceLink.Slice = slice1;
 cube1.Load("С:/Program Files (x86)/FastReports/FastCube.Net Professional/Demos/Data/Cubes/simple.mdc");
 Report FReport = new Report();
 FReport.Load("С:/Program Files (x86)/FastReports/FastCube.Net Professional/Demos/Data/Cubes/Test.frx");
 FReport.RegisterData(SliceLink, "TestCubeLink");
 FReport.Prepare();
 FReport.ShowPrepared();

Запустим приложение и нажмем кнопку. И получаем отчет:

 

Из режима предварительного просмотра отчета мы можем экспортировать отчет, отправлять по email и прочее. Это был простейший пример отчета, вы можете украсить кросс-таблицу с помощью свойства style. И получите гораздо более привлекательный вид:

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

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

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

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