双loop嵌套循环超时问题
abap吧
全部回复
仅看楼主
level 2
请问客户需要根据bseg表中不同的事务类型、总账账目、借贷标识来汇总金额,但是外层还有取了其他表的数据,所以当我在进行汇总并且赋值给gt_out的时候使用了loop嵌套循环,结果数据量过大导致程序一直出现超时崩溃的现象,请问应该怎么解决这个问题

2020年04月16日 03点04分 1
level 1
loop + read 不行嘛
2020年04月21日 09点04分 2
不行,我现在就是用的loop +read+索引,结果还是一样
2020年04月27日 00点04分
level 14
loop + read 不行嘛 小的loop read用二分法。
2020年04月24日 06点04分 3
还是不行,
2020年04月27日 00点04分
level 1
跑后台JOB存到一张自建表里,展示的时候直接拉表里的数据吧
2020年05月20日 05点05分 4
level 2
不是因为数据量大超时,是因为你在循环里面取BSEG,及时只有几百条数据也会超时,不要在循环里面访问数据库,只是写代码的大忌,很影响效率,何况还是BSEG这种大表,最好在循环外取值,并且将BSEG这个簇表换成透明表。
2020年06月15日 07点06分 5
[大拇指]
2021年02月19日 10点02分
level 2
bseg的数据量太大,访问的时候尽量用key字段,就算不能像楼上说的存到自建表,起码要先放到一个itab里边再去loop
2020年09月21日 10点09分 6
[大拇指]
2021年02月19日 10点02分
level 12
[真棒]
2021年02月25日 05点02分 7
1