Я создаю отчет в Visual Studio и хотел бы иметь параметр, который позволяет мне выбирать отдел из заранее определенного списка. Каждому отделу присваивается количество столбцов в таблице. Когда отдел выбран, им показываются только столбцы, относящиеся к их группе. Я установил это, добавив выражение видимости столбца к каждому столбцу.
Однако для определенных столбцов существуют пустые строки для определенных групп. Например, строка 10 может иметь контент для учета, но не контент для соответствия. Я хотел бы скрыть эту строку, если я выберу Соответствие в качестве параметра моего отдела. Кажется, это работает нормально в SQL Server, когда я запускаю запрос с @Department в качестве входной переменной. Однако когда я передаю эту логику в Visual Studio, это не нравится. Если я выберу параметр «Соответствие», из таблицы вообще ничего не появится, кроме заголовков соответствующих столбцов.
Есть ли лучший способ подойти к этому? Я создал столбцы, которые = 1 или 0 для каждого отдела. Поэтому у меня есть столбец с именами «Соответствие», «Юридический» и т. Д., И каждой строке, если есть связанный контент для группы, будет присвоено «1» для «да» или «0» для «нет».
Имена столбцов (пример):
mt.[Customer Name]
mt.[Address]
mt.[Order #]
mt.[CC Info]
mt.[Confirmation #]
mt.[Misc# Notification]
mt.[Confidentiality]
br.Legal
br.Accounting
br.IR
br.Operations
br.Compliance
Тип параметра установлен в TEXT
DECLARE @Department VARCHAR(255)
SELECT *
FROM maintable mt
LEFT OUTER JOIN @BooleanRows br
ON (mt.ID = br.ID2)
WHERE '1' = (CASE WHEN @Department = 'Legal'
THEN br.Legal
WHEN @Department = 'Compliance'
THEN br.Compliance
WHEN @Department = 'Accounting'
THEN br.Accounting
WHEN @Department = 'Operations'
THEN br.Operations
WHEN @Department = 'IR'
THEN br.IR
END)
Как я уже сказал, запрос работает в SQL Server, если яset @Department = 'Legal' или 'Compliance' и т. д., но, похоже, не работает в построителе отчетов Visual Studio. Кроме того, выпадающий список для параметров пишется с прописной буквы точно так же, как в запросе.
Вот пример изображения результата в представлении отчета SSRS при фильтрации по параметру = Отдел 1: Представление отфильтровано по параметру = "Отдел 1"
Вы видите, что существует 2 типа столбцов - белый BG - это столбцы, которые фильтруются на основе параметра. Голубой фоновый столб - это статичные столбцы. В белых столбцах BG появляются 3 строки. Только 2 строки содержат данные. Я хочу скрыть / отфильтровать строку, которая не содержит данных для этих белых столбцов.