Создадим новый отчёт. Для его создания проделайте следующие действия:
- Создайте хранимую процедуру «usr_RS_StockBalanceMatrix», используя для этого готовый файл «04_create_usr_RS_StockBalanceMatrix.sql»
- Создайте пустой отчёт и назовите его «StockBalanceMatrix»
- Создайте в отчёте новый набор данных «StockBalanceMatrix» на базе хранимой процедуры «usr_RS_StockBalanceMatrix»
- Создайте в отчёте новый набор данных на базе хранимой процедуры «usr_RS_GetCompanies» и привяжите его к параметру отчёта @CC, как мы это делали ранее.
- Заполните свойства отчёта, указав автора, краткое описание, задав размеры страницы для ландшафтной ориентации и отступы.
Теперь перейдите на закладку «Макет» и добавьте на неё элемент «Матрица»:

«Натаскайте» в неё поля, как на картинке ниже. Перейдите в ранее сделанный отчёт «StockBalanceSimple», выделите там текстовое поле заголовка, скопируйте в буфер, затем вернитесь в новый отчёт и вставьте его в него. Разместите, как на картинке и откорректируйте, заменив слово «Простой» на «Матричный». Также не забудьте добавить обрамление ячеек:

Установите ширину столбцов 1.5, 11, 1.25 см соответственно. Для поля содержащего числовое значение установите формат «# ### ###.####»

В свойствах поля «StockCode» установите «VerticalAlign» = «Middle». Выделите 2 левых столбца матрицы и установите для них цвет фона белым. Щёлкните на поле «StockCode» правой кнопкой мыши, выберите «Изменить группу». Заполните форму аналогично картинке ниже:

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

Проделайте то же самое для поля «Wh».
Последний штрих: Установите для поля «Wh» значение «WritingMode» равным «tb-rl»

Можно ещё добавить заголовок матрицы (увы, разделить его на отдельные поля нельзя), а также добавить нижний колонтитул, скопировав его из отчёта «StockBalanceSimple» и откорректировав.

Сохраните свою работу и можно посмотреть, как это будет выглядеть:

Самостоятельно добейтесь того, чтобы Ваш отчёт выглядел, как на картинке выше
Неплохо выглядит, правда? Только итогов по каждой позиции запаса не хватает. Для того чтобы их добавить щёлкните правой кнопкой мыши на поле «Wh» и выберите «Подитог». Появится поле справа «Всего». Надпись можно изменить, если Вы захотите. Аналогичным образом можно также добавить и подитог по каждому складу, для этого следовало бы щёлкнуть на поле «StockCode» и выбрать «Подитог», только мы не будем это делать, нет смысла складывать картриджи с пачками офисной бумаги.

Сохраните отчёт и опубликуйте его на сервере.

Содержание:
- Цели урока, Введение: 4 уровня отчетности в Scala/iScala
- Обзор структуры БД системы
- Знакомство с MS SQL Server Reporting Services
- Практическое создание отчётов: Создание общего источника данных
- Создание простейшего отчёта без параметров
- Публикация отчёта на сервере
- Модификация отчёта
- Добавление параметра «Код компании»
- Создание отчёта с элементом «Матрица»
- Добавление к проекту существующих отчётов
- Альтернативный вариант перехода из отчёта в отчёт: переход к URL-адресу
- Отчёты с многозначными параметрами
- Использование функций: Как вывести сумму прописью?
- Пользовательские «хотелки»: «А можно сделать сортировку и Автофильтр, как в Excel’е?»
- Подписки на отчёты
- Автоматизация создания связанных отчётов при сложной структуре
- Включение отчётов в меню iScala
- Кратко о реальном использовании MS SQL Server Reporting Services в компаниях-клиентах Epicor|Scala
- Более тесная интеграция MS SQL Server Reporting Services с iScala версии 2.3 SR2
- Как в отчёт MS SQL Server Reporting Services добавить возможность скрывать и показывать подробности?