点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我认为我需要创建一个新线程。 感谢您对上一个问题的帮助。
我在代码检查器中显示了两个DELETE语句。 为什么会出现性能问题?
有什么建议吗?
选择顺序 从/bmw/ts_1143_log作为 在@s_ordid中的位置 AND order_comp_flag EQ @空格 和 存在(选择* 来自zmrp 在哪里cno_order EQ a〜ordid AND cid_status IN @s_status AND cno_assyl IN @s_assyl) 进入表@gt_log。 如果sy-subrc EQ 0。 排序gt_log 按ordid。 从gt_log删除相邻的重复项 正在比较## CI_SORTED。 ENDIF。
和
在lt_plaf循环 分配FIELD-SYMBOL()。 读取表lt_zmrp 导入数据(ls_zmrp) 使用键cno_order = -plnum + 3(7)。 IF sy-subrc NE 0。 将abap_true移动到 -xdel中。 万一。 结局。 删除lt_plaf Xdel EQ在哪里abap_true。
删除声明1:
您再次将数据从数据库传输到不需要的应用程序服务器。 您选择字段ORDID,然后立即消除重复的条目。 SELECT语句可以直接在数据库中执行以下操作:SELECT DISTINCT ordid ...
删除声明2:
如果您有NW 7.40或更高版本的系统,请不要再使用MOVE语句。 如果目标始终在左侧,而源始终在右侧,则代码更具可读性。进行任何操作,因此可以立即从内部表中删除该行:
但问题是:实际上,您不需要附加标志。 设置标志后,由于无需使用
此外,我从READ语句中删除了数据复制。 您不需要结果,因此可以省略数据传输。
最好的方法是从不读取这些行,并与读取lt_zmrp的语句进行连接。
一周热门 更多>