本文介绍了如何将多个值传递给报表查看器数据源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
I am trying to develop client side report in visual studio 2012. My report is working fine with different selection criteria variables. I am getting error while multi selected list values in filters.
In query in need id as SkillTargetID IN (@AgentList). when I pass single value as 5000 its working fine and showing records. But when I pass multiple values as 5000,5001,5002 etc then got error. [An error has orrcurred during report processing. cannot crate a connection to data source 'MyDataSource'. Conversion failed when converting to nvarchar value '5000,5001,5002' to data type int.]
I had tried with
5000,5001,5002
'5000','5001','5002'
(5000,5001,5002)
('5000'),('5001'),('5002')
Any suggestion to pass multiple values to report viewer. I am trying this on visual studio 2012, Sql server 2008 r2 and .net framework 4.5.
推荐答案
Sill I couldn't find any proper solution but I solve my problem by changing DataSource SelectCommand query. On report refresh button_click I just change MyDataSource.SelectCommand query as
string AgentIds = "5000,5001,5002";
MyDataSource.SelectComamnd = "Select * from Agent where AgentId IN ('" + AgentIds + "')";
ReportViewer1.LocalReport.Refresh();
and it works. If anyone find a batter solution to add multiple values to DataSource variable then please update me.
这篇关于如何将多个值传递给报表查看器数据源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!