Successfully!

Error!

You are viewing 10.0 help doc. More details are displayed in the latest help doc

Dashboard button queries the data of the latest date

1. 概述

1.1 问题描述

决策报表查询指定区间日期数据时,希望可以通过点击按钮( 不在参数面板 )查询到最近的数据,例如:近7天、近14天等等。

1.2 解决思路

直接将开始和结束的两个日期控件拖入到 body 中,并添加一个按钮控件。

给按钮控件设置 JS 点击事件,点击按钮后,对开始日期控件赋值,将日期传递到数据集的 SQL 语句中,查询对应的数据。

2. 示例

2.1 报表设计

1)新建决策报表,新建数据集 ds1,SQL查询语句如下:

SELECT * FROM 订单 where 1=1 

 ${if(len(starttime)=0,""," and 订购日期>='"+starttime+"'")}

 ${if(len(endtime)=0,""," and 订购日期<='"+endtime+"'")}

Snag_fd08582.png

2)如下图设计报表样式:

1584000212488708.png

3)如下图绑定折线图数据:

Snag_fd7d2f4.png

4)选中开始时间日期控件,控件名称重命名为starttime,设置一个默认的日期控件值,如下图所示:

Snag_fd94f24.png

5)选中结束时间日期控件,控件名称重命名为endtime,设置一个默认的日期控件值,如下图所示:

Snag_fdd3c45.png

6)以近七天按钮为例,添加 JS 点击事件,近14天按钮同理设置,只需要改下定义开始时间的公式即可。

Snag_fddba1f.png

JS 代码如下:


var K1='${=date(2011,6,22)-7}';//定义开始时间
//alert(K1);
_g().getWidgetByName("starttime").setValue(K1);//把K1值赋给开始时间控件
_g().getWidgetByName("starttime").fireEvent("afteredit");//触发开始控件的编辑后事件

2.2 效果预览

1)PC 端

保存报表,点击表单预览,效果如下图所示:

C994E1CB-B303-48C0-91AE-6EF6D6D87116.GIF

2)移动端

1584001760758706.gif

3. 模板下载

已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\frm\决策报表按钮查询最近日期的数据.frm

点击下载模板:决策报表按钮查询最近日期的数据.frm

Attachment List


Theme: Dashboard
Already the First
Already the Last
  • Helpful
  • Not helpful
  • Only read

Doc Feedback