我正在尝试使用两个参数字段

2020-08-27 05:36发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,我正在尝试使用两个Numb...

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

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


您好,我正在尝试使用两个Number类型参数字段来使用Crystal Reports来确定月份的日期范围。 该报告将一直工作到两个参数具有相同的月份为止。 底部的记录数正确,但没有显示在屏幕上。

这是我所拥有的:

参数字段:

BegMonth(类型:数值列表:静态)

EndMonth(类型:数值列表:静态)

我的值为:

1-1月

2月2日

3月3日

Under Value选项:允许离散值:True

正在报告->选择专家->报告

如果({{EMPLOYEE.DEPARTMENT} ="信息"

和ToNumber({@ MMBdate})> = ToNumber({?BegMonth})

和ToNumber({@ MMBdate})<= ToNumber({?EndMonth}))

然后是

否则为假

我要怎么做才能使报表中显示同一月的数据?

2条回答
Alawn_Xu
2020-08-27 05:42

我将{@MMBdate}公式更改为此:

 Month({PAEMPLOYEE.BIRTHDATE})

这将为您提供相同的结果,但处理较少。 更好的做法是创建一个SQL表达式,该表达式将使用SQL而不是Crystal公式返回生日的月份。 您没有说要连接到哪种数据库,但是如果是SQL Server,则表达式将为:

 Month(" PAEMPLOYEE"。" BIRTHDATE")

或 如果是Oracle,它将是:

提取(" PAEMPLOYEE"的月份。" BIRTHDATE")

您当前的SQL表达式无法满足您的需要,因为SQL表达式不是 打算像您一样用于完整查询。 我希望如果您从"选择专家"中剔除该部分,您将获得返回的数据。 但是,这不能满足您过滤掉这些状态的需要。 您可能最终不得不使用命令(SQL Select语句)为报表提供所有数据,而不是将表链接在一起。 有关如何执行此操作(包括如何为此设置参数)的信息,请参见此处的博客文章: https://blogs.sap.com/2015/04/01/best-practices-when-using-commands-with-crystal-reports/。 如果不确定如何编写查询,请转至数据库>>显示SQL查询,复制Crystal生成的查询,然后将其粘贴到此处,以便我为您提供帮助。 还请让我知道您要连接的数据库类型。

-Dell

一周热门 更多>