gpt4 book ai didi

sql - Crystal 报告;图表专家 : creating a chart with two date ranges in X axis

转载 作者:行者123 更新时间:2023-12-01 03:36:18 24 4
gpt4 key购买 nike

目前正在努力使用 Crystal Reports 中的图表来实现我想要的。

我有开始和结束日期的参数,所以图表是动态的
在 X 轴中,我希望能够指定两个日期...一个是 收到 另一个是 已完成 .

所以我们会在图表专家中看到一个条形图,它有

"On Change of" 
with the Recieved date (for each month) and Completed date (for each month)

"Show Value(s):"
DistinctCount(ItemsToCount)

此图表的重点是显示逐月比较 ItemsToCount 的数量 收到 并且正在 已完成 在任何给定的月份。

我认为我面临的问题是有时 收到 日期和 已完成 日期在同一个月内,可能会引起问题。或者 ItemToCount 可能是 收到 上个月但还没有 已完成 ...

在问这个之前,我创建了一个非常静态的图表,其中有逻辑可以说,
if the month(received)=1 THEN ItemsToCount ELSE {@Null} 

我有 12 个这样的公式加上另外 12 个用于 已完成 个月。

但是现在最终用户要求更长的时间段……所以我认为静态方法不适用于此图表!

任何帮助是极大的赞赏。如果有任何 SQL 技巧可以满足图表专家的需求,我当然愿意尝试……而不是使用子报表;)

最佳答案

最好的解决方案是更改传入的 SQL 以与要显示在图表中的数据紧密匹配。 (与尝试硬塞 Crystal Charting 相比,您在更改 SQL 方面具有更大的灵活性/能力)。因此,如果您还没有,请切换您的报表数据源以使用 SQL 命令并使用类似于以下内容的命令:

select 
ISNULL(tbl1.MNTH, tbl2.MNTH) as RptMonth,
ISNULL(tbl1.CNT,0) as ReceivedCount,
ISNULL(tbl2.CNT,0) as CompletedCount
from
(select dateadd(month, datediff(month, 0, R.RCV_DT),0) as MNTH, COUNT(*) as CNT
from T_YOUR_SOURCE_TABLE R
GROUP BY dateadd(month, datediff(month, 0, R.RCV_DT),0)
) tbl1
FULL OUTER JOIN
(select dateadd(month, datediff(month, 0, R.INV_DT),0) as MNTH, COUNT(*) as CNT
from T_YOUR_SOURCE_TABLE R
GROUP BY dateadd(month, datediff(month, 0, R.INV_DT),0) ) tbl2
on tbl1.MNTH = tbl2.MNTH
where ISNULL(tbl1.MNTH, tbl2.MNTH) between '{CrystalStartDateParam}' and '{CrystalEndDateParam}'
order by tbl1.MNTH

通过这种方式,您可以以如下格式将数据拉入报告中:
RptMonth                ReceivedCount CompletedCount
2005-01-01 00:00:00.000 1465 1269
2005-02-01 00:00:00.000 1264 1163
2005-03-01 00:00:00.000 1466 1561
2005-04-01 00:00:00.000 1505 1504
2005-05-01 00:00:00.000 1329 1416
2005-06-01 00:00:00.000 1540 1529
2005-07-01 00:00:00.000 1263 1216
2005-08-01 00:00:00.000 1249 1316
2005-09-01 00:00:00.000 1520 1460
2005-10-01 00:00:00.000 1448 1240
2005-11-01 00:00:00.000 1321 1239
2005-12-01 00:00:00.000 1421 1302

这使得在 Crystal 中绘制图表变得更加容易,当然也可以处理可变的开始/结束日期。

关于sql - Crystal 报告;图表专家 : creating a chart with two date ranges in X axis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34437895/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com