获取当前时间的上个季度区间,公式怎么写?

比如当前时间:2025-04-26上个季度区间就是:2025-01-01 至 2025-03-31

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

当前时间的上一季度第一天  DATEINQUARTER(MONTHDELTA(today(),-3),1)

当前时间的上一季度最后一天  DATEINQUARTER(MONTHDELTA(today(),-3),-1)

-------------------------------------------

季度第一天:DATEINQUARTER(MONTHDELTA(todate("2025-04-26","yyyy-MM-dd"),-3),1)

季度最后一天 DATEINQUARTER(MONTHDELTA(todate("2025-04-26","yyyy-MM-dd"),-3),-1)

image.png

image.png

最佳回答
0
红足迹Lv3见习互助
发布于3 天前(编辑于 3 天前

结合你上一个提问我的回答,补充如下:

startDate默认公式:

IF($dateRange == '今日', TODAY(),
IF($dateRange == '昨日', TODAY() - 1,
IF($dateRange == '本周', TODAY() - WEEKDAY(TODAY()) + 2,
IF($dateRange == '上周', TODAY() - WEEKDAY(TODAY()) + 2 - 7,
IF($dateRange == '本月', DATEINMONTH(TODAY(), 1),
IF($dateRange == '上月', DATEINMONTH(MONTHDELTA(TODAY(), -1), 1),
IF($dateRange == '本季度',  dateINQUARTER(TODAY(),1),
IF($dateRange == '上季度',  dateINQUARTER(dateINQUARTER(TODAY(),1)-1,1),
TODAY()))))))))

endDate默认公式:

IF($dateRange == '今日', TODAY(),
IF($dateRange == '昨日', TODAY() - 1,
IF($dateRange == '本周', TODAY() - WEEKDAY(TODAY()) + 2 + 6,
IF($dateRange == '上周', TODAY() - WEEKDAY(TODAY()) + 2 - 7 + 6,
IF($dateRange == '本月', DATEINMONTH(TODAY(), -1),
IF($dateRange == '上月', DATEINMONTH(MONTHDELTA(TODAY(), -1), -1),
IF($dateRange == '本季度',  dateINQUARTER(TODAY(),-1),
IF($dateRange == '上季度',  dateINQUARTER(dateINQUARTER(TODAY(),1)-1,-1),
TODAY()))))))))

另外,如果需要用JS脚本控制日期范围,参考文档:JS实现自定义按钮快速给参数赋指定范围值- FineReport帮助文档 - 全面的报表使用教程和学习资料

  • Yours飞飞 Yours飞飞(提问者) 普通报表,如何设置,当编辑一个控件中的值后,将另一个控件中的值清空
    2025-04-26 13:18 
  • 3关注人数
  • 29浏览人数
  • 最后回答于:3 天前
    请选择关闭问题的原因
    确定 取消
    返回顶部