如何在其他字段上排序时使用数据库查找表达式?

2020-09-15 11:41发布

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

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


使用数据库查找(在这种情况下可能不是正确的表达式类型),我想从表中选择一个字段(或表行),将其称为客户编号,在其中指定要选择的值 参数,将其称为产品-但我也只想选择日期最近的表条目,则将其称为创建日期。 这可能吗?

我找不到将创建日期排序合并到选择条件中的方法-没想到能够这样做。

我尝试使用select进入结构,然后使用最大值的集合作为创建日期,但是返回的值与表中的正确行相对应。

我知道我可以选择所有条目,然后对结果表进行表操作,但是我希望找到一种方法在单个表达式中进行操作。 怎么办?

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

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


使用数据库查找(在这种情况下可能不是正确的表达式类型),我想从表中选择一个字段(或表行),将其称为客户编号,在其中指定要选择的值 参数,将其称为产品-但我也只想选择日期最近的表条目,则将其称为创建日期。 这可能吗?

我找不到将创建日期排序合并到选择条件中的方法-没想到能够这样做。

我尝试使用select进入结构,然后使用最大值的集合作为创建日期,但是返回的值与表中的正确行相对应。

我知道我可以选择所有条目,然后对结果表进行表操作,但是我希望找到一种方法在单个表达式中进行操作。 怎么办?

付费偷看设置
发送
2条回答
哎,真难
1楼-- · 2020-09-15 12:23

对于在BRF中应执行的操作没有硬性规定,我将其实现为过程调用表达式,并在方法中执行SELECT。 或CDS视图上的数据库查找表达式。

总的来说,它确实引起了一个有趣的问题,即代码或DB层中的内容以及规则中的内容。 根据我的经验,我看到过BRFplus过度使用非常复杂的技术逻辑,而这些逻辑实际上应该在代码中。 我个人认为,如果规则引擎可以更改和/或提供透明度(即与业务相关),则应该将其纳入规则引擎。 规则可以变得足够复杂,而无需使用不必要的技术细节来使规则混乱。

在这种情况下,从视图中选择MOST_RECENT_CUST_FOR_MATL足够清晰,任何人都可以理解,并且极不可能需要编辑日期条件。 因此,我避免在BRFplus中做任何复杂的事情以获得简单的结果。

xfwsx85
2楼-- · 2020-09-15 12:02

感谢评论 Mike Pokraka 我知道我可以在过程调用中做到这一点。 我想在表达式中做。

一周热门 更多>