如何替换 ABAP 7.5 中的追加行?
How to replace append lines of in ABAP 7.5?
我有以下代码片段,我想以函数式风格编写:
data(lt_es) = me->prepare_process_part_ztoa1( ).
APPEND LINES OF me->prepare_process_part_protocol( ) to lt_es.
如何在新的 ABAP 7.5 中重写上面的代码?
使用 LINES OF
construct (available since ABAP 7.40 SP 8).
例如,它可能是这样的:
lt_es = VALUE #( BASE me->prepare_process_part_ztoa1( )
( LINES OF me->prepare_process_part_protocol( ) ) ).
是否比原来的better/simplier,那是另一个问题:)
不用BASE
也可以。但是必须明确指定类型(使用 #
以语法错误结束)。
REPORT ZZZ.
DATA: lt_t1 TYPE string_table,
lt_t2 TYPE string_table.
DATA(lt_t3) = VALUE string_table( ( LINES OF lt_t1 ) ( LINES OF lt_t2 ) ).
如果在循环中使用,这是否比 BASE
的使用更高效,这将很有趣。
我有以下代码片段,我想以函数式风格编写:
data(lt_es) = me->prepare_process_part_ztoa1( ).
APPEND LINES OF me->prepare_process_part_protocol( ) to lt_es.
如何在新的 ABAP 7.5 中重写上面的代码?
使用 LINES OF
construct (available since ABAP 7.40 SP 8).
例如,它可能是这样的:
lt_es = VALUE #( BASE me->prepare_process_part_ztoa1( )
( LINES OF me->prepare_process_part_protocol( ) ) ).
是否比原来的better/simplier,那是另一个问题:)
不用BASE
也可以。但是必须明确指定类型(使用 #
以语法错误结束)。
REPORT ZZZ.
DATA: lt_t1 TYPE string_table,
lt_t2 TYPE string_table.
DATA(lt_t3) = VALUE string_table( ( LINES OF lt_t1 ) ( LINES OF lt_t2 ) ).
如果在循环中使用,这是否比 BASE
的使用更高效,这将很有趣。