Published on

June 13, 2020

Как повторить заголовки строк в SQL Server Reporting Services

При разработке отчетов SQL Server Reporting Services (SSRS) одним из общих требований является отображение заголовков столбцов на каждой странице. Однако иногда заголовки не повторяются на каждой странице, что вызывает путаницу и раздражение. В этой статье мы рассмотрим, как обеспечить повторение заголовков строк на каждой странице в отчетах SSRS.

Повторение заголовков строк для отчетов SSRS

Чтобы продемонстрировать сценарии повторения заголовков строк, мы будем использовать базу данных AdventureWorks. Если у вас нет базы данных AdventureWorks, вы можете скачать и установить ее с веб-сайта Codeplex.

Давайте начнем с создания простого отчета типа “табличный” с использованием данных из базы данных AdventureWorks. В этом примере у нас есть три строки заголовков. Чтобы сделать повторение заголовков строк и столбцов на каждой странице, мы можем перейти в окно свойств Tablix и установить флажки “Повторять строки заголовков на каждой странице” и “Повторять столбцы заголовков на каждой странице”.

Однако дела становятся более сложными, когда мы добавляем дополнительные строки заголовков или вставляем и удаляем заголовки внутри и вне групп. В этих случаях SSRS может не повторять строки заголовков на каждой странице, даже если установлено свойство “Повторять заголовки строк”. Чтобы решить эту проблему, нам нужно настроить параметры группы.

Сначала нам нужно включить расширенный режим для параметров группы. Для этого щелкните на маленькую стрелку справа от окна “Группы строк” и “Группы столбцов”, а затем щелкните “Расширенный режим”.

После перехода в расширенный режим мы можем увидеть статические строки и столбцы. Эти статические строки и столбцы могут использоваться для управления повторением строк на каждой странице. Нам нужно выбрать соответствующую строку заголовка в группе строк и убедиться, что параметр “KeepWithGroup” установлен на “After”. Кроме того, свойство “RepeatOnNewPage” должно быть установлено в True.

Следуя этим шагам, строки заголовков теперь будут повторяться на каждой странице. Однако, если мы добавим новую строку с другими настройками, мы можем столкнуться с ошибкой. SSRS требует, чтобы все группы строк, включая статические строки, имели одинаковые значения “RepeatOnNewPage”, если они находятся на одном уровне. Чтобы решить эту проблему, нам нужно сопоставить свойства новой строки с существующими строками.

Но что, если мы хотим, чтобы определенная строка заголовка появлялась только на первой странице, в то время как другие строки заголовков появляются на всех страницах? По умолчанию SSRS не позволяет такой сценарий. Однако мы можем обойти эту проблему, создав новую смежную группу, которая группируется по определенному значению, например “1”. Это позволяет создать только одну строку, позволяя нам скрыть желаемую строку заголовка на всех страницах, кроме первой.

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

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.