两个内部表的比较(大表)

2020-08-19 02:00发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 内部表包含大量数据。 ...

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

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


嗨,

内部表包含大量数据。

在调试此代码时,它可以正常工作,但是在执行(按f8键)时却未运行程序(我是说程序正在不断加载)。

请给我任何建议。

在it_tab1上循环,然后将其循环到wa_tab2中
*在it_tab2中循环到wa_tab2中
将键obj_name = wa_tab1-tablename读入it_tab2到wa_tab2中。
*其中obj_name = wa_tab1-tablename。
CLEAR wa_final
wa_final-tablename = wa_tab1-tablename。
wa_final-description = wa_tab1-description。
wa_final-total_records = wa_tab1-total_records。
wa_final-package = wa_tab2-package。
wa_final-package = created_on = wa_tab2-created_on。
附加wa_final至it_final。
ENDLOOP。

5条回答
梦想连接
2020-08-19 02:34

以下编码在性能方面会更好。

我想知道,如果您的完整编码也没有其他问题,例如无限循环, 因为根据您的描述,它永远不会停止。 (您是停止它还是遇到超时转储?您是否尝试过在后台运行它,看看它花了多长时间,还是"从不停止"还是不是"选择",因为您需要它吗? 对话框报告显示或下载到GUI?)

向我们提供有关您的编码和两个表中数据量的更多信息,以便我们更全面地评估您的问题。

我假设您的性能问题也可能与TOTAL_RECORDS以及如何计算有关,如果我猜对了您的要求是什么。

您是否真的要遍历所有数据库表,收集它们的总记录,并进行合并 它们带有一些DDIC信息,然后想要显示或下载该信息?

我希望此类尝试的性能都会很差。

尝试仅使用Z表或仅使用 首先查看几个表格,然后看看有多快。 您可以在报表中使用select-options变量,以使其缓慢启动。

数据it_tab2类型已排序的表your_table_type,具有非唯一键objname。
 FIELD-SYMBOLS 类似于it_tab1的行。
 FIELD-SYMBOLS 类似于it_tab2的行。

 清除wa_final。
 循环至it_tab1 ASSIGNING 。

   使用表键obj_name =  -tablename读取表it_​​tab2分配。
   检查sy-subrc = 0。

   wa_final-tablename = -表名。
   wa_final-description = -描述。
   wa_final-total_records =  -total_records。
   wa_final-package = -软件包。
   wa_final-created_on =  -created_on。

   将wa_final插入表it_final。

 ENDLOOP。

一周热门 更多>