标签: rdl

何时使用RDLC而不是RDL报告?

我在过去几周一直在研究SSRS 2005/2008,并创建了一些服务器端报告.对于某些应用,一位同事建议我针对该特定情况研究RDLC.我现在试图了解RDL和RDLC之间的主要区别.

搜索此信息最多会产生碎片化信息.我了解到:

  • RDLC报告不存储有关如何获取数据的信息.
  • RDLC报告可以由ReportViewer控件直接执行.

但我仍然不完全理解RDLC文件与其他相关系统(报告服务器,源数据库,客户端)之间的关系.

为了更好地掌握RDLC文件,我想知道它们的使用与RDL文件的区别以及在什么情况下选择RDLC而不是RDL.也欢迎链接到资源.

更新:

ASP.NET论坛上的一个主题讨论了同样的问题.从中,我对这个问题有了更好的理解.

RDLC的一个特性是它可以在ReportViewer控件中完全在客户端运行.

  • 这消除了对Reporting Services实例的需要,甚至无需任何数据库连接,但是:
  • 它增加了必须手动提供报告中所需数据的要求.

这是优势还是劣势取决于具体应用.

在我的应用程序中,无论如何都可以使用Reporting Services实例,并且可以轻松地从数据库中提取报告所需的数据.有什么理由让我考虑RDLC,还是我应该坚持使用RDL?

rdlc rdl reporting-services

114
推荐指数
7
解决办法
13万
查看次数

已发布的RDL文件位于何处?

发布报告服务报告时.实际的.RDL文件在服务器上的位置在哪里?

我可以通过浏览报表管理器重新下载.RDL文件吗?但是这个文件位于报告服务服务器上的哪个位置?

谢谢

reporting rdl reporting-services

54
推荐指数
3
解决办法
6万
查看次数

在SSRS中,有没有办法禁用rdl.data文件创建

在SSRS中,我注意到rdl.data缓存文件存储在我的开发机器上.运行报告时,这些文件是否也存储在Reports Server上?如果是这样,有没有办法避免在服务器上创建这些文件?

rdl reporting-services

19
推荐指数
2
解决办法
2万
查看次数

SSRS tablix垂直合并单元格问题

我在TablixCell中找到了colspan和rowspan属性,但是在报表设计器中仍然无法垂直合并单元格,如果我手动设置Rowspan修改RDL xml文件,则reportViewer会显示错误信息:TablixCell中的CellSptents必须为1 .

有没有其他方法来实现tablix的垂直合并单元格?

reportviewer rdlc rdl reporting-services

19
推荐指数
4
解决办法
4万
查看次数

MS报告缓存文件(*.rdl.data)应该存储在源代码管理中吗?

我正在为使用Reporting Services的客户端编写遗留应用程序.我已导入项目SVN存储库,其中包括一个Reporting项目和文件夹,在Visual Studio Reporting解决方案/项目中进行设置.

此SVN文件夹(但不包括VS解决方案/项目)包含.rdl文件(实际报告定义)和.rdl.data文件.我相信.rdl.data文件用于缓存报告.

从开发的角度来看,这些.rdl.data文件应该是源代码控制的吗?我正在考虑从存储库中删除它们,因为它们往往会经常更改(几乎每次我都预览报告),并且它正在制作SVN报告文件/文件夹已经更改,这很令人恼火.

我不认为这些.rdl.data文件是开发所必需的.可以/应该从源代码管理中删除它们吗?

svn version-control report rdl

15
推荐指数
1
解决办法
1826
查看次数

您可以重新排序报表设计器中的列(出价2005)

我有一个报告服务报告,我似乎无法弄清楚如何重新排序表控件中的列.这可以直接编辑rdl文件吗?

visual-studio-2005 rdl bids reporting-services

14
推荐指数
2
解决办法
2万
查看次数

报表查看器Web控件需要Web表单上的System.Web.UI.ScriptManager

我试图调用在SSRS中创建的.rdl报告在aspx页面中调用; 但我收到以下错误:

报表查看器Web控件需要System.Web.UI.ScriptManagerWeb表单上的

我的守则如下,

protected void Page_Load(object sender, EventArgs e)
{
    //string query = Session["ClosedBugsResult1"].ToString();

    if(!IsPostBack)
    ReportViewer1.ProcessingMode = ProcessingMode.Remote; 
    ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://localhost/reportserver"); 
    ReportViewer1.ServerReport.ReportPath = @"D:\Users\XXX\Documents\Visual Studio 2008\Projects\BugtrackerSample1\BugTrackerSample\BugTrackerSample\Report1.rdl"; 

    //ReportParameter[] param = new ReportParameter[1]; 
    //param[0] = new ReportParameter("CustomerID", txtparam.Text);
    //ReportViewer1.ServerReport.SetParameters(param);
    System.Web.UI.ScriptManager scriptManager = new ScriptManager(); 
    Page page = new Page();
    System.Web.UI.HtmlControls.HtmlForm form = new HtmlForm();
    form.Controls.Add(scriptManager); 
    form.Controls.Add(ReportViewer1); 
    page.Controls.Add(form);
    page.DataBind();  //exception here 
    ReportViewer1.ServerReport.Refresh();
}
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.

.net rdl reporting-services

12
推荐指数
1
解决办法
4万
查看次数

在Visual Studio 2017中更改RDLC报告的RDL版本

我在.NET Framework 4的Visual Studio 2017中有一个项目.对于报告,我使用的是RDLC设计器,但是我遇到了问题.设计人员使用RDL 2016创建报告,我需要您使用2010定义.

我可以配置吗?

我需要它,因为该程序必须与Windows XP兼容,并且没有支持RDL 2016 for Windows XP的ReportViewer Runtime.

reportviewer rdlc rdl visual-studio visual-studio-2017

12
推荐指数
2
解决办法
2万
查看次数

通过表达式设置值时不显示SSRS外部图像

Microsoft.ReportViewer.WebForms通过嵌入在MVC应用程序中的aspx页面使用版本11。该报告可直接从报告查看器中以PDF格式呈现。

问题

我有一个Tablix可以显示外部图像。如果图像的URL是从表达式中计算出来的,或者是从数据库中的列设置的,则图像不会显示。仅当我直接在报告中对URL进行硬编码时,才会显示该图像。显然,这不是解决方案,但是它表明报表能够访问URL并呈现图像。

我从呈现报告时得到以下警告:

图片“ LinkedImage”的ImageData无效。详细信息:无效的URI:无法确定URI的格式。

图像“ LinkedImage”的ImageData属性的值为“”,这不是有效的ImageData。

我尝试过的

  1. 我已经仔细检查了生成的URL,它是正确的。我什至使点击动作成为了指向图像的超链接,它可以正确地转到图像。

  2. 最初,我是在表达式中连接URL,但此操作不起作用后,我让SQL Query构建了整个URL。它仍然不显示。

  3. 我尝试设置一个标志:

    reportViewer.LocalReport.EnableExternalImages = true;
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使用.NET Reflector生成PDB文件,我能够逐步浏览报告查看器的代码。在值对象上有一个名为“ IsExpression”的标志,在报表呈现时将其设置为false。我不太了解报表查看器的内部工作原理,因此不知道这是不是一个红鲱鱼。

  5. 我已将输出格式更改为HTML,但仍不显示。图片标记(在Chrome开发者工具中可以看到)呈现为:

    <img onload="this.fitproportional=true;this.pv=0;this.ph=0;" height="5px" width="1px" src=(unknown)>
    
    Run Code Online (Sandbox Code Playgroud)
  6. 我尝试将MIMEType值设置为每个图像的正确值。(感谢迈克·霍尼的建议)

  7. 我尝试了AutoSizeFitFitProportionalClip的不同大小调整值。

  8. 我在这里使用安装程序修复并完全重新安装了ReportViewer运行时安装程序:https : //www.microsoft.com/zh-CN/g/download/details.aspx? id =35747

  9. 我已经从本地Visual Studio实例和另一个服务器上的网站(已安装ReportViewer版本)中的已部署版本运行了网站,问题仍然存在。

我想提请注意数字4。是否有一种配置会导致ReportViewer代码无法将值视为表达式?

这是RDL中的标记:

<Image Name="LinkedImage">
    <Source>External</Source>
    <Value>=Fields!imageUrl.Value</Value>
    <Sizing>FitProportional</Sizing>                               
    <Style>
        <Border>
            <Style>None</Style>
        </Border>
    </Style>
</Image>
Run Code Online (Sandbox Code Playgroud)

这是一个示例URL(从示例中删除了主机):

http://---------/images/FEE40608-0457-E511-A17F-00155D145C00/FFE40608-0457-E511-A17F-00155D145C00.jpg
Run Code Online (Sandbox Code Playgroud)

我想念什么吗?谢谢!

c# asp.net webforms rdl reporting-services

11
推荐指数
1
解决办法
227
查看次数

RDLC调用过时的SecurityAction枚举

我正在使用Microsoft.Reporting.Webforms版本10来解析RDLC文件并生成PDF.RDLC是一个带有几个嵌入式表达式的简单发票.

当我运行应用程序时,我得到一个异常,即在编译表达式时已经调用了已过时的SecurityAction.RequestMinimum.

这是一个已知的bug还是我可以补救的东西?

编译表达式时发生意外错误.本机编译器返回值:'[BC40000]'RequestMinimum'已过时:'程序集级声明式安全性已过时,默认情况下不再由CLR强制执行.有关详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkID=155570.'.'.

在Microsoft.Reporting.PreviewStore.GetCompiledReport(CatalogItemContextBase context,Boolean)上的Microsoft.Reporting.PreviewStore.StoredReport.EnsureCompiled(CatalogItemContextBase itemContext)中的Microsoft.Reporting.ReportCompiler.CompileReport(ICatalogItemContext context,Byte [] reportDefinition,Boolean generateExpressionHostWithRefusedPermissions,ControlSnapshot&snapshot) Microsoft的Microsoft.Reporting.LocalService.GetCompiledReport(CatalogItemContextBase itemContext,Boolean rebuild,ControlSnapshot&snapshot)中的Microsoft.Reporting.PreviewStore.GetCompiledReport(CatalogItemContextBase context,Boolean rebuild,ControlSnapshot&snapshot)中的rebuild,Byte []和reportDefinition,ControlSnapshot&snapshot). Microsoft.Reporting.WebForms.LocalReport.EnsureExecutionSession()中的Reporting.LocalService.CompileReport(CatalogItemContextBase itemContext,Boolean rebuild)

vb.net reporting rdlc rdl reporting-services

10
推荐指数
1
解决办法
6129
查看次数