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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于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);
        });

    }
});

最后求大家点个关注再走

以上是关于基于Birt4.6实现报表表格数据的可编辑的主要内容,如果未能解决你的问题,请参考以下文章

用js创建的可编辑的bootstrap表格。

C#2008报表控件导出excel格式,能实现类似excel中的合并单元格

带有核心数据的可编辑表格视图

如何在报表中实现算法的可挂接需求

BI报表工具有哪些?

如何利用报表工具FineReport实现报表列的动态展示