当前位置:主页 > 游戏服务器 > 国际 >

数据库服务器_seo企业网站优化_12月免费

  • 国际
  • 2021-07-13 10:45
  • 动埠云

你好!在这篇文章中,我想考虑在abapcds视图中过滤数据的重要主题。

我要感谢谢尔盖•沙布利金的密切合作。没有他的参与,没有他的知识和经验,这篇文章就不会出现。

简介

目前过滤数据的方法主要有三种:

SAP文档中考虑了使用参数的语法。下表列出了参数功能的优点和缺点。

在我看来,当前的限制强烈限制了区域或参数的使用。参数适用于将一些用于关键数字计算的数值转换为逻辑,也可以用于在不同的场景下拆分复杂的逻辑。通常我会尝试编写一个默认值并隐藏参数,以便业务用户看不到它。

SAP文档中考虑了使用参数的语法。下表中有参数功能的优点和缺点。

当然您会注意到,我只在表的右侧部分写了一个限制。

帖子的所有其他部分都会显示出来消除单一限制并回答一个性能问题:

ABAP CDS视图中的变量过滤是否会被下推到最底层?

这个问题在S/4HANA和(其部分)嵌入式分析推广中经常出现。现在,如果你有S/4HANA,主流不是创建"旧的"ALV报告,也不是在单独的sapbw系统中开发所有分析报告。您可以使用嵌入式分析,并基于ABAP CDS视图直接在S/4HANA中创建报告。

此处不考虑这些报告,大数据支持,有关更多信息,请参阅帖子。

使用变量检查CDS视图的性能

以下模型用于测试。

1.1。销售交易记录表。它包含时间特征、销售经理、客户和金额。记录数133848条

1.2条。销售经理的主数据表包含与语言相关的文本和销售组。它们合并在一个表中,只是为了尽量减少数据准备和手动数据输入。记录数为9.

2.1。销售数据交易视图:

2.2。销售经理文本视图:

2.3。销售经理维度视图:

2.4。销售立方体视图:

2.5。带变量的销售分析查询视图:

3.1。进入分析查询

3.2。使用以下调试选项执行,以分析性能,并从应用服务器端的视图生成SQL。

3.3。输入变量。限制年度和销售小组分析过滤在何处以及如何转移和执行。

3.4。获取结果sql语句并在where子句中查找限制

3.5。结果数据集按年度、销售组过滤,并按销售经理汇总(它们在查询的自由部分)。初始视图:

仅2016年如预期:

仅销售组1和该组的销售经理(见第1.2段的基础数据)。

请注意,文本按预期以英语显示(您可以在博客中找到更多关于时间相关属性和语言相关文本的信息)。在主数据表中,淘客佣金,我们有1个德国测试记录,销售组A1.

3.6。查询统计显示,读取的记录总数为3744条,大数据都学什么,开心返利,传输的记录总数为936条。但是这个统计数据不能证明这个过滤和聚合结果是如何在DB级别执行的(我的意思是逻辑下推存在或不存在)。

要了解133848到936条记录的过滤和聚合是如何执行的,物联网技术,我们需要分析HANA SQL跟踪。

4.1。在管理-跟踪配置-SQL跟踪打开SQL跟踪。

4.2。在RSRT中运行分析报告,停止SQL跟踪并分析结果。

4.3。在跟踪日志中查找生成的SQL语句,并使用执行计划执行

输入CALYEAR和SRGROUP1的值2016和相应的值1。

4.4。执行计划图表格式

我们有按年度和按销售组两种过滤条件。在执行计划中,我们看到在HANA DB的底层执行过滤。

结果

我们考虑了ABAP CDS视图中的主要过滤选项,并得到了主要问题的答案:

ABAP CDS视图中的变量过滤被下推到最底层!

谢谢大家的关注!

猜你喜欢

微信公众号