精华内容
下载资源
问答
  • V5报表预览数据显示正常,与portal集成后数据显示异常
    在润乾报表V5中,报表数据显示格式设置后如图所示
    


    显示数据正常。

    与portal集成后数据显示如下图所示:




    小数点后位数显示错误

    针对此情况,解决方法为: 对出现错误的单元格使用函数round()处理。即可正常显示。

    round函数参考如下:
        函数说明:
            对数据在指定位置上进行截取,剩余部分四舍五入
            相关的函数有:
                ceil:对数据在指定位置上进行截取,剩余部分只要有值就进位
                floor:对数据在指定位置上进行截取,剩余部分只要有值全舍去
        语法:
            round(numberExp, {nExp})
        参数说明:
            numberExp       需要进行截取的数据
            nExp            整数,用于指定需要进行截取的位置,
                            >0:从小数点往右位移nExp个位数,
                            <0:从小数点往左移nExp个位数
                            =0:表示当前小数点的位置
        返回值:
            数值型
        示例:
            例1:round(3451251.274,0)     返回:3451251.0
            例2:round(3451251.274,-1)    返回:3451250.0
            例3:round(3451251.274,-2)    返回:3451300.0
            例4:round(3451251.274,1)     返回:3451251.3
            例5:round(3451251.274,2)     返回:3451251.27


    新手学习报表经历,欢迎各位指导。

    展开全文
  • C# 把数据放在水晶报表显示预览,水晶报表确实是一款实用的数据列表显示控件,对于从事C#软件开发来说,有必要掌握水晶报表的各种使用技巧,希望本例子能让您了解更多相关的知识。 运行环境:Visual Studio2010
  • 水晶报表预览

    2019-09-25 23:20:18
    1、创建一个CrystalReport.rpt新项目,将报表格式设计好,如图: 2、创建一个XMLSchema2.xsd新项目,...如点选某个按扭根据页面输入的查询条件得到的信息需产生一个报表预览出来: 该按扭事件方法为: protecte...

    1、创建一个CrystalReport.rpt新项目,将报表格式设计好,如图:

    2、创建一个XMLSchema2.xsd新项目,如图:

    3.将.rpt与.xsd建立连接,点选资料库档案-会弹出一个选择.xsd文件的窗口-找到相应路径选中.xsd文件点确认即可

    如点选某个按扭根据页面输入的查询条件得到的信息需产生一个报表预览出来:

    该按扭事件方法为:

    protected void btnSel_Click(object sender, EventArgs e)
        {
            if (tbSETACT_YM.Text == "")
            {
                Common.Common.ShowMsg(this, this.tbSETACT_YM, "庫存月結年月不能為空!");
                return;
            }
            ScriptManager.RegisterStartupScript(this.tbSETACT_YM, this.GetType(), "updateScript", "window.open('PrintRpt.aspx?setAct_YM=" + this.tbSETACT_YM.Text + "&stockName=" + this.ddlStockName.SelectedItem.Value + "','_blank');", true);//必须要跳转到另一页面才能显示出来CrystalReportViewer控件直接放在本页面显示
        }

    PrintRpt.aspx页面只有一个CrystalReportViewer控件,页面执行代码:

    View Code
     1 引用using CrystalDecisions.CrystalReports.Engine;命名空间
    2
    3 IM08RAcc acc = new IM08RAcc();
    4 protected void Page_Load(object sender, EventArgs e)
    5 {
    6
    7 }
    8 protected void Page_Init(object sender, EventArgs e)
    9 {
    10 //取得前一页面传来的两个查询条件
    11 string setAct_YM = Request["setAct_YM"].ToString();
    12 string stockName = Request["stockName"].ToString();
    13 //根据条件获得相应信息
    14 DataTable dt = new DataTable();
    15 dt = acc.getPrintDate(setAct_YM, stockName);
    16
    17 ReportDocument report = new ReportDocument();//创建一个rpt文件
    18 report.Load(Server.MapPath("CrystalReport.rpt"));
    19 report.SetDataSource(dt);将dt付给rpt
    20 this.CrystalReportViewer1.ReportSource = report;//绑定
    21 }

    报表显示效果为:



    转载于:https://www.cnblogs.com/pfcan66/archive/2012/03/06/2382357.html

    展开全文
  • 主要介绍了Angular 中使用 FineReport不显示报表直接打印预览,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
  • VS2010安装 Crystal Reports (水晶报表)完成后,在页面中添加CrystalReportViewer后,页面中不显示报表预览信息。按F12 ,弹出开发者工具界面,查看里面的错误信息,如果看到报 "Uncaught ReferenceError: bobj...

    VS2010安装 Crystal Reports (水晶报表)完成后,在页面中添加CrystalReportViewer后,页面中不显示报表预览信息。按F12 ,弹出开发者工具界面,查看里面的错误信息,如果看到报 "Uncaught ReferenceError: bobj is not defined"这个错误。此错误普遍是水晶报表资源文件在项目中找不到路径所造成。以下为解决方法:

    1、打开路径:C:\inetpub\wwwroot,将此文件夹中的aspnet_client文件夹,复制到你项目中的相应目录下。

    2、打开项目中的 web.config 文件,将以下语句添加到此文件的<configSections/>节点后:

    <businessObjects>
        <crystalReports>
          <rptBuildProvider>
            <add embedRptInResource="true"/>
          </rptBuildProvider>
          <crystalReportViewer>
            <!-- 确定水晶报表资源文件的路径 -->
            <add key="ResourceUri" value="../aspnet_client\system_web\4_0_30319\crystalreportviewers13"/>
          </crystalReportViewer>
        </crystalReports>
      </businessObjects>

    3、重新加载项目或按F5刷新页面再试。

    展开全文
  • dev express报表同一内容打印预览显示多页,比如要打印条码,设计时一个条码,打印时可以将这个条码打印在多页上(多份)
  • pb 报表打印预览

    2014-12-03 11:52:43
    非常经典的 pb 报表打印预览,功能强大,很实用。
  • 摘要:VB源码,报表打印,打印预览 VB客户报表打印预览程序,可显示打印客户报表以及总价报表,程序功能不复杂。
  • 建立自己的报表预览程序作者:张洪举 Microsoft Visual FoxPro MVP (http://www.vfptop.com)日期:2005年10月应用于:Microsoft Visual FoxPro 9.0目录概述Visual FoxPro 9.0 的报表预览应用程序接口建立自己的...

     

     

    建立自己的报表预览程序
    作者:张洪举 Microsoft Visual FoxPro MVP (http://www.vfptop.com

    日期:2005年10月

    应用于:Microsoft Visual FoxPro 9.0

    目录
    概述

    Visual FoxPro 9.0 的报表预览应用程序接口

    建立自己的报表预览程序

    使用建立的报表预览程序预览报表

     
    概述
    可以通过 ReportListener 的 PreviewContainer 属性指定一个自定义报表预览程序,来代替 Visual FoxPro 默认的 ReportPreview.app 程序。

    在 Visual FoxPro 的辅助对象模式下预览一个报表或标签时,ReportListener 需要一个附加的组件来提供预览界面,这个组件被称为预览容器。预览容器是用 Visual FoxPro 代码编写的,因此用户可以自己建立预览容器。

    ReportListener 可以通过 ReportListener 的 PreviewContainer 属性指定一个预览容器对象,也可以通过 _REPORTPREVIEW 系统变量指向一个预览容器对象。_REPORTPREVIEW 的默认值为 ReportPreview.App,ReportPreview.App 是 Visual FoxPro 的默认报表预览程序。

    Visual FoxPro 9.0 的报表预览应用程序接口
    建立自定义报表预览程序一个很重要的问题,是如何获得对 ReportListener 对象的引用,从而控制 ReportListener 的行为。为了实现这个目的,在你建立的报表预览程序中必须包含一个名为 SetReport 的方法,ReportListener将通过该方法将自身引用传递给你的预览程序。该方法的语法格式如下:

    PROCEDURE SetReport

    LPARAMETER oListenerRef

    oListenerRef 参数便是对 ReportListener 对象的引用,你可以通过该参数,将对 ReportListener 对象的引用保存到一个属性或变量中。

    同时,在你建立的报表预览程序中还必须包含一个名为 Show 的方法,ReportListener 在报表绘制完毕后将调用该方法进行报表显示。假设已经建立了一个 ControlPreview 类作为我们的预览容器,下面是调用该类时的代码。

    lcReport=HOME(2)+"Solution/Europa/EmployeesMD.frx"oListener = CREATEOBJECT('ReportListener')  &&建立ReportListener对象,并保存到oListener变量中olistener.ListenerType = 1  &&设置输出模式oListener.OutputType = 1 *!* 下面的代码用于指定预览容器 olistener.PreviewContainer=NEWOBJECT("ControlPreview","AdditionSamples.vcx")   *!* 下面的 REPORT FORM 命令将开始执行报表,同时将执行 ControlPreview 的 SetReport 方法,*!* 传递 ReportListener 对象引用给 ControlPreview,但是由于此时报表还未绘制完毕,所以并不*!* 能获得报表的总页数、页面高度等信息。在绘制完毕后,ReportListener 将调用 ControlPreview*!* 的 Show 方法,进行预览输出,由于此时报表已经准备完毕,所以你可以在 Show 方法中获得*!* 报表的页面高度等信息REPORT FORM (lcreport) OBJECT oListener NOWAIT建立自己的报表预览程序
    我们将通过下面的示例来说明建立自己报表预览程序的方法,任何报表都可以使用该程序进行预览输出。为了更好地说明这个预览程序的功能,首先来看一下设计完成后的执行效果,如图1 所示。通过这个预览程序,可以设置报表的显示百分比、通过导航或直接定位要预览的页,以及指定报表的打印范围。

     

    图1 报表预览程序界面

    1)建立基于 Form 的类
    在 Visual FoxPro 的 Command 窗口中执行 CREATE CLASS 命令,打开如图2 所示的 New Class(新建类)对话框。设置新建类的名称为 ControlPreview,基于 Form 类,存储在 AdditionSamples.vcx 类库中。

    设置完成后单击 OK 按钮,将打开 Class Designer (类设计器)对话框,最终设计结果如图3 所示。

      

    图2 New Class 对话框

     

    图3 ControlPreview 类最终设计结果

    2)表单的关键属性设置
    表单的关键属性设置如表1所示。

    表1
     

      
     

    用于显示报表的形状对象
     

    3)预览程序的初始化设置
    在预览程序的初始化部分,需要获得对 ReportListener 对象的引用,然后通过这个引用,获得报表的页面尺寸,进而设置表单中 shpPreview 对象的大小。

    预览程序的初始化设置不能在表单的 Init 事件进行,因为在该类实例化的时候,有可能 ReportListener 对象还未建立,或者 ReportListener 还未进行报表处理,所以此时你无法获得报表的任何信息。根据前面的介绍,ReportListener 是通过预览程序的 SetReport 方法将 ReportListener 传递给预览程序的。因此,在表单中需要新建一个 SetReport 方法,代码如下:

    LPARAMETERS oListenerRef

    This.oListener = oListenerRef   &&将对ReportListener对象的引用保存到表单的oListener属性中

    ReportListener 在报表绘制完成后,将调用预览程序的 Show 方法显示表单。由于此时报表已经绘制完成,所以可以在此方法中获得报表页面的高度、宽度值,进而设置 shpPreview 对象的大小。由于表单对象默认地具有 Show 方法,因此,只需要在该方法中填入下列代码即可。

    LPARAMETERS nStyle

    WITH This

        IF VARTYPE(.oListener) = "O"

            .nPageHeight = .oListener.GetPageHeight() / 10   &&获得页面的像素高度(每英寸96DPI)

            .nPageWidth = .oListener.GetPageWidth() / 10    &&获得页面的像素宽度

            .shpPreview.Height = INT(.nPageHeight)        &&设置形状的高度

            .shpPreview.Width = INT(.nPageWidth)         &&设置形状的宽度

            .Caption = "报表预览程序-" + .oListener.CommandClauses.File  &&标题中包含有报表的文件名称,见图13-68

            .Refresh

        ENDIF

    ENDWITH

     

    DODEFAULT(nStyle)  &&执行默认的Show方法行为

    4)报表显示比例设置
    在表单的 cboPer 组合框的 InteractiveChange 事件中包含有下列代码,用于根据选择的显示比例设置 shpPreview 形状的大小,然后重新输出报表。

    WITH Thisform

        IF VARTYPE(.oListener) = "O"

            .shpPreview.Height = INT(.nPageHeight * VAL(.cboPer.Value) /100)

            .shpPreview.Width = INT(.nPageWidth * VAL(.cboPer.Value) /100)

            .oListener.OutputPage(.nCurrentPage, .shpPreview, 2) 

        ENDIF

    ENDWITH

    5)报表导航设置
    “|<”按钮用于导航到报表的第一页,其 Click 事件代码如下:

    WITH Thisform

        .nCurrentPage = 1

        .oListener.OutputPage(1, .shpPreview, 2)  &&显示第一页

        .CmdRefresh()                &&设置按钮的可用状态

        .txtPage.Value = 1

    ENDWITH

    “<” 按钮用于导航到当前报表的上一页,其 Click 事件代码如下:

    WITH Thisform

        .nCurrentPage = .nCurrentPage - 1  &&当前报表页号减1

        .oListener.OutputPage(.nCurrentPage, .shpPreview, 2)  &&显示指定页

        .CmdRefresh()      &&设置按钮的可用状态

        .txtPage.Value = .nCurrentPage

    ENDWITH

    “>”按钮用于导航到当前报表的下一页,其 Click 事件代码如下:

    WITH Thisform

        .nCurrentPage = .nCurrentPage + 1  &&当前报表页号减1

        .oListener.OutputPage(.nCurrentPage, .shpPreview, 2)  &&显示指定页

        .CmdRefresh()      &&设置按钮的可用状态

        .txtPage.Value = .nCurrentPage

    ENDWITH

    “>|”按钮用于导航到报表的最后一页,其 Click 事件代码如下:

    WITH Thisform

        .nCurrentPage = .oListener.OutputPageCount

        .oListener.OutputPage(.nCurrentPage, .shpPreview, 2)  &&显示最后一页

        .CmdRefresh()                &&设置按钮的可用状态

        .txtPage.Value = .nCurrentPage

    ENDWITH

    “指定页”按钮用于导航到在txtPage文本框中指定的页号,其 Click 事件代码如下:

    WITH Thisform

        IF .txtPage.Value >= 1 AND .txtPage.Value <= .oListener.OutputPageCount

            .nCurrentPage = .txtPage.Value

            .oListener.OutputPage(.nCurrentPage, .shpPreview, 2)

            Thisform.CMDRefresh

        ELSE

            =MESSAGEBOX("页号无效或已经超出了总页数",0+48,"提示")

        ENDIF

    ENDWITH

    在上面5个按钮的Click事件中都使用了表单的自定义方法 CMDRefresh 来控制“|<”、“<”、“>”和“>|”按钮的可用性,该方法的代码如下:

    WITH This

        .cmdPrev.Enabled = VARTYPE(.oListener) = 'O' and .nCurrentPage > 1

        .cmdNext.Enabled = VARTYPE(.oListener) = 'O' and ;

            .nCurrentPage < .oListener.OutputPageCount

        .cmdTop.Enabled = VARTYPE(.oListener) = 'O' and .nCurrentPage > 1

        .cmdBott.Enabled = VARTYPE(.oListener) = 'O' and ;

            .nCurrentPage < .oListener.OutputPageCount

    ENDWITH

    6)打印设置
    在选项按钮组 optPrint 的 InteractiveChange 事件中包含有下列代码,用于控制 txtFrom 和 txtTo 文本框的可用性。

    IF This.Value = 1

        Thisform.txtFrom.Enabled = .F.

        Thisform.txtTo.Enabled = .F.

    ELSE

        Thisform.txtFrom.Enabled = .T.

        Thisform.txtTo.Enabled = .T.

    ENDIF

    “打印”按钮的 Click 事件代码如下所示。在执行打印后,将关闭表单。请注意其中的 .oListener.PreviewContainer = .NULL. 代码,在执行 RELEASE Thisform 命令前,必须首先使用该代码释放对预览程序对象的引用,否则是无法关闭表单的。对于打印页范围的选择,是通过 CommandClauses 属性的 PrintRangeFrom 和 PrintRangeTo 成员来实现的,有关这方面的信息请参考 Visual FoxPro 帮助。

    WITH Thisform

        DO CASE

            CASE .optPrint.Value = 1  &&打印所有页

                 .oListener.CommandClauses.PrintRangeFrom = 1

                 .oListener.CommandClauses.PrintRangeTo = .oListener.OutputPageCount

                 .oListener.PreviewContainer = .NULL.   &&取消对预览程序对象的引用

                 .oListener.OnPreviewClose(.T.)    &&输出到打印机

                 .oListener = .NULL.

             

            CASE .optPrint.Value = 2

                 IF .txtFrom.Value < 1 OR ;

                     .txtFrom.Value > .oListener.OutputPageCount

                     =MESSAGEBOX("开始页号设置无效!", 48, "提示")

                     RETURN

                 ENDIF

                 IF .txtTo.Value < 1 OR ;

                     .txtTo.Value > .oListener.OutputPageCount

                     =MESSAGEBOX("终止页号设置无效!", 48, "提示")

                     RETURN

                 ENDIF

                 IF .txtFrom.Value <= .txtTo.Value

                     .oListener.CommandClauses.PrintRangeFrom = .txtFrom.Value

                     .oListener.CommandClauses.PrintRangeTo = .txtTo.Value

                     .oListener.PreviewContainer = .NULL.   &&取消对预览程序对象的引用

                     .oListener.OnPreviewClose(.T.)  &&输出到打印机

                     .oListener = .NULL.

                 ELSE

                     =MESSAGEBOX("开始页号必须小于或等于终止页号!", 48, "提示")

                 ENDIF

           

        ENDCASE

     

        RELEASE Thisform    &&关闭表单

    ENDWITH

    7)报表的重绘设置
    在调整表单大小时,表单中的对象会被重新绘制,这时候需要重新输出报表到表单的形状对象 shpPreview 中,否则,重绘后的形状对象中将不再有报表显示。

    在表单的Paint事件中加入下列代码,用于重绘时的报表输出。

    WITH This

        IF VARTYPE(.oListener)="O"

            .oListener.OutputPage(.nCurrentPage,.shpPreview,2)

        ENDIF

    ENDWITH

    8)表单关闭设置
    在表单关闭前,首先要释放 ReportListener 的 PreviewContainer 属性对报表预览程序对象的引用,否则,该表单无法关闭。在表单的 QueryUnload 事件中包含有下列代码,当单击表单标题栏的关闭框时,将执行该事件中的代码。

    WITH This

        IF VARTYPE(This.oListener) = 'O'

            .oListener.PreviewContainer = .NULL.   &&释放对报表预览程序对象的引用

            .oListener.OnPreviewClose(.F.)  &&关闭预览

        ENDIF

        .oListener = .NULL.

    ENDWITH

    表单中“关闭”按钮的 Click 事件与表单的 QueryUnload 事件代码基本相同,如下所示。

    IF VARTYPE(Thisform.oListener) = 'O'

        Thisform.oListener.PreviewContainer = .NULL.

        Thisform.oListener.OnPreviewClose(.F.) 

    ENDIF

    Thisform.oListener = .NULL.

     

    RELEASE Thisform

    使用建立的报表预览程序预览报表
    至此,这个报表预览程序就设计完毕了,使用这个报表预览程序进行输出的代码如下:

    lcReport=HOME(2)+"Solution/Europa/EmployeesMD.frx"

    oListener = CREATEOBJECT('ReportListener')  &&建立ReportListener对象,并保存到oListener变量中

    olistener.ListenerType = 1  &&设置输出模式

    oListener.OutputType = 1

    olistener.PreviewContainer=NEWOBJECT("ControlPreview","AdditionSamples.vcx")  &&指定预览程序

    REPORT FORM (lcreport) OBJECT oListener NOWAIT


    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhanghongju/archive/2006/05/29/762031.aspx

    展开全文
  • 大多数报表生成器都有一个带有工具栏的报表查看模式,您可以从中对报表进行各种操作。例如,翻页、打印、导出等。但是,有时没有足够的按钮具有您想要的功能。这可以是快速导出为某种格式,也可以是将报表发送给审阅...
  • 数据集预览正常,将字段拖拽到单元格之后,单元格内容显示不正常。如下图: 报表设计如下: 导致错误的原因:  数据集的字段使用了敏感的名称,例如:D9。 报表可能会当成单元格名称,而非字段...
  • [size=18px]最近有个东东要搞web的水晶报表,但是怎么弄都显示不出,不知道为什么?请各位帮帮忙。 vs2012 + 自带水晶报表+ mssql[/size] protected void Button2_Click(object sender, EventArgs e) { ...
  • 自定义窗口预览报表

    2014-04-03 15:34:35
    自定义窗口预览报表,工具按钮,再也不用VFP自带的预览程序了。系统开发必不可少的功能模块!值!
  • 自定义报表预览控制工具条

    千次阅读 2004-08-27 15:35:00
    自定义报表预览控制工具条 说明:原有的VFP的打印预览用多了感觉真的不是很方便,在某些特定的要求下,她就显得很笨拙,尤其那个打印工具条上的打印机按纽,一点就打印了,有时候我们需要在那个时候进行有选择性的...
  • finreport导出报表无法显示图片, 图片是图片路径设置html显示预览可以正常看到,导出EXCEL和pdf都无法显示图片, 导出word有图片但格式有问题
  • 发布报表文件、启动内置Tomcat服务器后,进行”IE中预览报表“操作,浏览器显示信息”此网站无法打开“,没有显示相应的报表内容。此时,查看润乾报表设计器中的控制台信息(”配置“菜单中的”控制
  • 葡萄城报表控件ActiveReports V14.0全面支持 .NET Core平台,在此版本中ActiveReports的桌面报表设计器UI得以全面增强,报表预览方式得以全面优化,报表设计能力得以大幅提升。 ActiveReports加入了全新的 Web...
  • Angular 直接打印预览 在项目 index.html 的头部引入 FineReport 相关的 js 文件 <script type="text/javascript" src="/femisnsb/ReportServer?op=emb&resource=finereport.js"></script> 注意...
  • 汉化 Delphi6.0 的报表预览

    千次阅读 2003-10-21 00:07:00
    但是,直到最近推出的6.0版,由于它们都是英文版,所以用 Delphi开发数据库应用程序时,其报表预览控件在界面上显示的提示信息全都是英文字符,这对于开发中文界面的程序,显得很不协调。 笔者经过分析发现,Delphi...
  • 下面是maven的jar配置 ...1.打印pdf中文不显示  设置:中文文本字段和中文查询字段参数 最后来一张效果图 如有问题可加 QQ:646500947 ,欢迎拍砖!!!
  • 报表无法显示问题

    2019-10-03 20:41:42
    今天将程序发布到服务器上之后,打开有用到报表的页面时,无法显示,报错如上图所示,那么是什么造成的呢? 原来通过IE不能访问到.grf报表文件,这是因为IIS6对访问的扩展名做了限制,所以除了已经定义的扩展名之外...
  • 预览看下效果,结果预览页面就只显示一条数据:   很不解,sql语句却可以查询出多条数据信息: 于是在RDP技术群里问了下,原来报表头和报表尾 对数据处理只有一条数据 数据区是取多条的,只需要在行...
  • 明明选了多个记录,预览时,只显示最后一个。 原因: 主项数据的数据集选了报表自带的虚拟数据集了。 转载于:https://www.cnblogs.com/CodeGear/p/4935545.html...
  • DevExpress.XtraReports:Silverlight中报表预览工具栏 //取消鼠标右键菜单提示,此菜单功能控制是否显示工具栏。documentPreview1.BarManager.Bars[0].AllowHide=DevExpress.Utils.DefaultBoolean....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,948
精华内容 5,579
关键字:

报表预览无法显示