【发布时间】:2014-11-09 20:54:23
【问题描述】:
当我运行一些 SAP 事务时,例如MB51 Material document list 我可以指定一些条件,过滤和减少事务返回的记录数。 (日期、材料等)我可以指定或过滤仅通过选择布局返回的列。
然后需要相对较长的时间来获取所需的记录,例如MB51 交易。但是,当我在屏幕上显示结果集并且更改布局并包含其他列时,事务不会重新运行:而是立即显示列值。我想无论选择的布局如何,都会返回所有列值。
由于通常有大量列不提供任何有趣的数据,因此会显着降低某些 SAP 事务的性能。
我只有普通用户可以访问 SAP 安装,并且没有使用 ABAP 或在 SAP 中创建自定义事务的经验。所以我只需要坚持标准交易。
这种行为是 SAP 的正常问题还是我们安装的问题?非特权用户是否有任何解决方法来过滤返回的列?
【问题讨论】:
-
这不是问题。程序返回的列由程序本身决定。您不能从选择中删除列,只能从显示中删除它们。而且我不确定额外的列会像您想象的那样减慢交易速度。大多数时候,从一个大表中选择少数想要的记录比返回几个(甚至几百个)不需要的列要花费更多的时间。缓慢的选择通常是由于使用了未在表索引中表示的选择标准,从而导致全表扫描。您的管理员可能会在这方面为您提供帮助...
-
据我了解,如果您想在 SAP 中快速生成只返回所需列而不返回其他任何内容的报告,您需要创建自定义事务吗?不幸的是,我没有选择很少的记录,而是选择了很多记录进行进一步分析。
-
有 SAP Query 如果你想对查询和返回的内容有一些影响,你可以用它创建你自己的自定义查询,提供一些数据库知识。但标准 SAP 事务不能以这种方式修改。他们通常会获取所有数据并显示您需要的内容。
-
@DirkTrilsbeek 您的 cmets 将我视为对我问题的回答。当 SQ01 返回
User vdohnal does not belong to any group时 - 这可能意味着我不能使用 SAP Query,对吧? -
如果您可以调用 SQ01,那么您至少拥有执行此操作所需的 SAP 角色。 SAP Query 中的组用于将查询分组到不同的区域,以使其更易于管理。您不属于任何组(还)并不一定意味着您不能使用 SAP Query。它基本上是这样工作的:首先你创建一个信息集,它通常是你的查询所基于的数据。单表、表连接甚至是自定义的abap 程序。然后根据该信息集创建查询。您可以在同一个信息集上创建多个查询。
标签: sap-erp