`

fineReport报表工具通过iframe的post方式提交表单大数据实现打印前预览

 
阅读更多

1、该文背景:

随着预览模板的数量变多,iframe以get方式提交表单受到 “URL地址总长度的限制“ ,出现错误或漏掉数据。

 

2、功能介绍:打印前预览多条(要打印的记录)       注意:是预览

本文中的js插件用到了JQWIdgets

一、首先配置好帆软

帆软使用前说明:帆软软件本身自带一个内置的服务器.我们可以通过项目直接访问我们事先配置好的帆软服务器地址来浏览打印的报表模板!!

 

①帆软的数据库连接配置

如果项目使用的是c3p0数据库连接池,可以直接将其中的值对应的拷贝到

帆软的数据库连接配置中如下图:

 

 

 ②项目访问到的报表模板应放在帆软指定的文件夹下面,如下图!!



 在帆软软件中,如果你将“报表模板”放置在正确的文件夹下(reportlets),是如下图显示的



 

-------------------------------------------------截至到这儿,帆软需要做的准备工作完毕-----------------------------------

帆软服务器的地址:

var reportPrintUrl = "http://localhost:8075/WebReport/ReportServer?__bypagesize__=false"

项目中js文件:

} else if (btnId === 'print') { //打印
        var rowindexes = getSelectedRows('listForm');
        if (rowindexes && rowindexes.length > 0) {
            var param = "";
            $.each(rowindexes, function (i, idx) {
                var data = $('#listForm').jqxGrid('getrowdata', idx);
                var finalAudit = $('#finalAudit').val();
                if (finalAudit === 'yes') {
                    param = param + "{reportlet:'/socialSecurity/SsmMedicalFeeFinalAuditPrint.cpt', formId : "+ data.id +"},";
                } else {
                    param = param + "{reportlet:'/socialSecurity/SsmMedicalFeeAuditFormPrint.cpt', formId : "+ data.id +"},";
                }
            });
            param = param.slice(0, -1);
            param = "[" + param + "]";
            //var printUrl = reportPrintUrl + param;
            //openWindow('printWind', 'printView', '打印', printUrl);
            openPrintWind('printWind', reportPrintUrl, param);
        }

------------------>>>>openPrintWind方法调用的是以下的,是iframe以post方式提交大数据的关键步----------

function openPrintWind(winId, url,param){
    var formContent = '<form action="'+url+'" method="post" target="reportFrame" id="postData_form">'+ 
    '<input name="reportlets" type="hidden" value="'+param+'"/>'+
    '</form>';
    var content = '<iframe id="reportFrame" name="reportFrame"  src="about:blank" scrolling="no" style="width:100%;height:99%;overflow-y: hidden" frameborder="0"></iframe>';
    $('#' + winId + 'Content').html(content);
    document.getElementById('reportFrame').contentWindow.document.write(formContent);
    document.getElementById('reportFrame').contentWindow.document.getElementById('postData_form').submit();
    $('#' + winId).jqxWindow('setTitle', "打印");
    $('#' + winId).jqxWindow('open');
    $('#' + winId).jqxWindow({
        showCloseButton : true
    });
}

 

效果如下:------------------->


以下是模板预览界面


 
 

 

 

 

 

 

  • 大小: 16.6 KB
  • 大小: 212.5 KB
  • 大小: 156.9 KB
  • 大小: 12.3 KB
  • 大小: 13.3 KB
  • 大小: 16.8 KB
分享到:
评论

相关推荐

    FineReport报表工具功能清单

    1. **模板设计**:FineReport提供了丰富的图表类型和样式,用户可以通过拖拽方式轻松创建各种复杂报表模板,如交叉表、图表、仪表盘等。同时,它支持自定义样式和布局,确保报表符合企业视觉规范。 2. **数据源管理...

    FineReport报表工具的使用与集成

    FineReport报表工具是一种企业级Web报表软件工具,它完全采用Java语言编写,支持主流的B/S架构和传统的C/S架构,部署方式简单而灵活。FineReport的特点在于其易用性和高效的报表设计方案,它采用了数据双向扩展、...

    FineReport报表工具内置JS的使用

    尤其在FineReport报表工具中,JavaScript的应用使得报表的设计与功能实现更加丰富和灵活。FineReport,作为报表技术领域的领航者,提供了丰富的内置JavaScript函数,允许开发者通过简单的代码实现复杂的报表逻辑和...

    报表开发工具FineReport中如何把报表放到网页中显示

    如果报表包含敏感参数,建议使用POST方式提交请求,这样可以在一定程度上保护敏感信息。 - 可以通过JavaScript操作iFrame来实现更高级的功能,比如动态更改报表内容或者调用报表中的方法。 ##### 3.2 示例代码详解 ...

    FineReport报表工具自定义控件CSS概述

    在IT行业中,报表工具是数据分析和展示的重要组成部分,FineReport作为一款强大的报表工具,深受企业和开发者们的喜爱。本文将深入探讨FineReport中的自定义控件CSS功能,帮助用户更好地理解和利用这一特性,以实现...

    报表工具FineReport中如何把报表放到网页中显示

    如果需要调用FineReport内部的JavaScript方法(例如打印功能),可以通过`&lt;iframe&gt;`获取报表对象,然后调用相应的方法。具体的实现细节可以在FineReport的官方文档中找到。 #### 五、总结 本文详细介绍了如何将...

    finereport报表工具超链接引用JAVE SCRIPT

    标题与描述均聚焦于“finereport报表工具超链接引用JAVE SCRIPT”的主题,强调了在finereport这款报表工具中如何通过超链接调用JavaScript,以实现动态页面跳转的功能。这一知识点对于希望增强报表交互性和灵活性的...

    fineReport报表工具服务器部署安装操作手册.rar

    《FineReport报表工具服务器部署安装操作手册》是一个详细的指南,旨在帮助用户无痛完成FineReport报表工具的服务器部署与安装。FineReport是一款强大的报表设计和数据分析工具,它提供了丰富的图表类型、灵活的数据...

    FineReport报表制作流程

    FineReport是一款专业的报表工具,广泛应用于企业数据可视化和分析领域。本文将详细介绍FineReport报表的制作流程,包括数据准备、报表设计、报表预览、报表集成以及报表的使用与二次开发。 1. FineReport简介 ...

    FineReport报表工具填报专辑

    ### FineReport报表工具填报知识点详解 #### 一、FineReport报表工具概述 FineReport是一款由南京帆软软件公司开发的专业报表设计与分析工具,作为报表技术领域的领跑者,它不仅支持复杂的报表设计,还提供了丰富...

    finereport报表工具参数控件取值与置数

    标题和描述均聚焦于FineReport报表工具中参数控件的取值与置数操作,这是一种在报表设计领域中实现动态参数交互的有效手段。FineReport,作为国内领先的报表开发工具,由南京帆软软件公司研发,提供了强大的报表设计...

    Web报表工具FineReport完整教程

    FineReport 报表工具提供了易用且高效率的报表设计方案,采用主流的数据双向扩展,真正无编码形式设计报表; 拥有强大的报表展示功能, 并且提供完善的报表权限管理, 报表调度管理;具有完备的报表填报功能,支持...

    大数据可视化分析工具FineBI与FineReport的比较.pdf

    大数据可视化分析工具FineBI与FineReport是帆软软件旗下的两款数据分析工具,两者都具有强大的数据分析和报表制作能力,但它们在概念、模块、性能和应用场景等方面存在着一定的区别。 1. 概念简述 FineBI是一款...

    报表开发工具FineReport在ie8下的跨域提交

    ### 报表开发工具FineReport在IE8下的跨域提交技术解析 #### 一、问题背景及概述 在企业级应用开发中,报表系统作为重要的数据展现方式之一,经常需要与其他业务系统(如OA系统)集成。然而,在实际开发过程中,...

    FineReport完整教程_Yjy[汇编].pdf

    9. 条件分组报表:FineReport 报表工具可以实现条件分组报表功能,即将数据按照一定的条件进行筛选,并对筛选后的数据进行汇总计算,例如按照销售额大于 10000 的数据进行汇总。 10. 重叠分组报表:FineReport 报表...

Global site tag (gtag.js) - Google Analytics