永洪社区

标题: 下拉参数如何判断是否发生改变 [打印本页]

作者: yh_xishan    时间: 2021-10-28 11:19
标题: 下拉参数如何判断是否发生改变
如题:两个下拉参数,下拉参数1,下拉参数2.均绑定同一日期数据集
要求下拉参数2发生变化时下拉参数1为下拉参数2所选数据-1天。但是下拉参数1可以手动选择其他日期且不对下拉参数2产生影响。

作者: 美滋滋    时间: 2021-10-28 11:19
我给你一个脚本吧。这个脚本可以做到的是,当你变化第二个下拉选择时,第一个下拉选择会变成第二个下拉选择项目前一个项目,如果你的日期字段是连续的日期,则就是你需求的-1天。当你第二个选择是最小日期时,第一个选择也选择最小日期。具体脚本如下:
报表脚本装载时运行中录入如下脚本:
var idxlist2 = 0
下拉参数1.setSelectedIndex(0)
下拉参数2.setSelectedIndex(0)
报表脚本变化时运行中录入如下脚本:
if (idxlist2 != 下拉参数2.getSelectedIndex()) {
    if (下拉参数2.getSelectedIndex() != 0) {
        下拉参数1.setSelectedIndex(下拉参数2.getSelectedIndex()-1)
    }else{
        下拉参数1.setSelectedIndex(0)
    }
    idxlist2 = 下拉参数2.getSelectedIndex()
}


作者: _贝贝    时间: 2021-10-28 11:39
下拉参数2发生变化时下拉参数1为下拉参数2所选数据-1天  但是下拉参数1可以手动选择其他日期且不对下拉参数2产生影响  
这个是无法做到  
可以实现下拉参数1为下拉参数2所选数据-1天  但是选项是固定的 就不能选其他值 要么就是默认值 默认差一天 但是这个只会生效一次  在打开报告时生效  后续变化时不生效
作者: 美滋滋    时间: 2021-10-28 11:55
因为两个下拉选择绑定的是同一个日期字段,所以有以下两个问题需要确认
1.该字段是否为连续的日期,中间是否会有断开的日期?
2.第二个下拉选择如果选择最小的日期时,第一个下拉选择如何选?
作者: yh_xishan    时间: 2021-10-28 13:10
确实完美解决,非常感谢
作者: 美滋滋    时间: 2021-10-28 13:13
yh_xishan 发表于 2021-10-28 13:10
确实完美解决,非常感谢

补充一下,我给你的那个脚本只能支持这两个下拉选择是按照日期升序排序,如果需求倒叙排序的话,脚本要稍微修改一下。我觉得你要是看懂了我的脚本,应该可以自己修改了。
作者: yh_xishan    时间: 2021-10-28 13:17
嗯嗯,再次感谢,有思路就好




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4