基于Birt4.6实现报表表格数据的可编辑

奇葩需求:客户要求某业务系统中生成的报表数据可以编辑。为响应客户的需求,本文基于Birt 4.6实现报表数据的可编辑(伪修改)。

BIRT 是以 Java 和 JavaEE 为基础为 Web 应用程序开发的基于 Eclipse 的开源报表系统,其本身并不支持报表数据的修改。因此想要实现报表数据的可编辑,需要修改生成报表的渲染页面。本文的方案是在报表生成页面引入Jquery实现报表表格数据的可编辑,这是一种简单的快速实现方式,具体实现方案如下:

1)找到Birt渲染页面

Birt的渲染页面路径../birt/webcontent/birt/pages/layout,不熟悉的朋友详见Github请添加链接描述

3) 2) 引入Jquery并避免冲突

<script type="text/javascript" src="<c:url value=‘/statics/js/jquery-3.2.1.min.js‘/>"></script>

去掉Jquery中的$混淆符号
<script>
$.noConflict();
</script>

3)实现表格的可编辑

jQuery("table td").dblclick(function(el) {
    var editTxt = el.target.innerText;
    if(editTxt!=""){
        var editCell = jQuery(el.target);
        var input = jQuery("<input type=‘text‘ value=‘" + editTxt +   "‘/>");
        editCell.html(input);
        input.trigger("focus"); 

        //失去焦点时
        input.blur(function() {
            var newTxt = jQuery(this).val();
            editCell.html(newTxt);
        });

    }
});

最后求大家点个关注再走

原文地址:http://blog.51cto.com/favccxx/2084594

时间: 2024-08-26 03:52:31

基于Birt4.6实现报表表格数据的可编辑的相关文章

小结--通过水晶报表打印表格数据步骤

最近项目用到水晶报表来打印表格数据,现在温故一下: 1.安装CRforVS_13_0水晶报表. 2.在vs2010中创建.xsd 文件,往里面创建一个DataTable,并设置每个字段的数据类型. 3.创建.rpt(报表文件),在里面画要显示的表格,然后绑定数据库字段(右击数据库字段-数据库专家-我的连接-展开树节点找到新建的DataTable)将DataTable中字段拖入表格相应位置. 4.在上层页面的打印事件中New出新建的DataTable,接着将要打印的表格数据(例如:DataGrid

Easy-ui Datagrid表格数据的编辑与提交

前言 jQuery EasyUI是一组基于jQuery的UI 插件集合体,而jQuery EasyUI可以打造出功能更加丰富且美观的UI界面.开发者不需要了解复杂的javascript和css样式,只需要了解html标签. 一.    easy-ui基本知识 1.            easy-ui引用js顺序详解 引用Jquery的js文件: <script src="jquery-easyui-1.3.4/jquery-1.8.0.min.js" type="te

《奥威Power-BI基于MySQL数据源制作报表》腾讯课程开课啦

前阵子奥威公开课讲过基于oracle数据源制作报表,有些宝宝就有小情绪了:简直就是不把我MySQL放在眼里嘛!oracle和MySQL一直以来被大家对比了很多次,同属于 Oracle 旗下产品,本是同根生,相煎何太急?这oracle和MySQL各有千秋,有着不同的侧重点和各自的小成就.为了我们的MySQL铁粉们,奥威软件决定这次就来讲一讲MySQL咯! 讲师介绍:李显斯 多年的甲方.乙方工作经验,熟悉企业的业务流程,主要从事数据库.BI开发,对ETL.数据仓库技术有着丰富的经验. 直播时间:20

ActiveReports 报表应用教程 (7)---交叉报表及数据透视图实现方案

原文:ActiveReports 报表应用教程 (7)---交叉报表及数据透视图实现方案 在 ActiveReports 中可以通过矩阵控件非常方便的实现交叉报表,同时还可以设置数据的分组.排序.过滤.小计.合计等操作,可以满足您报表的智能数据分析等需求.在矩阵控件中组的行数和列数由每个行分组和列分组中的唯一值的个数确定.同时,您可以按行组和列组中的多个字段或表达式对数据进行分组.在运行时,当组合报表数据和数据区域时,随着为列组添加列和为行组添加行,矩阵将在页面上水平和垂直增长. 在矩阵控件中,

Stimulsoft Reports.Silverlight是一款强大的基于Silverlight平台的报表创建工具控件

Stimulsoft Reports.Silverlight是一款强大的基于Silverlight平台的报表创建工具控件.该产品有三个部分组成.第一部分是用于在Web浏览器中浏览和编辑的ASP.NET组件集.报表在服务器端渲染,在客户端进行显示和编辑报表.第二部分是基于Silverlight的功能齐全的报表工具,它只通过Silverlight来渲染,编辑,打印和导出报表.第三部分是一个用于WinForms平台的独立(独立的)的报表设计器.该部分是用于创建报表以及为能够进一步与其他组件一起使用 具

【SSRS】入门篇(四) -- 向报表添加数据

原文:[SSRS]入门篇(四) -- 向报表添加数据 定义好数据集后 [SSRS]入门篇(三) -- 为报表定义数据集 ,就可以开始设计报表了,将要显示在报表的字段.文本框.图像和其他项从工具箱拖放到报表设计图画上,如下图: 1.打开在[SSRS]入门篇(一) -- 创建SSRS项目 建立的报表Sales Orders.rdl: 2.从工具箱把"表"拖放到"设计图画": 注:如果左边没有显示工具箱的话,可以通过"菜单 -> 视图 -> 工具箱&

基于 移动最小二乘法(MLS) 的三维数据拟合

项目介绍: 1. 需要预测的数据: 2. 采用的权函数以及形函数: 3. 求解的形函数曲线结果: 4. 算法流程图: 5. 预测结果: x=[234 255 255 76 12];y=[162 242 176 54 55];z=[199 200 57 50 73]; 对应的预测结果为: >> MLS_Output Esti_ux = 53.3651 73.8599 54.2216 5.9668 9.0063 Esti_uy = 43.9818 77.5332 48.3499 5.2517 11

erlang shell表格数据对齐

最近在erlang shell做一些测试,为了让测试结果数据显得更直观,想对齐需要打印的数据,做成像表格一样的效果. 开始的想法是在数据中插入tab.当然,erlang也有对tab的支持,但实际效果不理想. 对tab的支持如下: 1> io:format("No1~sNo2~n1~s2~n", ["\t", "\t"]). No1        No2 1             2 ok 但数据的长度超过8个字符就有问题,那有没有一种可以

freemarker导出word——让表格数据行数 列数自动变化

行数.列数变化只需定义一个List<List<T>> freemarker遍历的话,只需要使用freemarker的标记性语言<#list report.qc_third_agentTable as  table2_tr>遍历即可,如图 实现的效果 freemarker导出word--让表格数据行数 列数自动变化,布布扣,bubuko.com