Можно ли создать строку, которая охватывает все столбцы матрицы в SSRS 2008?

Можно ли добавить строку в матрицу SSRS 2008, которая охватывает все столбцы матрицы?

Эта грубая диаграмма показывает примерно то, что я ищу:

visual example of the matrix layout I'm looking for

Основная идея состоит в том, что каждая позиция - это человек, и каждый столбец является полем в форме для этого человека. Поля сами являются динамическими (и реализуются как группы столбцов на матрице). Дополнительные группы столбцов включены для добавления нединамических полей формы, таких как время записи записи и кто ее ввел. Под каждой личностью запись представляет собой поле комментариев, которое должно охватывать все поля формы над ним.

На данный момент у меня есть матрица, встроенная в другой tablix, с именем и полями в матрице и комментариями в родительском tablix. Это работает для данных (каждый экземпляр матрицы заканчивается одной строкой), но заголовок повторяется слишком часто (один раз на человека), потому что он привязан к матрице. Единственное, что мне нужно, чтобы исправить это, - создать еще одну матрицу в родительском tablix с той же группировкой и использовать ее для отображения заголовков... Но для этого потребуется довольно много ручной синхронизации, чтобы сохранить две матрицы то же самое.

Изменить: Основная проблема здесь заключается в том, что второй ряд строк содержит несколько групп столбцов.

Ответы

Ответ 1

Вот что вы можете сделать:

  • Выберите группировку столбцов, которую вы хотите добавить выше, и щелкните правой кнопкой мыши и выберите Добавить группу... Родительская группа...
  • Группируйте столбец тем, что не будет агрегировать данные. Вам нужно будет выбрать поле из вашего набора данных для группировки, чтобы оно создало перекрывающуюся группировку столбцов.
  • Установите флажок Добавить группу заголовков

Теперь вы должны увидеть что-то похожее:

Matrix with columns

Теперь вам просто нужно переместить поле Value1, а заголовок - под новым столбцом справа за разделителями матрицы. После этого просто удалите разгруппированный столбец, в котором вы скопировали значение Value1, и обязательно установите флажок Удалить столбцы только.

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

enter image description here

Ответ 2

[изменить]

После нескольких попыток я скажу, что это невозможно в SSRS. Лучшее, что я мог придумать, это нижний колонтитул группы, который охватывает столбцы 1,2 и 3, но не столбцы User.

[Исходный ответ]

Недавно я сделал что-то похожее на это.

Во-первых, какой инструмент вы используете для создания отчетов SSRS? (Я использовал SQL Server Business Intelligence Development Studio)

  • Вам нужно создать группу строк (сгруппированных по Person)

  • Добавить строку в таблицу в представлении "Дизайн" (щелкните правой кнопкой мыши, "Вставить строку → Внутри группы - ниже" ).

  • Добавьте выражение в строку, которая вытягивает значение для столбца "Комментарий" (= Поля! Комментарий.).

Сообщите мне, если это поможет...

Ответ 3

Попробуйте добавить в колонку "header" столбца с выражением группировки (1 = 1). Затем необходимо определить поле детали. Если вы определяете другую группу с правильными данными, тогда "заголовок" будет растягиваться по всем столбцам данных. Возможно, вам потребуется слияние в зависимости от других параметров.

Ответ 4

Возможно - И вышеприведенные ответы являются частичными ответами, оставив один ключевой шаг: Слияние ячеек дочернего ряда.

Сначала щелкните правой кнопкой мыши на вашей сгруппированной строке, затем выберите Insert Row -> Inside Group - Below, и вы получите две строки с выравниванием ячеек в столбцах

Во-вторых, ctrl щелкните все ячейки в вашей новой строке (например, строка без данных), затем щелкните правой кнопкой мыши по одной из выделенных ячеек и выберите Merge Cells.

Теперь у вас есть таблица, которая вам нравится. Чтобы добавить значение в новую строку: сначала щелкните правой кнопкой мыши на вашей новой ячейке (несколько столбцов), выберите Create Placeholder, а затем добавьте элемент набора данных, который вы хотите заполнить.

Ответ 5

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

У меня была аналогичная проблема, и это было моим решением.

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