mu婉清青铜二
2020-7-13 20:50:33 发布在问答
[日期过滤]实现日期过滤组件默认显示数据集中的最大日期
本帖最后由 永洪tech-Emily 于 2020-7-14 12:43 编辑

给日期过滤组件设置默认选中最大的日期,这个没有直接设置可以实现,,咱们可以间接来。

步骤一:拖入一个下拉参数组件,和一个日期过滤组件,都绑定日期字段
步骤二:使用一个下拉参数组件(给下拉参数绑定日期字段,并降序排序,在脚本中设置下拉参数默认选择第一个,实现下拉参数默认选中最大日期)
步骤三:将下拉参数选中的值赋值给日期过滤组件
步骤四:隐藏下拉参数组件

在装载时运行写脚本:
//给下拉参数设置选择最大日期
var a=下拉参数1.getObjects()
//debug(a)
下拉参数1.setSelectedObjects([a[1,STRING);
//将该最大日期赋值给日期过滤组件
var b=下拉参数1.getSelectedObjects()[0];
//debug(b)
var y=substring(b,0,4)
var m=parseInt(substring(b, 5,7))-1
var d=parseInt(substring(b, 8,10))
日期过滤1.firstDates=["t"+y+"-"+m+"-"+d;
//隐藏下拉参数组件
下拉参数1.visible=false

代码一定要看下方截图!!!!直接复制注意中括号
脚本.png




1.png


6234
7
1
精彩评论7
mu婉清青铜二
发表于 2020-7-13 20:57:23 显示全部楼层
本帖最后由 永洪tech-Emily 于 2020-7-14 12:44 编辑




回复

使用道具 2#

misszheng青铜四
发表于 2021-8-6 17:48:26 显示全部楼层
那设置近7天的日期参数怎么写呢?
回复

使用道具 3#

_贝贝白银一
发表于 2021-8-6 18:05:22 显示全部楼层
效果如图
7天.png
回复

使用道具 4#

_贝贝白银一
发表于 2021-8-6 18:06:31 显示全部楼层
设置默认值:日期过滤组件范围模式左侧日期默认显示当前时间倒退7天,右侧默认显示今天

解决方法:

报告页面脚本-装载时运行:

var e_date = new Date();

var s_date = dateAdd(e_date,"day",-7);//日期减去七天

var s_year = year(s_date); //获取日期中的年份

var s_month = month(s_date)-1;//获取日期中月份

var s_day = day(s_date);//获取日期中天

var e_year = year(e_date);

var e_month = month(e_date)-1;//月份减1

var e_day = day(e_date);

日期过滤1.firstDates = ["t" + s_year + "-" + s_month + "-" + s_day];

日期过滤1.secondDates = ["t" + e_year + "-" + e_month + "-" + e_day];
回复

使用道具 5#

misszheng青铜四
发表于 2021-8-7 10:04:25 显示全部楼层
永洪tech-zxx 发表于 2021-8-6 18:06
设置默认值:日期过滤组件范围模式左侧日期默认显示当前时间倒退7天,右侧默认显示今天

解决方法:

月份为什么要减一啊。
回复

使用道具 6#

环环白银三
发表于 2021-8-9 09:27:01 显示全部楼层
日期过滤组件比较特殊,月份是从0开始的,0才表示1月
回复

使用道具 7#

202111111111白银三
发表于 2021-8-19 10:45:49 显示全部楼层
parseInt是什么作用呢??
回复

使用道具 8#

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
1500W

用户等你来哦

Copyright   ©2012-2025  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部