产生月度报告

2020-09-11 02:09发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我必须根据以下用户要求创建报告:

问题

1)如何创建年份参数?当用户按年份过滤时-数据将按月显示。

2)如何计算每月的总产品数? 该报告还将显示空值数据,并且月份的列标题为静态。 我是否必须创建一个公式字段来计算每个月的总产品?

此报告中将使用的字段为位置,产品名称,日期(dateTime值)。 需要可以帮助我生成此报告的人。

谢谢。

(8.8 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我必须根据以下用户要求创建报告:

问题

1)如何创建年份参数?当用户按年份过滤时-数据将按月显示。

2)如何计算每月的总产品数? 该报告还将显示空值数据,并且月份的列标题为静态。 我是否必须创建一个公式字段来计算每个月的总产品?

此报告中将使用的字段为位置,产品名称,日期(dateTime值)。 需要可以帮助我生成此报告的人。

谢谢。

(8.8 kB)
付费偷看设置
发送
5条回答
悠然的二货
1楼-- · 2020-09-11 02:33

嗨,

请尝试以下操作:

1。 为Year

2创建一个数字参数。 添加一个如下所示的记录选择公式:

 Year({Database_field})= {?Year参数} 

如果要针对表/视图进行报告,则可以创建 一个" SQL表达式"字段以提取Year部分并将其用于选择公式中。 这会将选择标准推送到数据库,以获得更好的性能。 SQL Server的SQL表达式将是:

 DatePart(year," table"。" DateField")

然后您可以在选择公式中使用此字段,如下所示:

 {%SQL表达式名称} = {?Year参数} 

3。 插入交叉表。 使用"日期"字段作为列,并设置其"组选项"以每个月打印一次。

使用"位置产品"字段作为行。

使用"产品"字段作为"汇总字段" ',其功能设置为'Count'。

-Abhilash

哎,真难
2楼-- · 2020-09-11 02:33

感谢您的帮助。

交叉表看起来很好,但是问题是当选择参数时,月份栏之一消失了。 如何在列标题中显示所有月份? 我试图在"报表"选项中勾选"将数据库的NULL值转换为默认值",但输出仍然相同。

绿领巾童鞋
3楼-- · 2020-09-11 02:35

Crystal报表无法报告数据库中不存在的数据。 这意味着,如果特定月份不存在任何一行,则该行将不会显示在"交叉表"中或报表的其他位置。

为确保没有"丢失"的日期/月,则数据库中需要一个"日历"表。 其他替代方法包括创建一个Custom SQL查询,该查询生成从过去某年到将来某年的日期列表。 然后,您可以从此日历表左联接到包含"日期"字段的原始表。

然后,您需要替换报表上原始"日期"字段的所有实例(包括选择公式,组, 交叉表等)与"日历"表中的"日期"字段。 这应该整整几个月,而不管该月是否存在产品数据。

-Abhilash

蓋茨
4楼-- · 2020-09-11 02:43

这很复杂。 我无权编辑或修改数据库。

对于第二种选择,对此有一些疑问:

1)我应该在哪里创建自定义SQL查询? 在水晶报告中吗? 如果在Crystal报表中,您可以向我展示如何创建自定义SQL查询。

2)如果创建自定义SQL查询,数据库的结构是否会更改?

是否可以使用公式对每个月的产品进行计数以便在报告中显示所有12个月?

非常感谢。

亦是此间程序员
5楼-- · 2020-09-11 02:48

1。 自定义SQL已添加到报告中。 有关此主题的更多信息,请参阅Dell的博客:

https://blogs.sap.com/2015/04/01/best-practices-when-using-commands-with-crystal-reports /

2。 自定义SQL不会更改数据库结构。 这只是添加为数据源的"选择"查询。

3。 使用交叉表中使用的公式无法生成缺少的月份。

-阿比拉什

一周热门 更多>