这是我第一次尝试Stack溢出,所以希望你们都可以帮助我。我很乐意开始在这里做出贡献,它在过去一直是一个非常有用的工具。
好的,所以我正在尝试撰写一份报告,列出制造业设施的过去时间总数。我所拥有的是表格的集合,列出每个制造订单并给出截止日期和完成日期。运行报告的人进入日期范围,我想生成一个图表,其中包含沿x轴的日期和y轴上的过期时间总和。也许我错过了三种形式伎俩的实现,但我不能让它发挥作用。我可以按截止日期进行分组,但这只能给出我在给定日期过期的总订单数。
我需要的是以下内容,即可图表:
For each (date in DateRange) {
If (Due Date < i) && (Comp Date > i) {
Past Due Hours = Past Due Hours + manufacturing order Hours
}
}
我知道它不是在Crystal语法中,我只是试图将图片展开。有什么帮助吗?
答案 0 :(得分:0)
如果我理解正确,这个问题会定期出现。你有这样的东西吗?
OrderNum DueDate CompletedDate
1 01/01/01 01/02/01
2 01/01/01 01/01/01
3 01/02/01 01/03/01
4 01/02/01 01/02/01
现在你要做的第一件事就是得到一张表(有其他类似的方法),其中包含所有日期并加入你的数据集,这样你最终会得到:
OrderNum DueDate CompletedDate Date
1 01/01/01 01/02/01 01/01/01
2 01/01/01 01/01/01 01/01/01
3 01/02/01 01/03/01 01/01/01
4 01/02/01 01/02/01 01/01/01
1 01/01/01 01/02/01 01/02/01
2 01/01/01 01/01/01 01/02/01
3 01/02/01 01/03/01 01/02/01
4 01/02/01 01/02/01 01/02/01
1 01/01/01 01/02/01 01/03/01
2 01/01/01 01/01/01 01/03/01
3 01/02/01 01/03/01 01/03/01
4 01/02/01 01/02/01 01/03/01
接下来,您需要添加一个字段,用于确定订单是否为{@overdue}
:
if {table.duedate} < {table.date} and {table.completeddate} > {table.date} then
1
else
0;
确保选择空值的默认值以避免任何异常。)
现在,您可以针对sum({@overdue})
{table.date}
→