Reporting Services 的多值参数究竟能否用在数据集获取途径为存储过程的情景呢?...
编写映射到多值报表参数的查询
您可以为要创建的任何报表参数定义多值参数。不过,如果要将多个参数值传回查询,则必须满足下列要求:
- 数据源必须为 SQL Server、Oracle 或 Analysis Services。
- 数据源不能是存储过程。Reporting Services 不支持将多值参数数组传递给存储过程。
- 查询必须使用 IN 语句来指定参数。
MSDN有上述的描述,可见多值参数必须用于数据集查询文本为Select ... Where XXXId in (@Parameters)的典型应用,
如果用到存储过程就会报类型(ID参数是字符串型)无法转换等错误;
如获取数据为 exec dbo.pGetOrders @OrderID (存储过程内容见如下代码)
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[spGetOrders]
@OrderIDs varchar(500) = ''
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sql varchar(500)
SET @sql = 'SELECT * FROM Sales.SalesOrderDetail';
IF @OrderIDs <> '' SET @sql = @sql + ' WHERE [SalesOrderID] IN (' + @OrderIDs + ')';
EXEC (@sql);
SET NOCOUNT OFF;
END;
上面问题通过笔者反复琢磨,找到一种变通的办法:
增加一个“内部”参数,将其设置为级联参数(必须排列在上面提到的多值参数之后),如@InnerOrderIDs类型为String,可用值和默认值都设置为表达式如下:
=Join(Parameters!OrderID.Value, ", ")
然后修改获取数据的SQL为 exec dbo.pGetOrders @InnerOrderIDs就大功告成!
转载于:https://www.cnblogs.com/chriskwok/archive/2009/02/11/1388220.html
Reporting Services 的多值参数究竟能否用在数据集获取途径为存储过程的情景呢?...相关推荐
- Reporting Services 错误案例一则
遇到一个有意思的Reporting Services报表的案例,在2015-01-30号的凌晨20分左右的时候,有人发现Reporting Services的速度非常慢,而且最后有抛出异常,当时不知道 ...
- Reporting Services 的伸缩性和性能表现规划(转载)
简介 Microsoft? SQL Server? Reporting Services 是一个将集中管理的报告服务器具有的伸缩性和易管理性与基于 Web 和桌面的报告交付手段集于一身的报告平台.Re ...
- ×××S:Reporting Services 技巧
×××S:Reporting Services 技巧 表达式 1.序号:=RunningValue(1, sum, nothing) 2.总记录数: =CountRows() 3.今天日期:=Toda ...
- SQL Server Reporting Services最佳做法
介绍 ( Introduction ) In past chats, we have had a look at a myriad of different business intelligence ...
- Reporting Services 2016中不推荐使用的5大功能
It's not often that I write negative articles surrounding SQL Server's latest release but ever since ...
- sql2012 ssrs_您必须在SQL Server Reporting Services(SSRS)中记录的十件事
sql2012 ssrs Documentation is never fun. I curse having to do it and I curse the person who didn't d ...
- sql server 监视_使用SQL Server Reporting Services进行快速,肮脏的服务器监视
sql server 监视 介绍 (Introduction) A few month back, I found myself in a position where the client want ...
- python slicer_报表筛选:Excel Slicer与SQL Server Reporting Services(SSRS)参数
python slicer This article explores the report filtering using Excel Slicer and SQL Server Reporting ...
- 如何使用SQL Server Reporting Services将数据格式转换为有价值的数据集
介绍 ( Introduction ) Oft times we are forced into situations where we must clearly think outside of t ...
最新文章
- R语言找到CRAN库已经不在提供的包、手动下载并使用RStudio进行安装
- java 获取微信公众号code为空
- java中File的使用
- 如何建立分类模型matlab,创建简单模型
- MATLAB Simulink
- MathWorks 中国
- c# Message const
- java.math.BigDecimal cannot be cast to java.lang.Integer
- html期末作品,走完HTML和CSS,进军期末
- istio入门与实战 pdf 下载_Istio实战指南 PDF 下载
- tf卡可以自己裁剪成nm卡_真假TF卡鉴定方法
- 学计算机应用技术掉头发,为什么程序员更容易脱发呢?
- 西安2020EC游记
- 如何使用ArcGIS制作真实的植被
- JavaScript全栈开发-工具篇
- 不卷了!技术团队成员集体辞职
- 大型颚式破碎机在石料生产线中有着怎么样的表现形式
- 2058:简单计算器
- 解析几何 曲线与二次曲面 曲面方程与坐标变换(2.1,2.2)
- 农民抗征地住帐篷夜间起火1死3伤
- java程序运行机制
- 新加坡金融科技节 | 蚂蚁金服CTO程立:面向全球开放,与合作伙伴共赢 1
热门文章
- 用python爬取一个人所有信息_python实战===爬取所有微信好友的信息
- 用 Python 写个贪吃蛇,保姆级教程
- java数列求和_java中关于数列求和的计算方法
- 单片机编程简单吗?arduino为什么不适合大学生?
- 怎样学会单片机?先学什么,怎么入门?
- mysql数据库导出mdf文件_数据库 导出mdf
- 【Java】leetCode 21 合并两个有序链表
- 关于学习Python的一点学习总结(6->元组)
- 图论 ---- 构造DFS树的思想 K - Boomerangs Gym - 102001K
- 图论 ---- 图论构造成二分图去判断 F. Figure Fixing