0

У меня есть каскадные параметры, такие как: Year>Company После выбора Year значение, Company параметры обновлены.Отчет о нагрузке SSRS, даже если каскадный параметр пуст

Так, например, если я выбираю 2016, но в этом году нет данных, Company параметр пуст (нет значений), и в отчете говорится, что параметр не может быть пустым (я проверил «Разрешить пустые значения», но он не работает с многозначными параметрами) См изображения ниже:

blank parameter

error cant be blank

Как я могу загрузить отчет с сообщением вроде: «К сожалению, нет данных»? Или укажите значение по умолчанию для параметра Company, если нет других значений? У вас есть идеи?

ответ

0

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

SELECT DISTINCT year 
FROM companies 
WHERE report_relevant = 'Yes' 
ORDER BY 1 

Это ограничивает пользователей только годами, когда существуют действующие компании. Как только к вашим данным добавится компания 2016, отчет автоматически включит 2016 в качестве параметра параметра Year.

+0

Благодарим вас за ответ, но я уже использую это решение, но это не помогает мне в этом случае, потому что для повторного использования это сложнее, я предоставил упрощенный образец. Есть параметры «Год» и «Месяц» ... – Infinity

0

Вы можете использовать UNION, чтобы добавить дополнительный ряд данных к вашему параметру, но Count() ваши действующие компании, поэтому дополнительная строка включается, когда других компаний не будет.

SELECT company_id, company_name 
FROM companies 
WHERE year = @Year 
UNION 
SELECT '-1', 'No companies in ' + @Year 
WHERE (SELECT Count(company_id) FROM companies WHERE YEAR = @Year) = 0