简单的ALV示例
在这里也推荐一条链接,很适合初学者: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示例的更多相关文章
- unity Dotween插件的简单介绍及示例代码
unity里面做插值动画的插件有许多,比较常见的有itween.hotween.dotween.根据大家的反馈和实际体验来说,dotween插件在灵活性.稳定性.易用性上都十分突出.这里简单介绍下它的 ...
- [MySQL5.6] 一个简单的optimizer_trace示例
[MySQL5.6] 一个简单的optimizer_trace示例 前面已经介绍了如何使用和配置MySQL5.6中optimizer_trace(点击博客),本篇我们以一个相对简单的例子来跟踪op ...
- Skinned Mesh原理解析和一个最简单的实现示例
Skinned Mesh 原理解析和一个最简单的实现示例 作者:n5 Email: happyfirecn##yahoo.com.cn Blog: http://blog.csdn.net/n5 ...
- MongoDB下Map-Reduce使用简单翻译及示例
目录 Map-Reduce JavaScript 函数 Map-Reduce 行为 一个简单的测试 原文地址https://docs.mongodb.com/manual/core/map-reduc ...
- sqlalchemy(二)简单的连接示例
# -*- coding: utf-8 -*- import sqlalchemy from sqlalchemy import create_engine from sqlalchemy.ext.d ...
- Python正则表达式的简单应用和示例演示
前一阵子小编给大家连续分享了十篇关于Python正则表达式基础的文章,感兴趣的小伙伴可以点击链接进去查看.今天小编给大家分享的是Python正则表达式的简单应用和示例演示,将前面学习的Python正则 ...
- 一个简单的CSS示例
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 & ...
- 一个简单的webdynpro的ALV示例
开发alv的时候需要1.在web dynpro组件下面 的已使用的组件中添加ALV组件 SALV_WD_TABLE 2.在组件控制器的属性下面创建ALV组件SALV_WD_TABLE 3.在视图界面的 ...
- IDDD 实现领域驱动设计-一个简单的 CQRS 示例
上一篇:<IDDD 实现领域驱动设计-CQRS(命令查询职责分离)和 EDA(事件驱动架构)> 学习架构知识,需要有一些功底和经验,要不然你会和我一样吃力,CQRS.EDA.ES.Saga ...
随机推荐
- 【HNOI 2019】校园旅行
Problem Description 某学校的每个建筑都有一个独特的编号.一天你在校园里无聊,决定在校园内随意地漫步. 你已经在校园里呆过一段时间,对校园内每个建筑的编号非常熟悉,于是你情不自禁的把 ...
- 动态 DP 学习笔记
不得不承认,去年提高组 D2T3 对动态 DP 起到了良好的普及效果. 动态 DP 主要用于解决一类问题.这类问题一般原本都是较为简单的树上 DP 问题,但是被套上了丧心病狂的修改点权的操作.举个例子 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建列组合
jQuery EasyUI 数据网格 - 创建列组合 easyui 的数据网格(DataGrid)可以创建列组合,如下所示: 在本实例中,我们使用平面数据来填充数据网格(DataGrid)的数据,并把 ...
- LINQ to Entities 不识别方法“System.DateTime AddDays(Double)
今天本想在linq里按照时间筛选一下超时的数据,一共两个字段FeedBackTime(计划反馈时间).EndTime(实际反馈时间).需求是这样的,查找数据库里所有EndTime大于FeedBackT ...
- 20165309 《网络对抗技术》 Kali安装
20165309 <网络对抗技术> Kali安装 1. 目的要求 下载 安装 网络 共享 软件源 2. 主要步骤 下载系统镜像文件 进入Kali官网下载,我选择的是64位版本: 虚拟机设置 ...
- SYN-flood攻击
原理:当TCP三次握手进行第一次握手时,客户端向服务端发送SYN请求报文,第二次握手服务端会返回一个SYN+ACK的一个确认报文,syn-flood攻击就发生在第三次握手,当客户端不去回应服务端的SY ...
- Activiti之流程通过、驳回、会签、转办、中止、挂起等核心操作封装(Activiti5.9)
http://blog.csdn.net/rosten/article/details/38300267 package com.famousPro.process.service.impl; imp ...
- PHP以xml形式获取POST数据
<?php namespace Home\Controller; use Think\Controller; class UrlController extends Controller { / ...
- python3.7导入gevent模块报错的解决方案
最近更新了python解释器3.7 结果安装gevent,在导入gevent之后就报错了,错误信息如下 RuntimeWarning: greenlet.greenlet size changed, ...
- samba及其基本应用
Samba 137/udp,138/udp,139/tcp,445/tcp windowns主机共享: linux主机进行访问查看资源:smbclient -L Server_IP -U 用户名 li ...