为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

ABAP MODIFY

2018-05-01 4页 doc 15KB 63阅读

用户头像

is_212655

暂无简介

举报
ABAP MODIFYABAP MODIFY MODIFY TRANSPORTINGmodify table itab from wa Transporting f1 f2 ... 用于指出表内itab 中符合工作区wa关关字的一关关的 条f1 ,f2 ,...等字段被会wa中的关修改掉。 先看下面的段程序两, 关关一关关行的更快一些你哪个? 数据定关和提取: DATA: BEGIN OF it_marc OCCURS 0,matnr LIKE marc-matnr, werks LIKE marc-werks, dispo LIKE marc...
ABAP MODIFY
ABAP MODIFY MODIFY TRANSPORTINGmodify table itab from wa Transporting f1 f2 ... 用于指出表内itab 中符合工作区wa关关字的一关关的 条f1 ,f2 ,...等字段被会wa中的关修改掉。 先看下面的段程序两, 关关一关关行的更快一些你哪个? 数据定关和提取: DATA: BEGIN OF it_marc OCCURS 0,matnr LIKE marc-matnr, werks LIKE marc-werks, dispo LIKE marc-dispo, plifz LIKE marc-plifz, END OF it_marc. select matnr werks into table it_marc from marc. 程序一: LOOP AT it_marc. it_marc-dispo = 'G00'. it_marc-plifz = 5. MODIFY it_marc. ENDLOOP. 程序二: LOOP AT it_marc. it_marc-dispo = 'G00'. it_marc-plifz = 5. MODIFY it_marc TRANSPORTING dispo plifz. ENDLOOP. 两个程序唯一的不同就是MODIFY关句的使用,程序二使用了TRANSPORTING 子句, 更新部表关关关关更新内DISPO,PLIFZ字段两个. 我的直关是程序二关关行的快一些运,关竟更新的据少了数. 但是行关果出乎意料运, 10次行关关如下运: 程序一 程序二 122,167 128,485 120,686 128,306 120,732 128,273 120,737 128,273 120,725 128,278 120,418 128,323 120,648 128,267 121,187 128,246 120,741 128,023 120,647 128,012 很明关, 程序一行要比程序二快运, 大快概6%, 具原因是什关体呢? 我关在想不明白. 在SAP关于官方文中档,关于使用TRANSPORTING子句有关关的解关:With the MODIFY variant "MODIFY itab ... TRANSPORTING f1 f2 ..." the task of updating a line of an internal table can be accelerated. The longer the table line is, the larger the speed-up is. The effect increases for tables with complex structured line types. 从来上面的解关看,部表的关越大内构, 使用TRANSPORTING子句越有效, 于是我修改IT_MARC的定关如下: DATA: it_marc LIKE TABLE OF marc WITH HEADER LINE. 重新行运, 10次行关关如下运: 程序一 程序二 341,469 311,265 340,983 311,268 341,285 311,432 341,364 311,395 341,630 311,928 341,324 311,358 341,280 311,439 341,328 311,247 341,577 311,269 341,312 311,227 关关的关程序二比程序一更有效率,大快概9% 当然,大多情下数况,我关使用的部表不像内会MARC关关大, 看有必要关求一平来个 衡点. 我做了一下关关,逐步增大部表的关内构,部表的大小关当内150字关的关候个, 程序一和程序二的行关关基本相等运. 其关,关于上面的功能,使用FIELD-SYMBOLS修改的速度最快,速度大快一倍概,下面是一示例个: FIELD-SYMBOLS: LIKE LINE OF it_marc.LOOP AT it_marc ASSIGNING .-dispo = 'G00'. -plifz = 5. ENDLOOP.
/
本文档为【ABAP MODIFY】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索