永洪社区

标题: 自由表如何过滤上月和去年同期 [打印本页]

作者: 多读书    时间: 2022-12-22 08:23
标题: 自由表如何过滤上月和去年同期
本帖最后由 yhdata_qwe 于 2022-12-22 10:03 编辑

1、创建参数:上月、去年同期(文本格式)
2、脚本:
var 上月 = new Date("下拉列表参数1");
dateAdd(date, "month", -1);




var 去年同期 = new Date("下拉列表参数1");
dateAdd(date, "year", -1);


3、自由表单元格过滤:上月设置等于?{上月}、去年同期设置等于?{去年同期}


哪里有问题?




作者: yhdata_yzm    时间: 2022-12-22 08:23
yhdata_qwe 发表于 2022-12-22 09:31
设置了脚本和单元格过滤,为什么不起作用,改变下拉列表参数月份,上月的数据没有变化。。。
麻烦您给看 ...

脚本写在变化时运行
var date =下拉列表参数1.getSelectedObjects()[0]//获取下拉参数勾选值
debug(date)
param["上月"]=formatDate(dateAdd(parseDate(date,'yyyy-MM'), "month", -1),'yyyy-MM');
debug(param['上月'])
这么写,dateadd首先你要把你的字符串转换成日期才能用,你的日期列是文本格式所以还要用formatdate把日期转换成字符串
作者: DX188    时间: 2022-12-22 09:02
你的dateAdd(date, "month", -1);里date是什么
作者: 多读书    时间: 2022-12-22 09:05
DX188 发表于 2022-12-22 09:02
你的dateAdd(date, "month", -1);里date是什么

我是想赋值给新参数  上月
作者: 多读书    时间: 2022-12-22 09:07
DX188 发表于 2022-12-22 09:02
你的dateAdd(date, "month", -1);里date是什么

我这个下拉列表参数是年月格式,是不是不行?
作者: DX188    时间: 2022-12-22 09:12
var date =下拉列表参数1.getSelectedObjects()[0]//获取下拉参数勾选值
dateAdd(date, "month", -1);
作者: 多读书    时间: 2022-12-22 09:16
DX188 发表于 2022-12-22 09:12
var date =下拉列表参数1.getSelectedObjects()[0]//获取下拉参数勾选值
dateAdd(date, "month", -1); ...

谢谢,我怎么把dateAdd(date, "month", -1)赋值给?{上月}这个参数呢?
作者: DX188    时间: 2022-12-22 09:27
yhdata_qwe 发表于 2022-12-22 09:16
谢谢,我怎么把dateAdd(date, "month", -1)赋值给?{上月}这个参数呢?

param["上月"]=dateAdd(date, "month", -1)
作者: 多读书    时间: 2022-12-22 09:31
DX188 发表于 2022-12-22 09:27
param["上月"]=dateAdd(date, "month", -1)

设置了脚本和单元格过滤,为什么不起作用,改变下拉列表参数月份,上月的数据没有变化。。。
麻烦您给看看哪里还有问题

作者: DX188    时间: 2022-12-22 09:58
yhdata_qwe 发表于 2022-12-22 09:31
设置了脚本和单元格过滤,为什么不起作用,改变下拉列表参数月份,上月的数据没有变化。。。
麻烦您给看 ...

你数据表里的年月我看了下并不是日期格式,首先取值后转换成日期格式再计算上月,然后再计算完后转换成文本格式
var date =parseDate(下拉列表参数1.getSelectedObjects()[0],"yyyy-MM")//获取下拉参数勾选值
param["上月"]=formatDate(dateAdd(date, "month", -1),"yyyy-MM")




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