在 abap 中更改类型

Changing type in abap

我有一个类型为 string 的内部 table。

it_fields TYPE STANDARD TABLE OF string

这里面有一些我需要解析的值,然后将其存储在it_final

it_final TYPE STANDARD TABLE OF dd03l-fieldname

dd03l 有一个数据类型为 char 30.

的列名字段名

是否可以在 ABAP 中进行解析?

LOOP at it_fields into data(source).
   if strlen( source ) <= 30.
      Append initial line to it_final ASSIGNING FIELD-SYMBOL(<target>).
      <target> = source.
   endif.
ENDLOOP.

这就是你需要的吗?我没有测试它,我只是想,这可能是您的要求...

DATA: ls_final like line of it_final.
LOOP at it_fields into data(lv_field).
   ls_final = lv_field.
   APPEND ls_final TO it_final.
   CLEAR:ls_final .
ENDLOOP.

我猜这个也有用。

在Abap中,字符串很难用。有时有 255 个字符,有时更多。

对我来说,最好的方法是:

在 it_fields into/assigning wa/.

处循环

压缩wa/.

wa_final = wa/.

将 wa_final 附加到 it_final。

清除:wa_final.

循环结束。