1.参数定义

"ALV
type-pools:slis,rsds,vrm.
data:gt_fieldcat type lvc_t_fcat with header line,
gt_events type slis_t_event with header line,
gs_layout type lvc_s_layo,
g_repid like sy-repid.
data:wa_sort type slis_sortinfo_alv,
it_sort type lvc_t_sort,
lw_alv_title type lvc_title.
data:l_grid type ref to cl_gui_alv_grid,
ls_stable type lvc_s_stbl. data:struct_type type ref to cl_abap_structdescr,
itab_type type ref to cl_abap_tabledescr,
elem_type type ref to cl_abap_elemdescr,
comp_type type cl_abap_structdescr=>component_table,
comp_field type cl_abap_structdescr=>component,
comp_line like line of comp_type,
dref type ref to data,
dline type ref to data. field-symbols:<ztab> type standard table,
<itab> type any,
<fild> type any,
<frat> type any. "dynamic alv parameters
data:ztab type standard table of tab with header line,
mtab type standard table of tab with header line.

2.结构生成

form structure_data.

  struct_type ?= cl_abap_typedescr=>describe_by_name( 'TAB' ).
comp_type = struct_type->get_components( ). perform zdtb_ms using:
'DATAB' '日期从',
'DATBI' '日期至'. "****** 增加字段 vkorg+fkdat+ekgrp+kunnr+vkbur+ktgrm+matnr+matkl+maabc+kosch+labor+groes perform struc_xz tables s_vkorg using 'VKORG' '销售组织' 'VBRK-VKORG' 'VTEXT' 'TVKOT-VTEXT'.
"perform struc_xz tables s_fkdat using 'FKDAT' '开票日期' 'VBRK-FKDAT' '' ''.
perform struc_xz tables s_fkart using 'FKART' '订单类型' 'VBRK-FKART' 'FKTXT' 'TVFKT-VTEXT'.
perform struc_xz tables s_ekgrp using 'EKGRP' '品牌' 'MARC-EKGRP' 'EKNAM' 'T024-EKNAM'.
perform struc_xz tables s_kunnr using 'KUNAG' '客户编码' 'VBRK-KUNAG' 'NAME1' 'KNA1-NAME1'.
perform struc_xz tables s_vkbur using 'VKBUR' '产品线' 'KNVV-VKBUR' 'BEZEI' 'TVKBT-BEZEI'.
perform struc_xz tables s_ktgrm using 'KTGRM' '科目设置组' 'VBRP-KTGRM' 'KMEXT' 'TVKMT-VTEXT'.
perform struc_xz tables s_matnr using 'MATNR' '物料号' 'VBRP-MATNR' 'MAKTX' 'MAKT-MAKTX'. perform struc_xz tables s_matkl using 'MATKL' '物料组' 'MARA-MATKL' 'WGBEZ' 'T023T-WGBEZ'.
perform struc_xz tables s_maabc using 'MAABC' '等级' 'MARC-MAABC' 'TMABC' 'TMABCT-TMABC'.
perform struc_xz tables s_kosch using 'KOSCH' '产品分配' 'MARA-KOSCH' 'KOTXT' 'T190ST-VTEXT'.
perform struc_xz tables s_labor using 'LABOR' '产品档次' 'MARA-LABOR' 'LBTXT' 'T024X-LBTXT'.
perform struc_xz tables s_groes using 'GROES' '规格' 'MARA-GROES' '' ''. "***************************** perform zdtb_ms using:
'FKIMG' '数量',
'NETWR' '金额',
'VOLUM' '面积',
'NTGEW' '重量',
'VOLTJ' '体积',
'SLRAT' '数量占比(%)',
'JERAT' '金额占比(%)',
'WAVWR' '成本',
'MLNET' '毛利',
'MLRAT' '毛利率(%)'. struct_type = cl_abap_structdescr=>create( comp_type ).
itab_type = cl_abap_tabledescr=>create( struct_type ). create data dref type handle itab_type.
assign dref->* to <ztab>. endform. form field_app using zd zelem.
clear:comp_line,elem_type.
comp_line-name = zd.
elem_type ?= cl_abap_elemdescr=>describe_by_name( zelem ).
comp_line-type = elem_type.
append comp_line to comp_type.
endform. form zdtb_ms using zd zdms.
zdtb-zd = zd.
zdtb-zdms = zdms.
append zdtb.
clear:zdtb.
endform.

3.赋值

 create data dline like line of <ztab>.
assign dline->* to <itab>. loop at mtab.
move-corresponding mtab to <itab>.
append <itab> to <ztab>.
clear:ztab,<itab>.
endloop. clear:mtab. refresh:mtab. loop at <ztab> assigning <itab>.
clear:mtab.
move-corresponding <itab> to mtab.
move-corresponding mtab to <itab>.
clear:mtab.
endloop.

ABAP-动态ALV的更多相关文章

  1. ABAP动态生成经典应用之Dynamic SQL Excute 程序

    [转自http://blog.csdn.net/mysingle/article/details/678598]开发说明:在SAP的系统维护过程中,有时我们需要修改一些Table中的数据,可是很多Ta ...

  2. 【ABAP系列】SAP ABAP 动态指针

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 动态指针   ...

  3. 【ABAP系列】SAP ABAP中ALV使用HTML的例子

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP中ALV使用HT ...

  4. 【ABAP系列】SAP ABAP 控制ALV单元格编辑后获取新的数值

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 控制ALV单元 ...

  5. 【ABAP系列】SAP ABAP 关于ALV布局保存选项的讲解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP ABAP 关于ALV布局保存 ...

  6. 【ABAP系列】SAP ABAP模块-ABAP动态指针写法的精髓部分

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP模块-ABAP动 ...

  7. ABAP 动态内表 动态ALV

    DATA: DY_TABLE TYPE REF TO DATA, DY_WA TYPE REF TO DATA. FIELD-SYMBOLS: <DYN_TABLE> TYPE TABLE ...

  8. ABAP 动态生成内表的几种方法

    最近要写个程序,既有更新的,也有删除的,需要涉及到很多系统表,如果一个表一个表进行更新或者删除太慢了,于是就想通过创建动态内表来实现这些功能,在网上找了一些资料,经过多次尝试,终于测试成功了.网上讲述 ...

  9. ABAP 动态内表添加单元格颜色字段

    *动态内表alv显示时要求某些单元格显示颜色 *wa_fldcat-datatype不能添加LVC_T_SCOL类型,在创建好内表之后,再添加颜色列. DATA: wa_fldcat TYPE lvc ...

  10. ABAP动态自建表维护程序Dynamin Process

    以前经常会遇到批量上传或修改数据到自建表的需求,所以在想是否可以做一个动态的程序,所有的自建表都可以用这个动态程序来维护. 于是就打算试着写动态的程序. 程序的要求:动态显示自建表ALV 动态下载Ex ...

随机推荐

  1. Kettle入门教程

    最近做的项目用到了ETL工具Kettle,这个工具相当好用,可以将各种类型数据作为数据流,经过处理后再生成各种类型的数据.正如其名“水壶”,将各个地方的水倒进水壶里,再用水壶倒入不同的容器.不过一来初 ...

  2. mysql常用的聚合函数

    GROUP BY(聚合)函数本章论述了用于一组数值操作的 group (集合)函数.除非另作说明, group 函数会忽略 NULL 值. 假如你在一个不包含 ROUP BY子句的语句中使用一个 gr ...

  3. 移植RTL8188CUS USB-WIFI(移植失败)

    1.主makefile CONFIG_POWER_SAVING = n CONFIG_PLATFORM_I386_PC = n CONFIG_PLATFORM_HI3518E = y ##swann ...

  4. <script>标签里的defer和async属性 区别(待补充)

    defer与async的区别(表格显示): table th:first-of-type { width: 150px; } table th:nth-of-type(2) { } 区别 defer ...

  5. Angular 4 表单

    一. 模板表单 1. 如下图 2. code 3. 效果图 二.响应式表单 1. 增加ReactiveFormsModule 2.响应式表单用到的类和指令 3. 控制器代码 4. html <! ...

  6. Angularjs 事件指令

    1.  点击事件 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" ...

  7. 大快DKH大数据智能分析平台监控参数说明

    2018年国内大数据公司50强榜单排名已经公布了出来,大快以黑马之姿闯入50强,并摘得多项桂冠.Hanlp自然语言处理技术也荣膺了“2018中国数据星技术”奖.对这份榜单感兴趣的可以找一下看看.本篇承 ...

  8. spring mvc 工作原理

    SpringMVC的工作原理图: SpringMVC流程 1.  用户发送请求至前端控制器DispatcherServlet. 2.  DispatcherServlet收到请求调用HandlerMa ...

  9. RK3399 Android7.1 try 'jack-diagnose' or see Jack server log

    CPU:RK3399 系统:Android 7.1 Android 7.1系统使用 jack-server 作为 Java 代码编译器 jack-server 由两个配置文件来决定用户使用的端口 /h ...

  10. android 获取当前 activity

    ActivityManager am = (ActivityManager) this .getSystemService(ACTIVITY_SERVICE); List<RunningTask ...