大数据量查询报表

  • 文档创建者:Holly
  • 编辑次数:8次
  • 最近更新:Kevin-s 于 2019-11-22
  • 1. 概述

    对于数据量较大的报表,此处提供一种文本框与复选框结合的查询方式。

    点击选择按钮,弹出窗口进行数据选择:

    image.png

    选择需要查看的数据后,点击【处理已选中记录】,然后点击查询

    image.png


    2. 示例

    2.1 示例之子模板

    2.1.1 模板样式

    新建工作簿,新建数据库查询 ds1:SELECT * FROM 客户

    模板样式如下,B1 单元格插入按钮控件,B4 单元格插入复选框控件(此处 A 列隐藏):

    222

    C4 单元格设置数据字典如下:

    222

    给第四行设置隔行换色,所以在 C4 添加条件属性如下:

    222

    设置第一行为重复冻结行:

    222


    2.1.2 控件设置

    1)按钮控件

    给B1单元格的按钮命名为【处理已选中记录】,并添加初始化后事件和点击事件(根据参数查询出不同报表):

    image.png

    window.ceshi=[];

    image.png

    window.parent.form.getWidgetByName("p1").setValue(ceshi);//给参数赋值 window.parent.FR.closeDialog();//确定获取值后,关闭取消父窗口的对话框 window.parent.FR.destroyDialog();

    2)复选框控件

    设置 B4 单元格的左父格为 C4,并给复选框控件添加状态改变事件,添加参数 a=C4:

    image.png

    var value = this.getValue();//获取当前参数的值 if (value == true) { ceshi.push(a);//将选中的参数a放入窗口 } else if (value==false){ ceshi.splice($.inArray(a,ceshi),1); }


    2.2 示例之主模板

    2.2.1 模板样式

    新建模板,新建数据库查询 ds1:SELECT * FROM S订单

                                              ds2:SELECT * FROM S客户

    点击模板>模板参数,添加模板参数p1

    222

    模板样式如下,需要注意A3单元格数据取自ds2:

    222


    2.2.2 模板数据设置

    给 A4 设置过滤条件:

    222

    将A4数据字典设置如下:

    222

    给 B4 设置过滤条件,关联 ds1 和 ds2:

    222

    将 C4 数据字典设置如下,显示值为 sql("FRDemo", "select 姓氏||名字 from s雇员 where 雇员ID=" + $$$, 1, 1),显示为表 s 雇员中的姓名:

    222

    将 G4 数据字典设置如下,显示值从表运货商中获取:

    222

    给第三行设置隔行换色,所以给 C3 单元格添加条件属性:

    222


    2.2.3 参数面板设置

    在参数面板上添加文本控件、按钮控件和查询按钮,如下:
    222

    1)文本控件

    文本控件名设为【p1】,控件值为 ANATR,ANTON:

    222

    2)按钮控件

    按钮控件名字设为【...】,添加点击事件和初始化后事件:

    image.png

    window.form = this.options.form;var $iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='no' frameborder='0'>");$iframe.attr("src", "${servletURL}?viewlet=demo%2Fparameter%2F%5B6279%5D%5B91cf%5D%5B5904%5D%5B7406%5D%5B6570%5D%5B636e%5D.cpt&op=write&__showtoolbar__=false");var o = {title : "客户信息选择",width : 800,height: 300};FR.showDialog(o.title, o.width, o.height, $iframe,o);

    image.png

    window.form = this.options.form;

    3)查询按钮

    将【点击查询前不显示报表内容】后面的勾选去除:

    222

    2.3 效果预览

    保存模板,点击分页预览,PC 端效果如下所示:

    GC.gif

    3. 模板下载

    1)主模板

    模板效果在线查看请点击:Father.cpt

    已完成的模板,主报表可参见:%FR_HOME%\webroot\WEB-INF\reportlets\demo\parameter\大数据量查询.cpt

    点击下载模板:大数据量查询.cpt

    2)子模板

    已完成的模板,子报表可参见:%FR_HOME%\webroot\WEB-INF\reportlets\demo\parameter\批量处理数据.cpt

    点击下载模板:批量处理数据.cpt


    附件列表


    主题: 报表设计
    • 有帮助
    • 没帮助
    • 只是浏览