欢迎来到天天文库
浏览记录
ID:53879031
大小:19.93 KB
页数:3页
时间:2020-04-10
《ABAP动态内表的使用.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、动态内表的创建和使用主要有以下几点:1.动态内表的创建,首先要定义动态结构,然后再根据定义的动态结构利用系统一个标准的method:”cl_alv_table_create=>create_dynamic_table“生成动态内表。2.动态内表的赋值,遍历动态结构,获取指定的字段,然后给指定的字段赋值。3.动态内表的读取显示,与赋值相似,遍历动态结构,获取指定的字段,然后读取对应字段的值。下面是具体的代码实例:①定义所需的系统变量。FIELD-SYMBOLS:TYPESTANDARDTABL
2、E,"动态内表TYPEANY,"动态内表的工作区TYPEANY."指向动态内表工作区某一字段的指针DATA:dy_tableTYPEREFTOdata,dy_lineTYPEREFTOdata,it_structureTYPElvc_t_fcat,”存储动态内表列的内表,其中的每一行代表动态内表的一列。wa_structureTYPElvc_s_fcat.“lvc_t_fact的工作区。②通过lvc_t_fact构建动态内表的列:FORMsetstructrueUSINGva
3、lue(p_fname)TYPEchar6value(p_col)TYPEint4value(p_tab)TYPEchar10value(p_fld)TYPEchar6.wa_structure-fieldname=p_fname."列名wa_structure-col_pos=p_col.“列的顺序wa_structure-ref_table=p_tab.”参照表wa_structure-ref_field=p_fld.“参照字段APPENDwa_structureTOit_structure.ENDFORM.
4、"setstructrue③通过lvc_t_fact构建创建动态内表给dy_table:FORMcreate_dynamic_table.CALLMETHODcl_alv_table_create=>create_dynamic_table"类静态方法EXPORTINGit_fieldcatalog=it_structureIMPORTINGep_table=dy_table.ASSIGNdy_table->*TO.ENDFORM."CREATE_DYNAMIC_TABLE④给动态内表赋值:
5、FORMsetdata.DATA:wa_new_lineTYPEREFTOdata.DATAlv_tolTYPEwertv12.CREATEDATAwa_new_lineLIKELINEOF.ASSIGNwa_new_line->*TO.”让代表指向动态内表的工作区LOOPATgt_coep2.CLEAR.READTABLEit_structureINTOwa_structureINDEX4.“获取it_structure的第四行,即动态内表的
6、第四列ASSIGNCOMPONENTwa_structure-fieldnameOFSTRUCTURETO.”当指向工作区中的第四个字段PERFORMremovezeroUSINGgt_coep2-kstar.=gt_coep2-kstar.“通过给field-symbol赋值来达到给工作区中第四个字段赋值的作用。PERFORMaddzeroUSINGgt_coep2-kstar.READTABLEit_structureINTOw
7、a_structureINDEX5.ASSIGNCOMPONENTwa_structure-fieldnameOFSTRUCTURETO.=gt_coep2-txt50.READTABLEit_structureINTOwa_structureINDEX6.ASSIGNCOMPONENTwa_structure-fieldnameOFSTRUCTURETO.PERFORMgetksttolUSINGgt_coep2-
8、kstarlv_tol.=lv_tol.LOOPATgt_coep1WHEREkstar=gt_coep2-kstar.ASSIGNCOMPONENTgt_coep1-objnr6OFSTRUCTURETO.=gt_coep1-wkgbtr.ENDLOOP.APPENDTO<
此文档下载收益归作者所有