Переменная отчета Microsoft SSRS 2016 для группировки данных: значения переменных нельзя использовать в групповых выражениях

Строю отчет в Microsoft SSRS 2016; В моем отчете есть несколько групп, все эти группы выполняются с помощью (одного и того же) набора параметров. Вы можете увидеть снимок экрана ниже:

1) У меня есть 3 группы в дизайнере отчетов SSRS 2016.

2) Все 3 группы используют одно и то же выражение (с использованием параметров) для группировки отчета.

Вкратце, если значение параметра — X, оно сгруппировано по X; если значение этого параметра — Y, оно сгруппировано по Y; Я делаю это для многих групп, создавая множество параметров.

В будущем у меня будет намного больше групп и, следовательно, больше вариантов параметров по мере роста отчета. Я пытаюсь найти способ оптимизировать этот отчет SSRS 2016, написав этот код ТОЛЬКО ОДИН РАЗ.

Я попытался добавить переменную отчета, как показано ниже:

Теперь у меня есть новая переменная отчета (GV2), в которой этот код хранится с оператором Switch.

Теперь я пытаюсь использовать эту переменную отчета во многих различных группах.

Я получаю такую ​​ошибку:

Значения переменных нельзя использовать в групповых выражениях

Есть ли другой способ сделать это? Мне нужно оптимизировать такую ​​параметризованную группировку.

Может писать какие-то кастомные коды в SSRS; если да, можете ли вы предоставить код (мои знания о .Net равны нулю!)

Спасибо

Это может упростить ваш отчет, если вы сделаете это в своем наборе данных. Передайте параметр в свой SQL-запрос, если вы еще этого не сделали, и добавьте столбец groupby. Затем вы можете изменить то, что отображается в этом столбце, на основе параметров, переданных в вашем отчете, и только тогда нужно будет сгруппировать по фиксированному столбцу.   —  person user3812887    schedule 20.03.2017

Проблема здесь в том, что данные исправлены; это не проблема агрегации (GROUP BY в T-SQL); это больше связано с представлением в SSRS (группы строк); наш клиент хочет объединить множество существующих отчетов в один; поэтому мы пишем одну хранимую процедуру / запрос, а затем добавляем группы строк в SSRS и параметризуем эти группы строк.   —  person user3812887    schedule 20.03.2017

@AlanSchofield В некотором смысле я не могу ничего изменить в наборе данных!   —  person user3812887    schedule 20.03.2017

Я не предлагал вам группировать данные в SQL. Я предлагал вам добавить дополнительный столбец к данным, возвращаемым из SQL, который вы могли бы заполнить на основе параметров. Это тот же процесс, который вы пытаетесь выполнить в своем операторе SWITCH, но только что выполняемый в SQL с помощью оператора case. Извините, я только что видел ваш дополнительный комментарий.   —  person user3812887    schedule 20.03.2017

Источник: ledsshop.ru

Стиль жизни - Здоровье!