Crystal Reports:清理IF语句的方法(还有其他方法吗?)?

2020-09-08 21:25发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我在一份报告中列出了IF Els...

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

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


我在一份报告中列出了IF Else语句,并且IF语句工作得很好; 没有什么问题。 但是由于报告参数的性质,它相当长。 因此,我想知道是否有一种方法可以使IF语句更短并使整个事情在眼睛上看起来更轻松?

这是IF语句的一部分。

如果({?Day_Night} ='Day')和({?Position} =" ALL"),则({?Day_Night} = {Command.Day}; {Command.category}如" *")
 否则,如果({?Day_Night} ='Night')和({?Position} =" ALL"),则({?Day_Night} = {Command.Night}; {Command.category}如" *")
 否则,如果({?Day_Night} ='All')和({?Position} =" ALL"),则({?Day_Night} = {Command.day_night}; {Command.category}如" *")
 
 否则,如果({?Day_Night} ='Day')和({?Position} =" Captain"),则({?Day_Night} = {Command.Day}; {Command.category}如" Captain *")
 否则,如果({?Day_Night} ='Night')和({?Position} =" Captain"),则({?Day_Night} = {Command.Night}; {Command.category}如" Captain *")
 否则,如果({?Day_Night} ='All')和({?Position} =" Captain"),则({?Day_Night} = {Command.day_night}; {Command.category}如" Captain *")
 

从字面上看,这就像整个事情的1/6。 不,我不能将参数设置移至SQL命令。 我这样做了,但效果很好,但被告知要将参数移到报表的公式中。

谢谢!

2条回答
小c菟菟
2020-09-08 22:05

放入";" 在每次选择的最后,Crystal认为以下选择语句不属于公式。 因此,我修改了这样的代码。

选择{?Day_Night}
 案例"日":
 (
   选择{?位置}
         情况" ALL":({?Day_Night} = {Command.Day}; {Command.category}如" *")
         案例"队长":({?Day_Night} = {Command.day}; {Command.category}如"队长")
 )
 案例"夜":
 (
   选择{?位置}
         情况" ALL":({?Day_Night} = {Command.Day}; {Command.category}如" *")
         案例"队长":({?Day_Night} = {Command.night}; {Command.category}如"队长")
 )

一周热门 更多>