调用类cl_abap_structdescr中的方法describe_by_data()和get_ddic_field_list()能得到表或结构的列名字(colomn name).
![[代码]如何取得表/结构的列名字(cl_abap_structdescr) [代码]如何取得表/结构的列名字(cl_abap_structdescr)](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNEb3ZMM2QzZHk1aVlXbGtkWE5oY0M1amIyMHZkM0F0WTI5dWRHVnVkQzkxY0d4dllXUnpMekl3TVRjdE1ETXRNREZmTVRBdE1UQXRORFF1Y0c1bg==)
代码:
REPORT ztest_convers_row.
DATA:
gwa_data TYPE t001w,
desc_struc TYPE REF TO cl_abap_structdescr,
git_fields TYPE ddfields.
FIELD-SYMBOLS:
<gfs_component> TYPE dfies.
desc_struc ?= cl_abap_structdescr=>describe_by_data( gwa_data ).
git_fields = desc_struc->get_ddic_field_list( ).
LOOP AT git_fields ASSIGNING <gfs_component>.
WRITE:/ <gfs_component>-fieldname.
ENDLOOP.
运行结果:
![[代码]如何取得表/结构的列名字(cl_abap_structdescr) [代码]如何取得表/结构的列名字(cl_abap_structdescr)](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNEb3ZMM2QzZHk1aVlXbGtkWE5oY0M1amIyMHZkM0F0WTI5dWRHVnVkQzkxY0d4dllXUnpMekl3TVRjdE1ETXRNREZmTVRBdE1EY3RORGd1Y0c1bg==)
表T001w:
![[代码]如何取得表/结构的列名字(cl_abap_structdescr) [代码]如何取得表/结构的列名字(cl_abap_structdescr)](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNEb3ZMM2QzZHk1aVlXbGtkWE5oY0M1amIyMHZkM0F0WTI5dWRHVnVkQzkxY0d4dllXUnpMekl3TVRjdE1ETXRNREZmTVRBdE1URXRNekl1Y0c1bg==)
上面的代码也实现了表/结构的行列转换功能。
以上。
相关文章:
-
2021-11-06
-
2021-05-06
-
2021-10-10
-
2021-06-12
-
2021-09-18
-
2021-09-06
-
2022-12-23