关于未来销售问题

例如:

如果我传的参数是夏季,那么未来销售时间的查询区间为:当前日期  至 2024年7月31日

如果我传的参数是秋季,那么未来销售时间的查询区间为:2024年8月1日  至 2024年10月31日(因为当前日期为:2025-07-22,如果当前日期为2024年8月5日,那么未来销售时间的查询区间为:2024年8月5日  至 2024年10月31日)

备注:使用kettle能实现自动化吗?

FineReport Yours飞飞 发布于 2025-7-22 08:16 (编辑于 2025-7-22 08:26)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
华莉星宸Lv7专家互助
发布于2025-7-22 08:18(编辑于 2025-7-22 08:28)

你这是在查询以前年份的数据啊

自己做个季节  日期的时间维度表 

image.png

最佳回答
0
ScyalcireLv7高级互助
发布于2025-7-22 08:22(编辑于 2025-7-22 08:31)

kettle好久没用了,现在这个电脑没装,你看下这个教程行不行

image.png

var currentDate = input_param.getValue("start_date") || new Date().Format("yyyy-MM-dd");
var season = input_param.getValue("season");

if(season == "夏季"){
    output_field.setValue(currentDate + "2024-07-31");
} else if(season == "秋季"){
    var start = currentDate > "2024-08-01" ? currentDate : "2024-08-01";
    output_field.setValue(start + "2024-10-31");
}

  • Yours飞飞 Yours飞飞(提问者) 用kettle能实现吗?
    2025-07-22 08:25 
  • Scyalcire Scyalcire 回复 Yours飞飞(提问者) 用kettle的话 也是通过sql去判断的吧
    2025-07-22 08:27 
最佳回答
0
CD20160914Lv8专家互助
发布于2025-7-22 08:30

这都是什么规律?完全看不出你这个什么夏季,秋季,对应的时间有什么规律?

这是想当然的时间?那秋季为什么一下是8-1至10-31 ,一下又是8-5至10-30?你这秋季自己定的?

  • Yours飞飞 Yours飞飞(提问者) 春夏秋冬是自己定义的时间:
    春:12月01日-4月30日
    夏:3月01日-7月31日
    秋:8月1日-10月31日
    冬:10月1日-2月28日
    未来销售就是查询以前发生过的历史数据当做未来销售。
    如果查秋季的未来销售,时间范围就是当前日期到10-31,(如果当前日期早于秋季起始日期:08-01,那么就就查询08-01 至 10-31)
    2025-07-22 08:39 
  • CD20160914 CD20160914 回复 Yours飞飞(提问者) 那你自己做一个维度表吧,这样随便怎么变都可以了。只有这个维度表,就查看当前日期与你定义的开始时间比较大小就行了。
    2025-07-22 08:40 
  • CD20160914 CD20160914 回复 Yours飞飞(提问者) 比如你秋季的开始时间是8-1,假如今天 是7-22,要查询秋季,你只要判断当天日期如果小于你的维度表对应的开始时间,那么就直接用秋季的开始时间就行了
    2025-07-22 08:42 
最佳回答
0
WJ6BirddLv2见习互助
发布于2025-7-22 08:37

感觉还是要先用sql去做一个时间判断啊,再设对应的夏季秋季的模板参数,跟一楼说的做一个基于你这逻辑的时间维表来写

  • 5关注人数
  • 68浏览人数
  • 最后回答于:2025-7-22 08:37
    请选择关闭问题的原因
    确定 取消
    返回顶部