AT END OF 执行过后的工作区(结构) 所以我们需要有两个工作区(结构)来实现我们的目标,一个用来做分组位置判断,一个用来输出数据。 输出结果: 如果要输出每组的最小值,可以在排序时用降序(DESCENDING 关键字),或者将LOOP中的 AT END OF 关键字替换成 AT NEW 关键字即可实现。 输出结果:...
其实在loop ... endloop 中间,有个AT <LEVEL>,<…>,ENDAT循环. 其中的<LEVEL>包括: FRIST, LAST, NEW , END OF.这些可以用来进行内表中按某个字段进行分组统计. FIRST 内 表的第一行 LAST 内 表的最后一 行 NEW <f> 行组 的开头,与 字段 <f> 和 <f> 剩余字段中 的内容相同 END Of <f> ...
LOOP AT lt_data ASSIGNING <ls_data>. AT NEW a. WRITE: 'NEW', <ls_data>-a, <ls_data>-b, /. ENDAT. AT END OF a. WRITE: 'END', <ls_data>-a, <ls_data>-b, /. ENDAT. ENDLOOP. LOOP AT lt_data INTO <ls_data>. AT NEW a. WRITE: 'NEW', <ls_data>-a, <ls_data>-...
1、水平有限,之前没发现LOOP AT itab ASSIGN <fs>还有这个好处,规避了AT NEW事件里,字段变*的情况 2、LOOP INTO是把内表的内容COPY到工作区中,而LOOP ASSIGN是用一个指针指向当前的工作区,所以内容不会变成* 3、注意不要写成LOOP INTO <fs>哦 (4/4)最后 嗯嗯,末了了,提个不太相干的小问题,如果: ...
在SAP HR的开发中,我们通常使用LDB逻辑数据库来开发report.在 GET pernr/perasa取得infotype中的数据之后,有两种方式可以循环访问Pnnnn中的数据。一种就是传统的LOOP AT ENDLOOP,另外一种就是使用PROVIDE ENDPROVIDE.工具/原料 SAP HR LDB 逻辑数据库 方法/步骤 1 仅仅time constraints是1和2的infotype才可以用...
LOOP AT l_it_2 . LOOP AT l_it_1 WHERE id = l_it_2-id. EXIT. ENDLOOP. ENDLOOP. GET RUN TIME FIELD t2. GET RUN TIME FIELD t3. l_dex = 1. LOOP AT l_it_2 . LOOP AT l_it_1 FROM l_dex. IF l_it_1-id = l_it_2-id. EXIT. ELSE. l_dex = l_dex + 1. CONTINU...
INDEX1TRANSPORTINGPRICE.ULINE.WRITE:'内表修改后数据(指定修改PRICE字段,故FLDATE字段没有修改)'.LOOPATGT_SFLIGHTINTOGS_SFLIGHT.WRITE:/GS_SFLIGHT-CARRID,GS_SFLIGHT-CONNID,GS_SFLIGHT-FLDATE,GS_SFLIGHT-PRICE.ENDLOOP. - 效果演示 使用索引修改内表数据...
本文给出几种双内表LOOP循环的方式并比较一下优劣. 二 几种方式 标准表 排序表 嵌套哈希内表-GROUP BY 语句构造 嵌套哈希内表-AT NEW 语句构造 两个排序表通过INDEX 优化 二分查找优化 三 先说结论 通过测试: 双排序表通过 index 优化的方式性能最优.(建议有经验的开发采用这种方式).但是该方式对数据有要求...
LOOP AT result_tab INTO wa. WRITE / str+wa-offset(wa-length). ENDLOOP. *找出STRING里面的IP地址 str = 'IP1:172.16.32.12 IP2:192.168.1.1 '. FIND ALL OCCURRENCES OF REGEX 'd+.d+.d+.d+' IN str RESULTS result_tab. WRITE / '---'. LOOP...
结论:COLLECT实际运用中loop的内表不需要排序,直接loop累加计算。 2、问题二: 以collect代码稍加改变: LOOP AT t_data. IF t_data-v1 = 2 OR t_data-v1 = 4 OR t_data-v1 = 5. COLLECT t_data INTO t_test. "按关键列统计值 ELSE. DELETE t_data. ENDIF. ENDLOOP . 复制代码 测试结果: ...