FineReport问题求助

测试.rar

首先:甲乙丙丁四班的上班时间为小四班,比如:3日的19-4日的1点为甲班,4日1-7点为丁班,4日7-19点为甲班,4日19-5日1点为乙班,5日1-7点为甲班,5日7-19点为乙班,5日19-6日1点为丁班,以此类推。

我想统计出日期控件选择的时间段内,甲乙丙丁整备台数。就是他们对应上班时间入库的数量,比如:甲班在3日的19点至4日1点上班,对应的数据集中 入库数量的入库时间中筛选3日的19点至4日1点的入库数量。

FineReport 帆软用户萌新 发布于 2024-3-17 19:15
1min目标场景问卷 立即参与
回答问题
悬赏:6 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
华莉星宸Lv7专家互助
发布于2024-6-5 08:29

你这排班没有明显的规律

建议做一个排班时间表,大致格式

image.png

在根据入库时间来判断就可以统计出各班的入库数量了

image.png

最佳回答
0
用户k6280494Lv6专家互助
发布于2024-3-18 08:58

筛选分为两个控件,一个时间控件,一个班次控件,数据集中if判断拼接固定时间段即可

例如

select * from table

where 1=1

${if(bz='甲班',"and rq>='"+CONCATENATE(rq," 01:00:00")+"' and rq<='"+CONCATENATE(rq," 07:00:00")+"'",if(bz='乙班',"and rq>='"+CONCATENATE(rq," 07:00:00")+"' and rq<='"+CONCATENATE(rq," 19:00:00")+"'","and rq>='"+CONCATENATE(rq," 19:00:00")+"' and rq<='"+CONCATENATE(DATEDELTA(rq,1)," 01:00:00")+"'"))}

  • 3关注人数
  • 284浏览人数
  • 最后回答于:2024-6-5 08:29
    请选择关闭问题的原因
    确定 取消
    返回顶部