[数据处理] 日期取月初和月末作为两个独立参数

zzy1912青铜三 显示全部楼层 发表于 2022-12-7 10:05:33 |阅读模式 打印 上一主题 下一主题
1
已解决
假设我有一个参数组件,名字叫查询日期。
现想取该查询日期的月初和月末,生成两个参数用于过滤其他组件应该怎么写

最佳答案

yhdata_yzm 关注Ta

2022-12-07 10:05:34

选中日期的当月的第一天这个好处理,代码如下: var a=now() var b=year(now())+'-'+month(now())+'-'+'1' var c=parseDate(b,'yyyy-MM-dd') debug(c) 但是最后一天无法做,你不知道这个月最后一天是30还是31
查看完整内容
回复

使用道具 举报

精彩评论8

yhdata_yzm 显示全部楼层 发表于 2022-12-7 10:05:34
zzy1912 发表于 2022-12-7 10:14
因为查询日期是在前台用户可以自行选择的,所以需要这两个生成的时间参数随之变化 ...

选中日期的当月的第一天这个好处理,代码如下:
var a=now()
var b=year(now())+'-'+month(now())+'-'+'1'
var c=parseDate(b,'yyyy-MM-dd')
debug(c)
但是最后一天无法做,你不知道这个月最后一天是30还是31
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2022-12-7 10:12:33
是想要查询一整个月的数据吗,可以新建日期表达式,年月。设置过滤只用参数等于年月就可以了
回复

使用道具 举报

zzy1912青铜三 显示全部楼层 发表于 2022-12-7 10:14:39
yhdata_lyaa 发表于 2022-12-7 10:12
是想要查询一整个月的数据吗,可以新建日期表达式,年月。设置过滤只用参数等于年月就可以了 ...

因为查询日期是在前台用户可以自行选择的,所以需要这两个生成的时间参数随之变化
回复

使用道具 举报

zzy1912青铜三 显示全部楼层 发表于 2022-12-7 10:37:44
yhdata_yzm 发表于 2022-12-7 10:35
选中日期的当月的第一天这个好处理,代码如下:
var a=now()
var b=year(now())+'-'+month(now())+'-'+'1 ...

可以取下个月第一天然后减1,感谢编写。
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-12-7 10:47:13
zzy1912 发表于 2022-12-7 10:37
可以取下个月第一天然后减1,感谢编写。

var d=dateAdd(dateAdd(c,'month',1),'dayofyear',-1)这样最后一天
回复

使用道具 举报

DX188铂金四 显示全部楼层 发表于 2022-12-7 13:27:30
zzy1912 发表于 2022-12-7 10:14
因为查询日期是在前台用户可以自行选择的,所以需要这两个生成的时间参数随之变化 ...

将新建的日期表达式拉入下拉列表参数,不管前台后台都是可以选择查询日期。反正你要的是一整个月的数据,表达式年月就可以,还不用脚本简单方便快捷。也可以用2个下拉列表参数,一个放表达式年,一个放表达式月。这样更简捷明了点
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2022-12-7 13:53:51
zzy1912 发表于 2022-12-7 10:37
可以取下个月第一天然后减1,感谢编写。

回复

使用道具 举报

zzy1912青铜三 显示全部楼层 发表于 2022-12-7 13:57:08
最终应用在8.5版本上的脚本为:
var a=parseDate(查询日期.getObjects()[0][0],'yyyy-MM-dd')
var b=year(a)+'-'+Month(a)+'-'+'1'
var c=parseDate(b,'yyyy-MM-dd')
var d=dateAdd(c,'dayofyear',-1)
param['b']=d

如果是9.4或以上版本,经测试如下脚本也可用:
var a=day(param['查询日期'])
param['月初']=dateAdd(param['查询日期'],"day",-a+1)
param['月末']=eomonth(param['查询日期'],0)

已完结。
回复

使用道具 举报

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

  • 官方微信

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

    扫码关注
  • 新浪微博

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

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

会员等你来哦

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