我在MS SQL DB中有html.我想在SSRS页面上呈现html,这可能吗?
我有一份SSRS 2005报表,打印到Zebra ZDesigner TLP 2844-Z标签打印机.交互式和页面大小设置为4"宽,3"高.由于SSRS中没有纸张方向,因此当它应该是纵向时,假设这是一个横向报告,从而侧向打印标签.
用户可以在调整打印设置后导出为PDF并进行打印,但生成/打印pdf的额外点击是不可接受的.
有没有办法强制打印作业打印肖像或其他解决方法/技巧来执行此操作?
我需要将一个值作为参数从ASP.Net应用程序传递给SSRS Report.How我可以这样做吗?有人能帮帮我吗?
提前致谢.
我只是想知道如何在报告中显示正确的执行时间?
直到最近,我一直在报告的页脚中使用以下内容作为标签表达:
="Execution Time: " +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).TotalSeconds < 1, "0 seconds",
(
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Hours > 0, System.DateTime.Now.Subtract(Globals!ExecutionTime).Hours & " hour(s), ", "") +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Minutes > 0, System.DateTime.Now.Subtract(Globals!ExecutionTime).Minutes & " minute(s), ", "") +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Seconds > 0, System.DateTime.Now.Subtract(Globals!ExecutionTime).Seconds & " second(s)", ""))
)
Run Code Online (Sandbox Code Playgroud)
不幸的是(正如预期的那样)每当我浏览到报告的第二页或导出为PDF时,这个值都会重新计算(因此,如果我以1秒呈现报告,等待30秒然后导出为pdf,则执行时间将显示为31秒) .
在不使用上述信息的情况下显示报告执行时间的最佳方法是什么?
编辑(回答,因为我不能发布一个<100声誉):
我实际上对此采取了不同的方法,因为直到现在我还没有注意到任何回复.也许不如上面的答案那么好,但我会说一个简单的解决方案,可以实现替代解决方案的技能不可用的地方:
如前所述,我有以下内容:
="Execution Time: " +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).TotalSeconds < 1, "0 seconds",
(
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Hours > 0, System.DateTime.Now.Subtract(Globals!ExecutionTime).Hours & " hour(s), ", "") +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Minutes > 0, System.DateTime.Now.Subtract(Globals!ExecutionTime).Minutes & " minute(s), ", "") +
IIf(System.DateTime.Now.Subtract(Globals!ExecutionTime).Seconds > 0, …
Run Code Online (Sandbox Code Playgroud) reporting reportingservices-2005 reporting-services ssrs-2008
我必须start_date
根据报告参数设置我的报告.时间戳在数据库查询中计算.
我的表情看起来像这样:
=SWITCH (
Parameters!report_type.Value = 1,First(Fields!daily_start.Value, "Timestamps")
,Parameters!report_type.Value = 2,First(Fields!weekly_start.Value, "Timestamps")
,Parameters!report_type.Value = 3,First(Fields!monthly_start.Value, "Timestamps")
)
Run Code Online (Sandbox Code Playgroud)
不幸的是我收到错误消息:
用于报告参数"time_from"的值表达式是指字段.字段不能用于报表参数表达式
我知道,这是不允许的,因为SSRS无法确定调用数据集的顺序.但我认为这并不危险.
所有时间戳都是通过查询接收的,没有参数.report_type
在生成报告之前,用户选择该参数.
有人可以给我一个解决方法的提示吗?
我们最近将SSRS2005服务器之一升级到SSRS2008,并发现我们使用报告服务Web服务生成报告的所有应用程序都不再有效.
第一个问题是ReportService.asmx不再提供Web服务本身,并且已被替换为:ReportService2005.asmx.
我们将Web引用更改为新位置,现在我们收到的消息是.Render()方法不是ReportService2005.asmx的一部分.在SSRS2008中,以下代码实现被替换了什么?
report = rpt.Render(ReportPath + ReportName, this.Format.ToString(), null, devInfo.ToString(), parameters, null, null, out encoding, out mimetype, out parametersUsed, out warnings, out streamids);
Run Code Online (Sandbox Code Playgroud)
编辑
在做了一些研究之后,事实证明ReportService.asmx是SQL 2000 Reporting Services的一部分,现在已经不再使用SQL 2008 Reporting Services了.
我有两个使用SSRS 2005构建的报告.第一个报告设置为在单击特定字段时导航到第二个报告.我在文本框的"跳转到URL"属性中使用类似于以下内容的表达式:
="javascript:void(window.open('http://server/reportserver?%2fFolder%2fMyReport&rs:Command=Render&Date=" & Fields!Date.Value & "&MachineId=" & Fields!Machine.Value & "'))"
Run Code Online (Sandbox Code Playgroud)
第二个报告上有一个多值参数.调用此报告时,我需要在URL查询字符串中为此参数传递多个值.有没有办法在报表的查询字符串中为参数传递多个值?或者您可以传递一个参数,该参数将导致选择全部选择值吗?
谢谢.
默认情况下,csv将文本框名称作为列的csv标头名称.文本框不允许空格.
如何制作与csv文本框不同的标题?
有没有办法在导出到csv时在标题中显示逗号?
注意:解决方案必须仅用于一个报告; 不全球化.
reportingservices-2005 reporting-services ssrs-tablix export-to-csv
因此,我正在尝试创建一个能够使用Reporting Services 2008预填"政府表单"的报表.
现在这一切都归结为每个人似乎都有的96 DPI问题.
假设我有300 DPI高分辨率JPG文件,我想将其用作报告的背景图像.(这个jpg实际上是对我试图预填的政府形式的扫描)
当您设置矩形对象(甚至整个报表正文)的"填充"选项时 - 您没有选项,只能将其设置为原始大小.我似乎无法使图像与矩形的大小成比例.
如果我将图像添加为..."图像对象" - 我得到了我想要的正确的震撼恐怖 - 因为我可以选择"适合比例"的尺寸选项,然后根据需要调整我的"图像对象".
但是 - 您无法在图像对象的顶部覆盖文本框.因为我的图像对象包含我试图从数据集预填充的字段 - 它失败了.
有任何想法吗?
我搜索了很多,发现通常无法完成.我遇到了其中一个黑客:
http://www.bp-msbi.com/2011/04/ssrs-cascading-parameters-refresh-solved/
但它在2005年的ssrs中并不适合我.只是想知道是否有其他人在2005年尝试过它.或者是否还有其他可以尝试的黑客攻击.
根据本文,仅当第一个参数中的选择使其值无效时,依赖参数才会刷新.如果我们可以在每次参数更改时使相关参数无效,我们将强制执行完整刷新.一种简单的方法是附加一个值,例如使用NEWID()T-SQL函数获得的GUID.
所以基本上我们想在两个真实参数之间引入一个假参数.这个假参数应该每次返回新值,因为每次调用proc时,后面的storedproc都会为结果集添加一个guid.因此它强制完全刷新其他参数.
现在我面临的主要问题是:
设置此伪参数的默认值.对于可用值,伪param后面的storedproc运行并返回格式为data:result1,result2_GUIDFROMSQL的数据
现在看起来再次调用相同的storedproc来设置defult值,如果我要求它从查询中获取默认值.但是当再次运行storedproc时,会出现新的guid,因此无法找到旧值,因此无法按需设置.
我只需要找出一种机制将这个guid从引入的param传递给下一个param.
那就是我失败的地方.
我的问题可以简单地通过创建一个数据源为此查询字符串的param来复制.
select getdate() id, @name nid
Run Code Online (Sandbox Code Playgroud)
所以在这种情况下如何为此参数设置默认值.