请教devexpress xtrareport问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教devexpress xtrareport问题相关的知识,希望对你有一定的参考价值。

1.主从报表,每个group有一个统计信息和一个签名档,统计信息要跟着detail信息,签名档要在页面的最下面,detail信息没结束的页不需要显示统计信息和签名档,有办法实现么2.detail信息表头问题,表头需要在每页都显示,但是每个组的第一页都会有group头,表头应该在group头下面,怎么设置3.描述信息太长的时候,怎么设置信息往cell外面延伸,而不是换行;若能够延伸,此cell右边的信息要怎么处理?下图,红框为问题1,绿框问题2,篮框问题3
我自己解决了,groupheader和groupfooter要画在DetailReport层下,而不是最外层

参考技术A 方法一(在.net控件群主提供) 用的是中文版的开发环境中有此问题,英文版开发环境下没有此问题,可以添加。由此分析可能与项目模板的安装情况有关: 打开C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates 可以看到下面有 CSharp、JSharp、VisualBasic、Web这样4个目录,进入 CSharp子文件夹,发现有 1028(这是繁体版的,如果是简体版则是2052)和1033目录,而英文版相应位置是一个 1033 目录,对比文件夹内的文件,发现英文版多出 XtraReport.v61.zip、XtraReport.zip、XtraReportWizard.v6.1.zip、XtraReportWizard.zip这样几个文件,看来,中文版无法创建XtraRepot项目的原因就在此了,估计是由于DevExpress安装包在安装过程中没有复制这些文件到1028目录。解决办法: 1、将C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\CSharp\1033 目录下这些文件复制到中文版对应C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\CSharp\1028 目录下。 2、 将C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplatesCache\CSharp\1033 目录下这些文件复制到中文版对应C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplatesCache\CSharp\1028目录下。 3、运行 C\Program Files\Microsoft Visual Studio 8\Common7\IDE\devenv /setup说明:以上1、2点是对CSharp的,其他对应的各开发语言类似。

XtraReport 未显示任何数据

【中文标题】XtraReport 未显示任何数据【英文标题】:XtraReport not showing any data 【发布时间】:2015-11-09 14:12:12 【问题描述】:

我已按照本文档link 中的说明进行操作。 xtrareport 显示框工具栏,但不显示任何数据。我做错了什么?

在我的 HomeController.cs 中

 public ActionResult Index()
        
            ViewBag.Message = "Welcome to DevExpress Extensions for ASP.NET MVC!";
            ViewData["Report"] = new DXApplication.Reports.XtraReport1();

            return View();
        

       public ActionResult DocumentViewerPartial() 
       
        ViewData["Report"] = new DXApplication.Reports.XtraReport1();
        return PartialView("DocumentViewerPartial");
        



        public ActionResult ExportDocumentViewer()
        
            return DevExpress.Web.Mvc.DocumentViewerExtension.ExportTo(new DXApplication.Reports.XtraReport1());
        

DocumentViewerPartial.cs

**@Html.DevExpress().DocumentViewer(settings =>

    settings.Name = "DocumentViewer";
    settings.Report = (DXApplication.Reports.XtraReport1)ViewData["Reports"];

    settings.CallbackRouteValues = new  Controller = "Home", Action = "DocumentViewerPartial" ;
    settings.ExportRouteValues = new  Controller = "Home", Action = "ExportDocumentViewer" ;
).GetHtml()**

还有Index.cshtml


    ViewBag.Title = "Home Page";


@ViewBag.Message

@Html.Action("DocumentViewerPartial")

【问题讨论】:

【参考方案1】:

尝试更改 DocumentViewerPartial.cs ViewData["Reports"]ViewData["Report"]

【讨论】:

【参考方案2】:

在 XtraReport1 中你是怎么写的?如果您提供您的代码 XtraReport1 或为我们提供一个简单的案例演示,那就太好了。 我在你的控制器中看到,如果你写它,它将获得第三个数据: ViewData["Report"] = new DXApplication.Reports.XtraReport1();

    Index()中的第一个 DocumentViewerPartial() 中的第二个 ExportDocumentViewer() 中的第三个

准备好你只需要第一次获取数据,你可以写:

public ActionResult Index()
    
        ViewBag.Message = "Welcome to DevExpress Extensions for ASP.NET MVC!";
        return View();
    

   public ActionResult DocumentViewerPartial() 
   
    Session["Report"] = new DXApplication.Reports.XtraReport1();
    return PartialView("DocumentViewerPartial");
    

    public ActionResult ExportDocumentViewer()
    
        return DevExpress.Web.Mvc.DocumentViewerExtension.ExportTo(Session["Report"] as XtraReport1());
    

然后在 DocumentViewerPartial.cs 中编辑:

@Html.DevExpress().DocumentViewer(settings =>
settings.Name = "DocumentViewer";
settings.Report = (DXApplication.Reports.XtraReport1)Session["Reports"];

settings.CallbackRouteValues = new  Controller = "Home", Action = "DocumentViewerPartial" ;
settings.ExportRouteValues = new  Controller = "Home", Action = "ExportDocumentViewer" ;).GetHtml()

然后在你调用的文件 Index.cshtml 中最终:

@Html.Partial("ExportDocumentViewer")
@Html.Partial("DocumentViewerPartial")

请进行相应的修改并让我知道你的结果。

【讨论】:

以上是关于请教devexpress xtrareport问题的主要内容,如果未能解决你的问题,请参考以下文章

DevExpress XtraReport GDI+ 一般错误

DevExpress XtraReport 报表设计 添加DetailReport

devexpress XtraReport报表 ---主从报表

Devexpress XtraReports的使用

Devexpress Xtrareport 并排报表

如何动态传递参数到DevExpress XtraReports