参数面板,日期快速选择问题,具体如下图

请问这种怎么实现?ae731f17855e5c39f4b36d9894ca27d.jpgimage.png

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

日期区间控件收费(3000¥),建议以下方案:

步骤 1:创建参数和控件

    下拉框参数 dateRange

image.png

    日期参数 startDate 和 endDate

    • 数据类型:日期

    • 控件类型:日期控件(分别为开始和结束日期)

步骤 2:设置动态默认值公式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),
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),
TODAY()))))))

最终效果可满足需求

image.png

  • Yours飞飞 Yours飞飞(提问者) 请问,下拉框是怎么给日期控件传递的参数
    2025-04-26 12:13 
  • 红足迹 红足迹 回复 Yours飞飞(提问者) 答案已修改,控件默认值写公式即可
    2025-04-26 13:00 
  • Yours飞飞 Yours飞飞(提问者) 回复 红足迹 感谢大佬
    2025-04-26 13:05 
  • Yours飞飞 Yours飞飞(提问者) 请问本周为什么不是TODAY() - WEEKDAY(TODAY()) + 1,而是TODAY() - WEEKDAY(TODAY()) + 2呢?
    2025-04-26 17:03 
最佳回答
0
snrtuemcLv8专家互助
发布于3 天前
  • 3关注人数
  • 43浏览人数
  • 最后回答于:3 天前
    请选择关闭问题的原因
    确定 取消
    返回顶部