ABAP中,想用内表A某一字段abc的值,替换另一内表B字段xyz原有的值,请问该如何实现。
两个内表行数相同,但结构不同。此外,覆盖过程不得改变B表中其他字段的值。(可能用矩阵表述更简洁:两矩阵A,B行数相同,列数不同,想用A的第n列数据,替换B的第m列数据)用...
两个内表行数相同,但结构不同。此外,覆盖过程不得改变B表中其他字段的值。(可能用矩阵表述更简洁:两矩阵A,B行数相同,列数不同,想用A的第n列数据,替换B的第m列数据)
用过MOVE,但是MOVE必须要求两个内表结构一致。
请教高手,该如何解决。
另外,还想请教一下ABAP中如何实现加减乘除的矩阵运算。 展开
用过MOVE,但是MOVE必须要求两个内表结构一致。
请教高手,该如何解决。
另外,还想请教一下ABAP中如何实现加减乘除的矩阵运算。 展开
1个回答
展开全部
data: wa_A like line of itab_A,
wa_B like line of itab_B.
loop at itab_A into wa_A.
read table itab_B into wa_B index sy-tabix.
if sy-subrc eq 0.
wa_B-xyz = wa_A-abc.
modify itab_B from wa_B index sy-tabix transporting xyz.
endif.
endloop.
ABAP中对矩阵运算就是循环,然后按照字段名字来加减乘除运算,或者水平较高可以考虑用循环或者按照index直接读取表来定位行,用field-symbol的index来定位列的方法进行加减乘除运算。具体就是熟练使用相应的语法了
wa_B like line of itab_B.
loop at itab_A into wa_A.
read table itab_B into wa_B index sy-tabix.
if sy-subrc eq 0.
wa_B-xyz = wa_A-abc.
modify itab_B from wa_B index sy-tabix transporting xyz.
endif.
endloop.
ABAP中对矩阵运算就是循环,然后按照字段名字来加减乘除运算,或者水平较高可以考虑用循环或者按照index直接读取表来定位行,用field-symbol的index来定位列的方法进行加减乘除运算。具体就是熟练使用相应的语法了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询