Sql server 如何检索';报告中没有设定什么?

Sql server 如何检索';报告中没有设定什么?,sql-server,reporting-services,reportbuilder3.0,Sql Server,Reporting Services,Reportbuilder3.0,我在报表生成器中工作,调用一个存储过程,该存储过程有一个参数,当为null时,该参数将自身设置为某个值。我想显示此参数在报告中的设置。通过实验,报表生成器的参数集合仅显示从报表发送的参数 我已经考虑过但无法实施或次优的备选方案: 将参数添加到select语句中。主要缺点是,如果没有结果,则不会显示值 使用返回值或输出参数。似乎没有办法做到这一点 在存储过程中重新创建“null”逻辑。显示正确的输出,但这是一个代码叉 如何显示此值?是否有显示返回值或输出值的方法?您可以更改过程以在UNION AL

我在报表生成器中工作,调用一个存储过程,该存储过程有一个参数,当为null时,该参数将自身设置为某个值。我想显示此参数在报告中的设置。通过实验,报表生成器的参数集合仅显示从报表发送的参数

我已经考虑过但无法实施或次优的备选方案:

  • 将参数添加到select语句中。主要缺点是,如果没有结果,则不会显示值
  • 使用返回值或输出参数。似乎没有办法做到这一点
  • 在存储过程中重新创建“null”逻辑。显示正确的输出,但这是一个代码叉

  • 如何显示此值?是否有显示返回值或输出值的方法?

    您可以更改过程以在UNION ALL select中返回参数值,以便始终返回具有参数值的行。该行的所有其他列都可以为NULL,以便您可以在报告的其余部分中将其过滤掉

    另一种可能是向报表中添加第二个数据集,该数据集除了根据传递的内容获取参数值之外,什么也不做。然而,这也是一种代码分叉。但是,可以通过将fork放在一个UDF中,并在两个数据集中配置相同的UDF来缓解fork


    还有一种可能性是复制在报告的自定义代码块中填充参数的逻辑。然而,这也是一个代码分叉。

    我从未在报表生成器界面中工作过,但我确实有相当多的在BIDS/VS中构建报表的经验。。。这里有一个简单的问题,就是在rdl中设置参数default以匹配存储过程中的默认值。

    该参数是否用于筛选列?@scsimon我尝试将参数添加为列并将文本框绑定到列,但正如我在#1中所说的,如果结果为零,则不会显示值。