在这里也推荐一条链接,很适合初学者:https://blog.csdn.net/Kang_xiong/article/details/64922576

这是一个特别基础的示例,适合没有任何ABAP基础的同学查看,很简单

示例展示:

1.SE38进入ABAP编辑器:

2. 选择本地对象后保存,此包内的程序不可传到生产系统中。如需传入生产系统,请选择可传输的包:

3. ALV创建步骤一

定义ALV的列属性表,和行属性工作区

DATA: GT_FCAT TYPE TABLE OF LVC_S_FCAT,列属性表

GS_LAYO TYPE LVC_S_LAYO.   行属性工作区

4. ALV创建步骤二:

为行属性工作区GS_LAYO 赋值。

GS_LAYO-CWIDTH_OPT = ‘X’.

5. ALV创建步骤三:

为列属性表GT_FCAT 赋值。

gs_fcat-fieldname = 'WERKS'.
    gs_fcat-scrtext_l = '工厂'.
    APPEND gs_fcat TO gt_fcat.
    CLEAR gs_fcat.

gs_fcat-fieldname = 'MATNR'.
    gs_fcat-scrtext_l = '物料编码'.
    APPEND gs_fcat TO gt_fcat.
    CLEAR gs_fcat.

6. ALV创建步骤四:

调用ALV显示函数

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING

I_CALLBACK_PROGRAM                = sy-repid
      IS_LAYOUT_LVC                     = gs_layo "行属性
      IT_FIELDCAT_LVC                   = gt_fcat"列属性
     TABLES
       T_OUTTAB                          = gt_data
    EXCEPTIONS
      PROGRAM_ERROR                     = 1
      OTHERS                            = 2

7.  小示例:

REPORT ZTEST1.

*======================================================================*
*                   Tables used in the program
*======================================================================*
TABLES: t001w,marc.

*======================================================================*
*                Type declarations in the program
*======================================================================*

TYPES: BEGIN OF ty_wmatnr,
        werks TYPE t001w-werks,
        matnr TYPE marc-matnr,
       END OF ty_wmatnr.

*======================================================================*
*                Internal Tables used in the program
*======================================================================*

DATA : gt_fcat TYPE TABLE OF lvc_s_fcat, "列属性表
       gs_fcat TYPE lvc_s_fcat,"列属性工作区
       gs_layo TYPE lvc_s_layo. "行属性工作区

DATA: t_data TYPE TABLE OF ty_wmatnr,
      s_data TYPE ty_wmatnr.

DATA: gt_data TYPE TABLE OF ty_wmatnr,
      gs_data TYPE ty_wmatnr.

*======================================================================*
*                Data declarations in the program
*======================================================================*

*======================================================================*
*                       CONSTANTS
*======================================================================*

*======================================================================*
*                      Input Selection Screen
*======================================================================*

SELECTION-SCREEN: BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
  SELECT-OPTIONS: s_werks FOR t001w-werks ,
                  s_matnr FOR marc-matnr.
SELECTION-SCREEN:END OF BLOCK a1.

*======================================================================*
*                          Initialization
*======================================================================*
INITIALIZATION. "初始化值

*======================================================================*
*                        At Selection Screen
*======================================================================*
AT SELECTION-SCREEN.  "选择屏幕输出后点击执行时的检查

*======================================================================*
*                       AT SELECTION-SCREEN OUTPUT
*======================================================================*
AT SELECTION-SCREEN OUTPUT . "可设定屏幕必输项

*======================================================================*
*                       AT SELECTION-SCREEN ON VALUE-REQUEST
*======================================================================*

*======================================================================*
*                        Start of Selection
*======================================================================*
START-OF-SELECTION.

SELECT werks matnr INTO TABLE t_data UP TO 2 ROWS FROM marc WHERE werks IN s_werks
                                                              AND matnr IN s_matnr.

IF sy-subrc NE 0.
    MESSAGE s999(zcr) WITH '没有找到数据!'.
    STOP.

ELSE.
      PERFORM frm_get_data.
      ENDIF.

*======================================================================*
*                         End of Selection
*======================================================================*
END-OF-SELECTION.

FORM frm_get_data.

gs_layo-cwidth_opt = 'X'.

gs_fcat-fieldname = 'WERKS'.
  gs_fcat-scrtext_l = '工厂'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.

gs_fcat-fieldname = 'MATNR'.
  gs_fcat-scrtext_l = '物料编码'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.

LOOP AT t_data INTO s_data.
  gs_data-werks = s_data-werks.
  gs_data-matnr = s_data-matnr.
  APPEND gs_data TO gt_data.
  CLEAR gs_data.
  ENDLOOP.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING

I_CALLBACK_PROGRAM                = sy-repid
      IS_LAYOUT_LVC                     = gs_layo "行属性
      IT_FIELDCAT_LVC                   = gt_fcat"列属性
     TABLES
       T_OUTTAB                          = gt_data
    EXCEPTIONS
      PROGRAM_ERROR                     = 1
      OTHERS                            = 2.

ENDFORM.

8. 点击转到-->文本元素可设定屏幕字段名称:

简单的ALV示例的更多相关文章

  1. unity Dotween插件的简单介绍及示例代码

    unity里面做插值动画的插件有许多,比较常见的有itween.hotween.dotween.根据大家的反馈和实际体验来说,dotween插件在灵活性.稳定性.易用性上都十分突出.这里简单介绍下它的 ...

  2. [MySQL5.6] 一个简单的optimizer_trace示例

    [MySQL5.6] 一个简单的optimizer_trace示例   前面已经介绍了如何使用和配置MySQL5.6中optimizer_trace(点击博客),本篇我们以一个相对简单的例子来跟踪op ...

  3. Skinned Mesh原理解析和一个最简单的实现示例

    Skinned Mesh 原理解析和一个最简单的实现示例   作者:n5 Email: happyfirecn##yahoo.com.cn Blog: http://blog.csdn.net/n5 ...

  4. MongoDB下Map-Reduce使用简单翻译及示例

    目录 Map-Reduce JavaScript 函数 Map-Reduce 行为 一个简单的测试 原文地址https://docs.mongodb.com/manual/core/map-reduc ...

  5. sqlalchemy(二)简单的连接示例

    # -*- coding: utf-8 -*- import sqlalchemy from sqlalchemy import create_engine from sqlalchemy.ext.d ...

  6. Python正则表达式的简单应用和示例演示

    前一阵子小编给大家连续分享了十篇关于Python正则表达式基础的文章,感兴趣的小伙伴可以点击链接进去查看.今天小编给大家分享的是Python正则表达式的简单应用和示例演示,将前面学习的Python正则 ...

  7. 一个简单的CSS示例

    1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 & ...

  8. 一个简单的webdynpro的ALV示例

    开发alv的时候需要1.在web dynpro组件下面 的已使用的组件中添加ALV组件 SALV_WD_TABLE 2.在组件控制器的属性下面创建ALV组件SALV_WD_TABLE 3.在视图界面的 ...

  9. IDDD 实现领域驱动设计-一个简单的 CQRS 示例

    上一篇:<IDDD 实现领域驱动设计-CQRS(命令查询职责分离)和 EDA(事件驱动架构)> 学习架构知识,需要有一些功底和经验,要不然你会和我一样吃力,CQRS.EDA.ES.Saga ...

随机推荐

  1. 用Spark完成复杂TopN计算的两种逻辑

    如果有商品品类的数据pairRDD(categoryId,clickCount_orderCount_payCount),用Spark完成Top5,你会怎么做? 这里假设使用Java语言进行编写,那么 ...

  2. Python自学:第三章 确定列表长度

    >>> cars = ["bmw", "audi", "toyota", "subaru"] > ...

  3. 现代 PHP 新特性 —— 闭包

    一.概述 闭包是指在创建时封装周围状态的函数,即使闭包所在的环境的不存在了,闭包中封装的状态依然存在.闭包对象实现了__invoke()魔术方法,只要变量名后有(),PHP就会查找并调用__invok ...

  4. 微信小程序分包跳转主包页面

    由于公司项目比较多,我们事业部的微信小程序就在一个分包里.那分包页面要回到主包的首页,该怎么跳转呢,有以下两种方法 wx.switchTab(Object object) 跳转到 tabBar 页面, ...

  5. hadoop hdfs 数据迁移到其他集群

    # hadoop fs -cat /srclist Warning: $HADOOP_HOME is deprecated. hdfs://sht-sgmhadoopcm-01:9011/jdk-6u ...

  6. 博客编辑器Open Live Writer的安装以及配置

    下载安装包 访问官网  http://openlivewriter.org/ 或者微软商店  https://www.microsoft.com/en-us/p/open-live-writer/9n ...

  7. centos 7安装python 3

    linux-Centos7安装python3并与python2共存   1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的 ...

  8. Python之AJAX

    AJAX <script> $("#i4").on("click", function () { var i1 = $("#i1" ...

  9. 像调试java一样来调试Redis lua

    高并发的系统中,redis的使用是非常频繁的,而lua脚本则更是锦上添花.因为lua脚本本身执行的时候是一个事务性的操作,不会掺杂其他外部的命令,所以很多关键的系统节点都会用redis+lua来实现一 ...

  10. unity室内外VR漫游

    这是一个用Unity 做的VR漫游小场景.