找文章 / 找答案
精选问答 更多内容

[常用脚本] 日期参数的脚本怎么写

yhdata_2aA4rwOK青铜四 显示全部楼层 发表于 2022-9-27 13:50:10 |阅读模式 打印 上一主题 下一主题
1
已解决

【常用脚本】 日期参数的脚本怎么写

2425 3
文本参数1是今天,实现文本参数2是文本参数1所在周的第一天,也就是周一、2022-09-26;文本参数3是文本参数1所在季度的第一天,也就是第三季度2022-07-01,请问这种脚本应该怎么写?
企业微信截图_16642574207966.png

最佳答案

0xRichard 青铜四 关注Ta

2022-09-27 13:50:11

1.新建三个文本参数,分别修改名称为文1,文2,文3 2.复制一下脚本放入到报告-脚本-变化时运行 var d1=文1.value var list = split(d1,'-',-1) var d2 = weekday(date(list[0,list[1,list[2),2) var d3 = '' if (d2 > 1 && list[2 < d2){ if (list[1-1 == 2){ d3 = toString(list[0]+'-'+toString(list[1)+'-'+(28-d2+list[2)) //debug(d3) }else if(list[1-1 == 1||list[1-1 == 3||list[1-1 == 5||list[1-1 == 7||list[1-1 == 8| ...
查看完整内容
回复

使用道具 举报

精彩评论3

0xRichard青铜四 显示全部楼层 发表于 2022-9-27 13:50:11
文本参数.png
1.新建三个文本参数,分别修改名称为文1,文2,文3
2.复制一下脚本放入到报告-脚本-变化时运行
var d1=1.value
var list = split(d1,'-',-1)
var d2 = weekday(date(list[0,list[1,list[2),2)
var d3 = ''
if (d2 > 1 && list[2 < d2){
if (list[1-1 == 2){
d3 = toString(list[0]+'-'+toString(list[1)+'-'+(28-d2+list[2))
//debug(d3)
}else if(list[1-1 == 1||list[1-1 == 3||list[1-1 == 5||list[1-1 == 7||list[1-1 == 8||list[1-1 == 10||list[1-1 == 12){
d3 = toString(list[0]+'-'+toString(list[1)+'-'+(31-d2+list[2))
}else if(list[1-1 ==4||list[1-1 ==6||list[1-1 ==9||list[1-1 ==11){
d3 = toString(list[0]+'-'+toString(list[1)+'-'+(30-d2+list[2))
//debug(d3)
}
}else if(d2 == 1){
d3 = toString(list[0)+'-'+toString(list[1)+'-'+integer(list[2)
//debug(d3)
}else if(list[2]>d2){
d3 = toString(list[0)+'-'+toString(list[1)+'-'+integer(list[2-d2+1)
}
2.value=d3

var dd =1.value
var list = split(dd,'-',-1)
if(list[1]==1||list[1]==2||list[1]==3){
3.value = list[0]+'-'+'01-01'
}else if(list[1]==4||list[1]==5||list[1]==6){
3.value = list[0]+'-'+'04-01'
}else if(list[1]==9||list[1]==7||list[1]==8){
3.value = list[0]+'-'+'07-01'
}else if(list[1]==10||list[1]==12||list[1]==11){
3.value = list[0]+'-'+'10-01'
}



回复

使用道具 举报

yhdata_ruby铂金一 显示全部楼层 发表于 2022-9-27 14:19:25
本帖最后由 yhdata_ruby 于 2022-9-27 14:22 编辑

_THIS_YEAR_WEEK_为返回当前周的第一天,_THIS_YEAR_QUARTER_返回当前季度第一天。
具体可以参考https://www.yonghongtech.com/hel ... E%E5%8F%82%E6%95%B0
回复

使用道具 举报

0xRichard青铜四 显示全部楼层 发表于 2022-9-28 12:27:42
richard_y 发表于 2022-9-27 16:27
1.新建三个文本参数,分别修改名称为文1,文2,文3
2.复制一下脚本放入到报告-脚本-变化时运行
var d1=文1 ...

优化了脚本,可以复制新的脚本,也可以导入case看下(94版本)
var d1=文1.value
var list = split(d1,'-',-1)
var d2 = weekday(date(list[0],list[1],list[2]),2)
var d3 = ''
if (d2 > 1 && integer(list[2]) < d2){
if (list[1]-1 == 2){
d3 = toString(list[0]+'-'+'0'+toString(integer(list[1]-1))+'-'+(28-d2+integer(list[2])+1))
}else if (integer(list[1])+1==2){
d3 = toString(list[0]-1+'-'+'12'+'-'+(31-d2+integer(list[2])+1))
}else if(list[1]-1 == 1||list[1]-1 == 3||list[1]-1 == 5||list[1]-1 == 7||list[1]-1 == 8||list[1]-1 == 10||list[1]-1 == 12){
if (list[1]-1==12||list[1]-1==10){
d3 = toString(list[0]+'-'+toString(integer(list[1]-1))+'-'+(31-d2+integer(list[2])+1))
}else{
d3 = toString(list[0]+'-'+'0'+toString(integer(list[1]-1))+'-'+(31-d2+integer(list[2])+1))
}
}else if(list[1]-1 ==4||list[1]-1 ==6||list[1]-1 ==9||list[1]-1 ==11){
if (list[1]-1==11){
d3 = toString(list[0]+'-'+toString(integer(list[1]-1))+'-'+(30-d2+integer(list[2])+1))
}else{
d3 = toString(list[0]+'-'+'0'+toString(integer(list[1]-1))+'-'+(30-d2+integer(list[2])+1))
}
}else{
debug('nnnn')
}
}else if(d2 == 1){
d3 = toString(list[0])+'-'+toString(list[1])+'-'+integer(list[2])
}else if(list[2]>d2){
d3 = toString(list[0])+'-'+toString(list[1])+'-'+integer(list[2]-d2+1)
}else if (list[2]==d2){
d3 = toString(list[0])+'-'+toString(list[1])+'-'+integer(list[2]-d2+1)
}
list2 = split(d3,'-',-1)
if (integer(list2[2])<10){
文2.value= toString(list2[0])+'-'+toString(list2[1])+'-'+'0'+integer(list2[2])
}else{
文2.value= d3
}

var dd = 文1.value
var list3 = split(dd,'-',-1)
if(integer(list3[1])==1||list3[1]==2||list3[1]==3){
文3.value = list3[0]+'-'+'01-01'
}else if(list3[1]==4||list3[1]==5||list3[1]==6){
文3.value = list3[0]+'-'+'04-01'
}else if(list3[1]==9||list3[1]==7||list3[1]==8){
文3.value = list3[0]+'-'+'07-01'
}else if(list3[1]==10||list3[1]==12||list3[1]==11){
文3.value = list3[0]+'-'+'10-01'
}



文本参数 (1).jar

3.09 KB, 下载次数: 1

回复

使用道具 举报

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

  • 官方微信

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

    扫码关注
  • 新浪微博

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

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

会员等你来哦

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