Checkbox 选中null时,SSRS 2005参数不返回任何结果

Checkbox 选中null时,SSRS 2005参数不返回任何结果,checkbox,reporting-services,Checkbox,Reporting Services,新手到SSRS,运行2005。我希望有人能帮忙 我有一个带有参数ItemNum的报告。我把它作为一个字符串,允许空值和空值,在可用值中没有任何内容,默认值选择空值。然后,我的SELECT语句的WHERE部分在@ItemNum中的item_num处 当我预览报告时,如果我: 保持空复选框处于选中状态,并且项参数显然为空,它将灰显或为空 取消选中空复选框,但不要在参数中输入值 我能得到任何结果的唯一方法是输入一个有效的项目编号 我认为,如果您允许空值和/或允许空白值,它应该忽略该参数。也许是因为它在

新手到SSRS,运行2005。我希望有人能帮忙

我有一个带有参数ItemNum的报告。我把它作为一个字符串,允许空值和空值,在可用值中没有任何内容,默认值选择空值。然后,我的SELECT语句的WHERE部分在@ItemNum中的item_num处

当我预览报告时,如果我:

保持空复选框处于选中状态,并且项参数显然为空,它将灰显或为空 取消选中空复选框,但不要在参数中输入值

我能得到任何结果的唯一方法是输入一个有效的项目编号

我认为,如果您允许空值和/或允许空白值,它应该忽略该参数。也许是因为它在where子句中

如何使该函数符合我的需要,即如果选中或取消选中空复选框,并且没有输入值,则忽略该参数,或者换句话说,返回所有记录

另外,作为第二个问题,是否可以使用与参数类似的比较,或者它是否必须始终位于中?

尝试将WHERE子句更改为:

WHERE @ItemNum is null OR item_num IN (@ItemNum)
在这种情况下,需要显式检查NULL


事实上,为什么要在中使用单个值?它通常用于检查多个值,例如,其中项目_num位于1、2、3、5、10中。一个简单的=就足够了。

克里斯帕洛先生-谢谢!!!:我把它改成=。我之所以在中,是因为我实际上还有几个其他参数,比如customer,我通过查询来构建所有可能的客户供选择,所以这些参数都在中。对于我的另一个问题,我有一个customer PO参数,我把它作为cust_PO_num喜欢@PONum并希望能够进行通配符查找的地方。除非我在参数中默认了%,不会再次返回任何结果。我知道用户会忘记字符必须在其中。如果为空,是否有方法告诉参数将%放入?应该问一个单独的问题,但您可以连接:如“%”+@PONumSir Crispalot-you rock:再次感谢您宝贵的帮助。给你一个网络感谢之吻:我很乐意——但我该怎么做呢?新到这个论坛!