Короткий ответ ( и просьба от меня ) :
Пожалуйста, проголосуйте на этой странице , чтобы условно скрыть столбцы матрицы без группы.
Длинная форма:
Я нашел решение своей проблемы, но сначала выяснил точную проблему. Матрица SSRS имеет возможность повторять столбцы на последующих страницах по мере увеличения ширины, когда RepeatRowHeaders и RepeatColumnHeaders установлены в True. Так что часть моей настройки отчета была в порядке.
Моя проблема заключалась в том, что моя сетка была настроена следующим образом:
![Grid 0](https://i.stack.imgur.com/faor0.png)
То, что вы видите выше, это Табликс, содержащий Матрицу. Синий цвет представляет собой обычный табликс с четырьмя столбцами. Зеленый Представляет матрицу в столбце 4, которая имеет N количество столбцов.
Таким образом, даже если для свойств RepeatRowHeaders и RepeatColumnHeaders задано значение true, столбцы 1-3 не будут повторяться, поскольку данные в матрице распространяются на несколько страниц. Это потому, что внешний Табликс (например, синяя часть) видел только столбец 4 растущим наружу, а не отдельные столбцы во внутренней матрице.
Чтобы столбцы повторялись, мне пришлось изменить сетку следующим образом:
![Static Columns](https://i.stack.imgur.com/qOPnn.jpg)
Эта сетка является только одной матрицей; не Матрица в Табликс, как показано на первом изображении. Я вытащил матрицу и добавил «Статические столбцы» слева. Это сделало повторение столбцов 1 - 3 на нескольких страницах по мере роста матрицы.
Все выглядело хорошо, но вот в чем проблема: Статические столбцы не могут быть скрыты или, точнее говоря, вы можете скрыть данные в столбце, но сам столбец не будет уменьшаться.
Итак, когда я скрыл Статическую колонку 3, мой отчет выглядел примерно так:
![Hiding Static Column](https://i.stack.imgur.com/4nO9j.jpg)
Обратите внимание на пробел. Это решение просто не будет работать. Когда я обнаружил, что застрял в одной или нескольких ситуациях (у меня есть возможность условно скрывать столбцы или повторять столбцы на последующих страницах), я использовал один из наших инцидентов поддержки Microsoft для анализа отчета и поиска решения.
Microsoft была хороша и хорошо осведомлена и даже указала на статью на своем форуме, в которой говорилось, что они рассматривают возможность предоставления SSRS возможности скрывать статические столбцы. Однако, в конце концов, они сказали, что мы застряли в той или иной ситуации. (Кстати, обратите внимание, что на ветку форума был дан ответ в 2006 году.)
Итак, после этого долгого процесса с Microsoft мы все еще сталкивались с нашей дилеммой. К счастью, один из наших коллег-программистов предложил обходной путь: поместите столбцы, которые хотите переключать видимость, в самой Матрице.
И вот что я сделал. Потребовалось немного поразмыслить с отчетом SQL (и создать заявление, которым я не особо горжусь), но это работает.
Итак, теперь рабочий отчет выглядит так:
![final matrix](https://i.stack.imgur.com/hjOhC.jpg)
Это одна матрица, два статических столбца, которые всегда необходимо повторять на каждой странице, и столбец 3, который теперь является частью набора данных, используемого для матрицы.
Еще раз, я умоляю сообщество проголосовать на этой странице , чтобы условно скрыть столбцы матрицы без группы. Это значительно упростит создание будущих отчетов:)