abap 动态生成内表的几种方法

abap 动态生成内表的几种方法

ID:12572328

大小:16.70 KB

页数:6页

时间:2018-07-17

abap 动态生成内表的几种方法_第1页
abap 动态生成内表的几种方法_第2页
abap 动态生成内表的几种方法_第3页
abap 动态生成内表的几种方法_第4页
abap 动态生成内表的几种方法_第5页
资源描述:

《abap 动态生成内表的几种方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、ABAP动态生成内表的几种方法1.使用modify(p_tabname)from.的时候,一定要确定要更新的字段是不是系统表的关键字段,如果是关键字段的话,需要先删除这条记录,delete(p_tabname)from.再进行modify,因为modify进行更新的时候如果不存在就新增,这点一定要注意。2.如果使用UPDATE进行更新,对于非主键字段的改变还是可以的,但是对于主键字段,只能用MODIFY了。直接对SAP数据做UPDATE和MODIFY是很危险的,不到万不得已,最好不要

2、做这些操作。如果万一出问题,会很严重的。这里就不用更新和删除程序作为测试程序了,直接做一个动态内表ALV显示的测试程序,道理和更新与删除差不多,希望对有这方面需求的朋友有所帮助!3.最近从同事程序中发现另一种创建动态内表的简便方法,附3中为测试代码。觉得这个方法更简单些……附1:REPORTZCL_TEST026.TYPE-POOLS:abap.PARAMETERSp_nameTYPEtabname.DATAlt_tableTYPETABLEOFdfies."字段结构表DATAls_tableTYPEdfies.D

3、ATAlr_strucTYPEREFTOcl_abap_structdescr.DATAlr_tableTYPEREFTOcl_abap_tabledescr.DATAlr_typeTYPEREFTOcl_abap_typedescr.DATAlr_data TYPEREFTOcl_abap_datadescr.DATAlt_compTYPE abap_component_tab.DATAls_compLIKELINEOF lt_comp.DATAdyn_waTYPEREFTOdata.DATAdyn_tableT

4、YPEREFTOdata.DATAl_stringTYPEstring.FIELD-SYMBOLS:TYPESTANDARDTABLE,                           TYPEANY.*1.获取表中的字段结构CALLFUNCTION'DDIF_NAMETAB_GET' EXPORTING   tabname  =p_name TABLES   dfies_tab=lt_table EXCEPTIONS   not_found=1   OTHERS   =2

5、.IFsy-subrc<>0. MESSAGEIDsy-msgidTYPEsy-msgtyNUMBERsy-msgno         WITHsy-msgv1sy-msgv2sy-msgv3sy-msgv4.ENDIF.LOOPATlt_tableINTOls_table. CONCATENATEls_table-tabname'-'ls_table-fieldnameINTOl_string. ls_comp-name=ls_table-fieldname.*读取字段类型 CALLMETHODcl_abap_d

6、atadescr=>describe_by_name   EXPORTING     p_name        =l_string   RECEIVING     p_descr_ref   =lr_type   EXCEPTIONS     type_not_found=1     OTHERS        =2. IFsy-subrc<>0.   MESSAGEIDsy-msgidTYPEsy-msgtyNUMBERsy-msgno              WITHsy-msgv1sy-msgv2sy-m

7、sgv3sy-msgv4. ENDIF. ls_comp-type?=lr_type. APPENDls_compTOlt_comp. CLEARls_comp.ENDLOOP.*根据字段目录创建动态结构类型CALLMETHODcl_abap_structdescr=>create EXPORTING   p_components=lt_comp RECEIVING   p_result    =lr_struc.*根据动态结构创建动态内表类型CALLMETHODcl_abap_tabledescr=>create

8、 EXPORTING   p_line_type=lr_struc RECEIVING   p_result   =lr_table.*参照动态结构类型和动态内表类型创建内表与工作区CREATEDATAdyn_wa   TYPEHANDLElr_struc.CREATEDATAdyn_tableTYPEHANDLElr_table.*指定内表与工作区到字段符

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。