CLEAR J.
LOOP AT IT_STRUCTURE INTO WA_STRUCTURE. J = J + 1.
ASSIGN COMPONENT WA_STRUCTURE-FIELDNAME OF STRUCTURE
* \用指针
APPEND
ENDFORM. \*&---------------------------------------------------------------------* *& Form OUTPUT_DYNTABLE_DATA
*----------------------------------------------------------------------* FORM OUTPUT_DYNTABLE_DATA.
LOOP AT IT_STRUCTURE INTO WA_STRUCTURE. WRITE: WA_STRUCTURE-FIELDNAME(5). ENDLOOP.
LOOP AT
LOOP AT IT_STRUCTURE INTO WA_STRUCTURE.
ASSIGN COMPONENT WA_STRUCTURE-FIELDNAME OF STRUCTURE
*用指针
ENDFORM. \
1.使用modify (p_tabname) from
2.如果使用UPDATE进行更新,对于非主键字段的改变还是可以的,但是对于主键字段,只能用MODIFY了。直接对SAP数据做UPDATE
和MODIFY是很危险的,不到万不得已,最好不要做这些操作。如果万一出问题,会很严重的。这里就不用更新和删除程序作为测试程序了,直接做一个动态内表ALV显示的测试程序,道理和更新与删除差不多,希望对有这方面需求的朋友有所帮助!
3.最近从同事程序中发现另一种创建动态内表的简便方法,附3中为测试代码。觉得这个方法更简单些……
附1:
REPORT ZCL_TEST026.
TYPE-POOLS:abap.
PARAMETERS p_name TYPE tabname.
DATA lt_table TYPE TABLE OF dfies. \字段结构表 DATA ls_table TYPE dfies.
DATA lr_struc TYPE REF TO cl_abap_structdescr. DATA lr_table TYPE REF TO cl_abap_tabledescr. DATA lr_type TYPE REF TO cl_abap_typedescr. DATA lr_data TYPE REF TO cl_abap_datadescr.
DATA lt_comp TYPE abap_component_tab. DATA ls_comp LIKE LINE OF lt_comp. DATA dyn_wa TYPE REF TO data. DATA dyn_table TYPE REF TO data. DATA l_string TYPE string.
FIELD-SYMBOLS:
CALL FUNCTION 'DDIF_NAMETAB_GET' EXPORTING
tabname = p_name TABLES
dfies_tab = lt_table EXCEPTIONS
not_found = 1 OTHERS = 2. IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF.
LOOP AT lt_table INTO ls_table.
CONCATENATE ls_table-tabname '-' ls_table-fieldname INTO l_string. ls_comp-name = ls_table-fieldname. *读取字段类型
CALL METHOD cl_abap_datadescr=>describe_by_name EXPORTING
p_name = l_string RECEIVING
p_descr_ref = lr_type EXCEPTIONS
type_not_found = 1 OTHERS = 2. IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF.
ls_comp-type ?= lr_type. APPEND ls_comp TO lt_comp. CLEAR ls_comp. ENDLOOP.
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新工程科技ABAP动态内表使用的例子 (7)全文阅读和word下载服务。
相关推荐: