您如何通过SSRS 2005显示正在运行的GROUP计数?
我有一个报告,其中有n个组,其中源数据必须保持匿名,我希望该组的标题中包含该数字...
因此,而不是像这样的组头中的名称...
员工 - 约翰史密斯
员工 - 玛丽斯温
...
员工 - 艾哈迈德萨尔
我想......
员工#1
员工#2
......
员工#n
谢谢!!!
我有一个SSRS报告,当行数大于Excel 2003限制65536时,该报告无法导出到Excel
该报告已经具有组页脚的分组级别.
我试图在表达式上添加一个额外的分组级别和分页符
=ceiling(rownumber(nothing)/65536)
Run Code Online (Sandbox Code Playgroud)
但是,这会计算详细信息行,但不会考虑组页脚.因此,当实际行数超过65536时,rownumber的计算结果为53000.
以下表达式
=ceiling(RunningValue(Fields!myfirstgroup.Value, CountDistinct, Nothing) + rownumber(nothing) / 65536 )
Run Code Online (Sandbox Code Playgroud)
将给出包括组页脚在内的实际行数,但SSRS不允许在运行值表达式上使用组.
如何在65536行之后强制分页以允许导出到Excel?我曾希望在报告定义中完成此操作,并避免在查询中添加计算的页码.
任何帮助非常感谢
*更新 - 样本数据*
ItemDescription , Location , Quantity
Red lorry , M25 , 5
Red lorry , M6 , 2
Yellow lorry , M1 , 3
Run Code Online (Sandbox Code Playgroud)
报告对ItemDescription进行了分组,其中包含该项目的总计,因此它将显示
ItemDescription , Location , Quantity
Red lorry , M25 , 5
Red lorry , M6 , 2
Total for Red Lorry,7
Yellow lorry , M1 , 3
Total for Yellow Lorry,3
Run Code Online (Sandbox Code Playgroud)
这意味着从我的3行数据中,我有5个报告行,包括细节和页脚行.SSRS可以告诉我的数据集中有多少详细信息行,但我需要考虑页脚中断的页脚.
reportingservices-2005 sql-server-2008 reporting-services ssrs-grouping
我在SQL Server Reporting Services 2005中有一些报告,需要保留它们的审核日志。审核日志应包括谁运行带有哪些参数的报告。我不能使用Windows身份验证。
记录此信息的最佳方法是什么?
sql-server sql-server-2005 reportingservices-2005 reporting-services
我在SSRS 2005中有一个基于与此类似的查询的报告:
SELECT * FROM MyTable (NOLOCK)
WHERE col1 = 'ABC'
AND col2 LIKE '%XYZ%'
Run Code Online (Sandbox Code Playgroud)
我需要能够根据用户是否选中了复选框,在查询中动态包含WHERE子句的AND部分.基本上,这是一个动态SQL语句,这就是问题所在.我试过几种方法都无济于事.这可能吗?SSRS 2005是否支持动态SQL?谢谢!
在我们使用Reporting Services 2005的一个系统中,客户端要求报告以水印为特色,以确保由客户打印并发送的报告(例如:系统生成的合同文件,但必须签署并邮寄)是真实的.
我无法找到明确的方法来做到这一点.如果有人对如何在报告上进行简单的图像水印有任何建议,我们将不胜感激.
有没有人找到用Visual Studio 2008打开或编辑SSRS 2005报告项目的好工作呢?
SQL Server 2008工具将来是否是这些报告项目的迁移路径?我真的不想永远安装VS2005只是为了更新SSRS报告.
升级到VS2008后,将无法打开包含VS2005 SSRS报告项目的现有解决方案.根据我的理解,SQL Server 2005工具不了解VS2008,因此它们不会集成到IDE中.因此,目前我切换回VS2005以获取此项目的任何更新,并在每次我在2008年打开解决方案时收到错误加载项目消息.
编辑解决方案: 我能够从SQL2008光盘安装BDIS的共享组件,现在我可以在VS2008中打开和更新我的SSRS 2005 .rdl项目项.
其他人注意: 如果您在VS2008中编辑SSRS 2005报告并重新保存,则无法再在VS2005中编辑它们,或将它们部署到2005服务器.它们被上转换为2008年的报告文件.
调用SSRS 2005提供的ReportExecutionService2005 Web服务的LoadReport()方法时,我收到以下异常;
System.Web.Services.Protocols.SoapException:服务器无法识别HTTP标头SOAPAction的值
可能导致这种情况的任何想法?我的C#代码看起来像这样;
string _reportName = "/FolderName/ReportName";
string _historyID = null;
WebServiceProxy.RSExec.ExecutionInfo _executionInfo = null;
_executionInfo = rsExec.LoadReport(_reportName, _historyID);
Run Code Online (Sandbox Code Playgroud)
所有凭据都使用;
System.Net.CredentialCache.DefaultCredentials;
Run Code Online (Sandbox Code Playgroud) 嗨,我正在尝试制作一份报告,列出我们的报表服务器上的所有订阅,它们所在的报表,它们运行的时间和日期以及重新记录.到目前为止,我已经能够获得报告的报告和时间表列表.我似乎无法理解Schedule表中的值和列的含义.
如果有人能够阐明如何理解这些专栏和他们的价值观,我会非常感激.这是我到目前为止的查询.
使用ReportServer;
走
SELECT Users.UserName
,c.Name AS Report
,Subscriptions.Description
,Schedule.*
/*,Schedule.RecurrenceType
,Schedule.MinutesInterval
,Schedule.DaysInterval
,Schedule.WeeksInterval
,Schedule.DaysOfWeek
,Schedule.DaysOfMonth
,Schedule.[Month]
,Schedule.MonthlyWeek*/
FROM [目录] AS c
INNER JOIN订阅
ON c.ItemId = Subscriptions.Report_OId
INNER JOIN用户
ON Subscriptions.OwnerId = Users.UserId
INNER JOIN ReportSchedule
ON Subscriptions.SubScriptionId = ReportSchedule.SubScriptionId
INNER JOIN Schedule
on ReportSchedule.ScheduleId = Schedule.ScheduleId
谢谢,
克里斯
我会尽量通过过度简化报告结构来尽可能地解释这个问题.报告一包含1个名为ResourceCenter的组,然后包含一行总计.总计实际上是一个组,但分组是在SQL中完成的,并在详细信息组中显示.报告看起来像这样:
Report 1
ResourceCenter 1
Total1 11
Total2 4
Total3 8
ResourceCenter2
Total1 12
Total2 11
Total3 6
Run Code Online (Sandbox Code Playgroud)
从这份报告中,我需要深入研究另一个包含多个多值参数的报告.对于钻取,我可以为除EmployeeNumber之外的所有内容使用单个值.为此,我需要能够将EmployeeNumbers列表传递给报表2中的多值参数.当前,任何DataSet或参数中的EmployeeNumbers都不存在,但它们基于ResourceCenter.因此,如果用户运行了报告1并单击了ResourceCenter 1,我需要能够以报告2正确处理它的方式将与ResourceCenter 1关联的EmployeeNumbers列表传递给报告2中的多值参数.
注意:我应该补充一点,我创建了两个接受ResourceCenter输入的SQL函数,然后返回一个员工列表.一个是表值函数,它返回一列EmployeeNumbers.另一个是标量值函数,它将EmployeeNumbers作为逗号分隔值返回.然后我有一些自定义代码在后台运行SQL函数并返回列表.我没有取得任何成功返回SSRS可以使用的数据集,但我已经能够使标量值函数"工作",因为我可以在虚拟报告上创建一个字段并查看输出.不过,我没有幸运获得报告2来接受以逗号分隔的列表.
我有一个ssrs矩阵,其设计如下所示:

上面的数据集中使用的sql查询如下所示:
select [YEAR], [MONTH] as MONT , ProductName, NumberofSales from XYZ ;
Run Code Online (Sandbox Code Playgroud)
运行报表时,我的输出如下所示:

这里,列名9,10对应于9月 - 9月和10月 - 10月.
更改显示月份和上个月之间的数字差异.示例:十月份的销售数量 - 九月份的销售数量.
我想删除我在上图中圈出的列.能告诉我怎样才能做到这一点.??
我已经尝试右键单击" 更改"列并更改可见性属性,方法是添加一个表达式,看起来像这样:
=(Parameters!UserSelectedDate.Value=Fields!MONT.Value)
Run Code Online (Sandbox Code Playgroud)
但是这为我提供了一个完整的空白空间,如下所示:

但我这样做,不想看到空白.我想完全删除该列.如果可能,请告诉我.