动态增加分组报表组内数据并刷新页面

来源:互联网 发布:安卓呼死你软件免费版 编辑:程序博客网 时间:2024/04/30 21:00


在实际的项目需求中,经常用到分组报表,并且要求能动态的增加分组后的某一条数据。

需求展示如图:

动态增加各个类别中的产品

一:实现思路

通过在报表后面添加一个增加数据的超链接,超链接中调用一个js方法,弹出一个小窗口,在新弹出的页面中实现添加产品,保存成功后返回并刷新主页面。

二:实现步骤

1:创建报表模板,设置超链接

数据源使用润乾自带的demo

数据集为:SELECT 产品.类别ID,产品.产品名称,产品.产品ID FROM 产品

A2表达式为:ds1.group(类别ID,false,类别ID!=NULL)

B2表达式为:ds1.select(产品ID)

C2表达式为:ds1.产品名称

D2的左主格设置为A2,

超链接表达式为:”javascript:openNewWindow(’showReportdky.jsp?raq=/dky/product_add.raq&类别ID=”+A2+”‘,800,600)”

此超链接的目的:弹出一个新窗口,url为:http://127.0.0.1:6001/demo/reportJsp/showReportdky.jsp?raq=/dky/product_add.raq&类别ID=1

其中类别ID为所其左主格A2的ID值。

2:定义弹出新窗口的JavaScript

打开新窗口的JavaScript为:

//打开新窗口
function openNewWindow(URL,width,Height)
{
var top,left;
left=(window.screen.width-width)/2;
top=(window.screen.height-Height)/2-40;
window.open(URL,””,”left=”+left+”,top=”+top+”,width=”+width+”,height=”+Height+”,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes, resizable=no”);
}

3:创建新增产品的填报表

数据源为demo,数据集为:SELECT 产品.产品ID,产品.产品名称 FROM 产品

增加一个类别ID的参数,并设置更新属性。

4:增加保存后返回并刷新主页面的JavaScript

增加保存后返回并刷新主页面的js,所以自定义提交保存的js。

数据源为demo,数据集为:SELECT 产品.产品ID,产品.产品名称 FROM 产品
增加一个类别ID的参数,并设置更新属性。
4:增加保存后返回并刷新主页面的JavaScript
增加保存后返回并刷新主页面的js,所以自定义提交保存的js。
<script language=”javascript”>
//report1为tag标签name值
function _submitTablejade( report1 ){
//调用润乾提交数据保存的js
_submitTable( report1 );
//以下为关闭当前窗口,刷新主窗口的js代码
window.opener.refresh();
window.focus();
window.opener=null;
window.open(””,”_self”);
window.close();
}
</script>

三:运行效果

点击增加,弹出新窗口

输入要填报的数据,点击保存按钮。

提交成功后刷新主页面。

总结:利用此思路不仅可以实现增加数据,也可以实现删除数据,更新数据等等。

0 0