SSRS 多值空白

发布于 2024-09-24 09:45:10 字数 404 浏览 2 评论 0原文

我有一个 SSRS 报告,其中有几个链接在一起的下拉菜单。基本上,从下拉列表 1 中选择一个项目,然后填充下拉列表 2,依此类推。我遇到的问题是,在下拉列表 3 中,这是一个从查询填充的多值,我不想允许任何选择。

问题#1
尽管该报告参数设置为允许空白,但它不会让我取消选择所有值。我收到一个必需的错误。

问题 #2
在我的存储过程中,我有一个由 IN 语句过滤的相关参数,如果出现空白,则该语句将不起作用,因为我希望空白跳过该过滤器。

问题#3
一旦选择了其他 2 个,下拉列表#3 可能没有任何值。

我觉得我错误地使用了多值,导致了所有 3 个问题。任何帮助表示赞赏。

I have a SSRS report with a few dropdowns that are chained together. Basically a item is selected from dropdown 1 which then populates dropdown 2 and so on. The issue I am having is that in dropdown 3, which is a multi-value populated from a query I want to allow no selection.

Problem #1
Although that report parameter is set to allow blanks, it will not let me deselect all values. I get a required error.

Problem #2
In my stored procedure I have the parameter in question being filtered by an IN statement, which will not work if a blank is coming though as I want the blank to skip that filter.

Problem #3
The dropdown #3 may not have any values once the other 2 are selected.

I feel that I am using the multi-value incorrectly causing all 3 issues. Any help is appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

半城柳色半声笛 2024-10-01 09:45:11

问题#1

您能否将类似的内容添加到填充下拉列表的查询末尾?

Union
Select Null as (value field name), 'None' as (label field name)

问题 #2

是否必须传入空值?你能做这样的事情:

WHERE (@Param is null OR t.id in @Param)

或者甚至

WHERE (@Param ='' OR t.id in @Param)

如果你想将它保留为字符串吗?

问题#3

如果您能按照我对问题 1 和 2 的建议进行操作,则应该得到解决。

Problem #1

Can you add something like this to the end of your query that populates the DropDown?

Union
Select Null as (value field name), 'None' as (label field name)

Problem #2

Do you have to pass in an empty value? Can you do something like this:

WHERE (@Param is null OR t.id in @Param)

or even

WHERE (@Param ='' OR t.id in @Param)

If you want to keep it as a string?

Problem #3

Should be taken care of if you can do my suggestions for 1 and 2.

爱本泡沫多脆弱 2024-10-01 09:45:11

由 Microsoft 论坛上的 ANSA 的 Naz 提供...

我已经成功地创造了很多
经过多次尝试后,更简单的解决方案。
@Action参数数据集现在是:

选择操作 ID、操作描述、
来自 MXMSERVACTION 的数据
哪里(数据区域位于 (@CompanyID))
UNION SELECT '' 作为 ACTIONID,
'(空白)' 作为操作描述,
@CompanyID AS DATAAREAID 排序依据
操作ID

这也返回了“空白”值
作为所有可用的操作代码,在
运行时的参数下拉菜单
报告。然后我参考了
主数据集中的参数数据集
正常情况下:

哪里(MXMSERVCALL.ACTIONID 在
(@Action))

工作完成!

Courtesy of Naz at ANSA on the Microsoft Forums...

I have managed to create a much
simpler solution, after many attempts.
@Action parameter dataset is now:

SELECT ACTIONID, ACTIONDESCRIPTION,
DATAAREAID FROM MXMSERVACTION
WHERE (DATAAREAID IN (@CompanyID))
UNION SELECT '' AS ACTIONID,
'(Blank)' AS ACTIONDESCRIPTION,
@CompanyID AS DATAAREAID ORDER BY
ACTIONID

This returned a ‘Blank’ value as well
as all available action codes, in the
parameter dropdown when running the
report. I then referenced the
parameter dataset in the main dataset
as normal:

WHERE (MXMSERVCALL.ACTIONID IN
(@Action))

Job done!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文