Crystal Reports:转换为动态参数

2020-09-08 19:29发布

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

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


对于我要修改的此特定报告,已指示我寻找一种从公式中删除参数项并将其转换为动态设置的方法。 这是我现在拥有的一部分:

选择{?Day_Night}
 案例"日":
    选择{?位置}
         情况" ALL":({?Day_Night} = {Command.Day}; {Command.category}如" *")
         案例"队长":({?Day_Night} = {Command.day}; {Command.category}如"队长")
     案例"中尉":({?Day_Night} = {Command.day}; {Command.category}如"中尉*")
     案例"大师":({?Day_Night} = {Command.day}; {Command.category}类似于"大师*")
 

问题是随着职位数量的增加,我们不想手动添加每个职位。 该报告应动态处理位置参数。

有没有办法做到这一点?

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

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


对于我要修改的此特定报告,已指示我寻找一种从公式中删除参数项并将其转换为动态设置的方法。 这是我现在拥有的一部分:

选择{?Day_Night}
 案例"日":
    选择{?位置}
         情况" ALL":({?Day_Night} = {Command.Day}; {Command.category}如" *")
         案例"队长":({?Day_Night} = {Command.day}; {Command.category}如"队长")
     案例"中尉":({?Day_Night} = {Command.day}; {Command.category}如"中尉*")
     案例"大师":({?Day_Night} = {Command.day}; {Command.category}类似于"大师*")
 

问题是随着职位数量的增加,我们不想手动添加每个职位。 该报告应动态处理位置参数。

有没有办法做到这一点?

付费偷看设置
发送
5条回答
CJones
1楼 · 2020-09-08 20:01.采纳回答

如果使用的是命令,则不应使用"选择专家"-过滤器需要进入命令的where子句。 请参阅此博客以获取更多信息:https://blogs.sap.com/2015/04/01/best-practices-when-using-commands-with-crystal-reports/

您的where子句可能看起来像这样( 我正在使用SQL Server语法):

其中
   '{?Day_Night}'= table.day和
   ('{?Position}'='ALL'或
     left(table.category,len('{?Position}')='{?Position}')

此语法需要与要连接到的任何数据库类型的SQL语法匹配。 请注意参数周围的单引号-这是命令中使用字符串参数所必需的。 请务必阅读博客中有关在命令中使用参数的部分。

-Dell

天桥码农
2楼-- · 2020-09-08 20:08

尝试一下,但它选择了所有位置。

如果{?Day_Night} ='All',则(
 如果{?Position} =" ALL",则({Command.category}如" *"; {?Day_Night} = {Command.Day_night})
 else {Command.category} = {?Position};  {?Day_Night} = {Command.Day_night}
 )
软件心理学工程师
3楼-- · 2020-09-08 20:17

嗨,Kenshin,

尝试:

 {?Day_Night} =" Day" AND {?Day_Night} = {命令。 日期} AND({?Position} =" ALL"或{Command.category}喜欢{?Position}&'*')

-阿比拉什

落灬小鱼
4楼-- · 2020-09-08 20:04

是。 这将大大减慢报告的处理速度,但这不是最好的方法,但是可以做到。 尝试在"选择专家"中使用相同的逻辑。 像这样的东西:

({?Day_Night} ='ALL'或{?Day_Night} = {command.day})
 和
 ({?Position} ='ALL'或left({{command.position},length({?Position}))= {?Position})

-Dell

大简至美
5楼-- · 2020-09-08 20:12
# p #

嗨。 刚刚尝试过,报告没有返回任何数据。

一周热门 更多>