27|27 行代码开发一个最简单的 SAP ALV 报表

零基础 ABAP 学习教程系列文章的目录

  • ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍
  • ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Client-specific 的区别
  • ABAP 标准培训教程 BC400 学习笔记之三:ABAP 编程语言的特性和基本构成要素
  • ABAP 标准培训教程 BC400 学习笔记之四:ABAP 编程语言的数据类型
  • ABAP 标准培训教程 BC400 学习笔记之五:ABAP 编程语言的变量,常量和字面量,以及文本符号
ABAP 基础知识
  • 通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧
  • ABAP function module 的使用
  • ABAP subroutine 的定义和使用
  • ABAP 中的变量和常量
  • ABAP 编程语言中的系统字段(System Fields)
  • 什么是 ABAP Field Symbol
  • ABAP 引用类型介绍
  • 最浅显易懂的 SAPGUI 里 ABAP 调试器的使用方法介绍
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上)
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)
ALV 开发专题
  • 27 行代码开发一个最简单的 SAP ALV 报表
  • 48 行代码给 ABAP ALV 报表的数据行增添颜色效果
  • 77 行代码实现ABAP ALV 中的双击事件处理
所谓 ALV,全称是 ABAP List View,是 SAP GUI 环境下一种深受用户喜爱的数据呈现方式。网络上有很多关于如何编写 ALV 的例子,但大多都是大段大段的代码,缺乏必要的文字描述,对于 ABAP 初学者来说不友好。
本文从一个最简单的 ALV 报表开发开始讲解。
既然 ALV 是用来呈现数据的,必然要有对应的数据源,也就是 ABAP 数据库表里的内容。网络上大部分的 ALV 教程,使用的都是 SFLIGHT 即 SAP ABAP 培训教程里使用的数据模型。我仍然觉得这套数据模型对于 ABAP 初学者来说复杂度还是过高,因此选用了本教程之前两篇文章里提到的数据库表作为 ALV 的数据源:
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上)
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)
27|27 行代码开发一个最简单的 SAP ALV 报表
文章图片

非常简单的数据库表,就两个字段和两条记录。
下面是使用 ALV 展示上图数据库表两条记录的具体步骤。
我会使用 REUSE_ALV_GRID_DISPLAY 这个函数来进行 ALV 的展示,因此在学习本文之前,请大家先温习 ABAP Function Module 的使用:
  • ABAP function module 的使用
我们先从一个最简单的只有 27 行代码的 ALV 程序学起。
【27|27 行代码开发一个最简单的 SAP ALV 报表】具体讲解参考这篇文章。

    推荐阅读