Sql server 2008 r2 为多个记录调用存储过程的替代方法

Sql server 2008 r2 为多个记录调用存储过程的替代方法,sql-server-2008-r2,reportingservices-2005,Sql Server 2008 R2,Reportingservices 2005,我有一个显示记录汇总表的SSRS报告。单击其中一条记录后,它将转到该记录的单个报告,该报告上有多行可配置的行 现在,我必须在summary table报告中添加一列,显示在单个报告中选中的行号。数据库中已有一个标量函数,用于确定是否根据记录的GUID和为该行指定的内部标签字符串检查该行。还有一个存储过程,用于从数据库获取要在报告上显示的行号 因此,为了获得要在摘要报告上显示的行号,我计划为存储过程中获取摘要报告记录的每条记录调用一个UDF。但在这种情况下有一个问题,因为我无法从函数调用存储过程。

我有一个显示记录汇总表的
SSRS
报告。单击其中一条记录后,它将转到该记录的单个报告,该报告上有多行可配置的行

现在,我必须在summary table报告中添加一列,显示在单个报告中选中的行号。数据库中已有一个标量函数,用于确定是否根据记录的
GUID
和为该行指定的内部标签字符串检查该行。还有一个存储过程,用于从数据库获取要在报告上显示的行号

因此,为了获得要在摘要报告上显示的行号,我计划为存储过程中获取摘要报告记录的每条记录调用一个
UDF
。但在这种情况下有一个问题,因为我无法从函数调用存储过程。我需要调用存储过程,该过程获取要为每个记录显示的行号,因为行号对于不同的记录可能是唯一的


然后我考虑将函数转换为存储过程,但这意味着我需要为每个需要
WHILE
循环或游标的记录调用它。我不确定这个循环是否是我的情况下最好的解决方案。我无法更改将行号获取到函数的存储过程,因为在此之前,许多其他报表都使用它,并且需要更改所有这些报表的存储过程

您能否将“获取要在报表上显示的行号的存储过程”作为一个函数进行返工?正如我提到的,这将要求我对所有已经使用它的报表进行更改。我刚刚在SQL Server Management studio中检查了依赖项,并且至少有30个其他存储过程在使用它。您可以将存储过程保留在适当的位置,然后将算法复制为函数OK,那么您的意思是创建一个只用于此特定情况的函数吗?