abap report alv双击弹出屏幕 REUSE_ALV_GRID_DISPLAY 函数(屏幕显示内表数据)

ABAP - Function ALV 08 热点和单击/双击的联动之ALV点击单号跳转 【代码】ABAP - Function ALV 08 热点和单击/双击的联动之ALV点击单号跳转。 阅读详情

需求是这样的比如我双击alv想查看里面具体内容

双击任一 一行再弹出个界面

 

废话不多说 --开始放代码:

定义内表 GT_VBAP 显示数据内表  GT_FIELDCAT 弹出界面要显示的字段

从这开始----------------------------------------

TYPES:BEGIN OF TS_VBAP,
        VBELN          TYPE  VBAP-VBELN,
        POSNR          TYPE  VBAP-POSNR,
        MATNR          TYPE  VBAP-MATNR,
      END OF TS_VBAP.

DATA GT_VBAP TYPE TABLE OF TS_VBAP.

DATA GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.

"下面是就是要实现的form 

FORM DISPLAY_DATA .
    PERFORM SET_FIELDCAT.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'     "系统标准函数
    EXPORTING
     *   I_INTERFACE_CHECK                 = ' '
     *   I_BYPASSING_BUFFER                = ' '
     *   I_BUFFER_ACTIVE                   = ' '
     *   I_CALLBACK_PROGRAM                = ' '
     *   I_CALLBACK_PF_STATUS_SET          = ' '
     *   I_CALLBACK_USER_COMMAND           = ' '
     *   I_CALLBACK_TOP_OF_PAGE            = ' '
     *   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
     *   I_CALLBACK_HTML_END_OF_LIST       = ' '
     *   I_STRUCTURE_NAME                  =
     *   I_BACKGROUND_ID                   = ' '
     *   I_GRID_TITLE                      =
     *   I_GRID_SETTINGS                   =
     *   IS_LAYOUT                         =
       IT_FIELDCAT                       = GT_FIELDCAT "要显示哪些字段
     *   IT_EXCLUDING                      =
     *   IT_SPECIAL_GROUPS                 =
     *   IT_SORT                           =
     *   IT_FILTER                         =
     *   IS_SEL_HIDE                       =
     *   I_DEFAULT                         = 'X'
     *   I_SAVE                            = ' '
     *   IS_VARIANT                        =
     *   IT_EVENTS                         =
     *   IT_EVENT_EXIT                     =
     *   IS_PRINT                          =
     *   IS_REPREP_ID                      =
     *   I_SCREEN_START_COLUMN             = 0
     *   I_SCREEN_START_LINE               = 0
     *   I_SCREEN_END_COLUMN               = 0
     *   I_SCREEN_END_LINE                 = 0
     *   I_HTML_HEIGHT_TOP                 = 0
     *   I_HTML_HEIGHT_END                 = 0
     *   IT_ALV_GRAPHICS                   =
     *   IT_HYPERLINK                      =
     *   IT_ADD_FIELDCAT                   =
     *   IT_EXCEPT_QINFO                   =
     *   IR_SALV_FULLSCREEN_ADAPTER        =
     * IMPORTING
     *   E_EXIT_CAUSED_BY_CALLER           =
     *   ES_EXIT_CAUSED_BY_USER            =
      TABLES
        T_OUTTAB                          = GT_VBAP  "要输出内表数据
     * EXCEPTIONS
     *   PROGRAM_ERROR                     = 1
     *   OTHERS                            = 2
          .
    IF SY-SUBRC <> 0.
     * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
     *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
ENDFORM.                    " DISPLAY_DATA
 

 

到此结束 ---------------------------------------

 

 

 

PERFORM GET_DATA."取数据到内表

FORM GET_DATA .
  SELECT  VBELN
          POSNR
          MATNR
          VRKME
   FROM VBAP
   INTO TABLE GT_VBAP
   WHERE MATNR = P_MATNR.
ENDFORM.                    " GET_DATA

 

 

PERFORM SET_FIELDCAT."读取要显示几个字段

FORM SET_FIELDCAT .
  DATA : LS_FIELDCAT LIKE LINE OF GT_FIELDCAT.

  LS_FIELDCAT-FIELDNAME = 'VBELN'.
  APPEND LS_FIELDCAT TO GT_FIELDCAT.
  CLEAR LS_FIELDCAT.

  LS_FIELDCAT-FIELDNAME = 'POSNR'.
  APPEND LS_FIELDCAT TO GT_FIELDCAT.
  CLEAR LS_FIELDCAT.


ENDFORM.                    " SET_FIELDCAT
 


 

 

ABAP常用弹出窗口函数 展示消息 POPUP_TO_CONFIRM:可以自由发挥 POPUP_TO_DECIDE_LOCKED_DATA:传入用户名,显示数据锁定信息 POPUP_DISPLAY_MESSAGE :显示消息 POPUP_TO_DISPLAY_TEXT 显示两行文本 RSDC_SHOW_MESSAGES_POPUP:弹出窗口,显示批量消息,同ME21N采购订单界面弹出 C14Z_MESSAGES_SHOW... 阅读详情

相关推荐

ABAP - OO ALV基本实现步骤

ABAP - OO ALV基本实现步骤新建程序定义屏幕PBO实现PAI实现完整代码 新建程序 使用T-code:SE38 新建Report: ZOOALV 为新建的Report分配一个package,在这里我用本地包代替,实际工作中会有很多个环境,这个package是用来装传输请求,起到在不同环境中的传输代码的作用,在这里不做详细阐明,如下图点击Local Object,进入ABAP 编辑器界面 定义屏幕 在该界面中有两种创建屏幕的方式: 使用代码CALL SCREEN 100,然后双击100进行创

weixin_41906760的博客 5033

Functional ALV系列 (03) -双击ALV事件

本篇通过两个例子讲解双击 ALV 的单元格事件用法。第一个例子是双击跳转到 SAP 标准事务码,第二个例子是双击单元格显示明细界面。 双击单元格执行事务码操作 假设 ALV 显示的是物料编码的清单,双击物料编码字段,执行 MM03 操作,跳转到物料主数据的界面。首先编写如下代码: 为了能处理双击事件,我们需要定义用于该报表的 GUI status,一般从其它程序中拷贝。常用的是从 SAPLKKBL 程序中拷贝。操作方法如下图所示: 点击「Status」按钮将 standard_fullscreen 拷贝

王敏的专栏 3251

ABAP Function ALV的基本操作

Function ALV 的基本使用以及定义基本结构FIELDCATALOG 的使用REUSE_ALV_FIELDCATALOG_MERGE定义alv的layout 定义 ALV概览 ALV全称 SAP List View,是SAP提供的一个强大的数据报表显示工具 ALV实质上是一个屏幕空间对象,它通过程序传递数据内表的方式来显示数据 基本结构 首先用select语句从目标表中取出需要的数据,并传给声明好的内表 DATA: TABLE_MARA TYPE TABLE OF MARA. SELECT

m0_55521287的博客 1313

【转载】ABAP FUNCTION ALV单元格单击/双击事件

为实现打印入库单时,勾选某个行项目,则同一个单子的行项都要自动勾上。需要用到单击事件。 1.为需要响应单击按钮的列设定:        WA_FIELDCAT-HOTSPOT = 'X'.  "单击    其中 WA_FIELDCAT     TYPE LINE OF SLIS_T_FIELDCAT_ALV, 2.在ALV事件里响应:   CASE R_UCOMM.     WHEN ...

hubaichun的专栏 2930

SAP ABAP ALV报表开发:REUSE_ALV_GRID_DISPLAY自定义按钮完整指南

在SAP ABAP开发中,ALV(ABAP List Viewer)是报表和数据维护程序的核心组件。其标准函数REUSE_ALV_GRID_DISPLAY因其封装性好、调用简单,成为快速开发的首选。然而,标准ALV的工具栏功能有限,当业务需要集成如邮件发送、数据导出等定制操作时,为其添加自定义按钮就成为一项关键技术。这涉及到理解ALV的回调事件机制,通过构建符合STB_BUTTON结构的内表来定义按钮,并在指定的用户命令回调子程序中实现业务逻辑。掌握这项技能能极大提升报表的交互性和自动化程度,满足用户在数据

weixin_30701575的博客 479

ABAP - SALV实战:弹窗ALV的配置与优化技巧

本文详细介绍了在ABAP开发中,如何利用SALV框架实现弹窗ALV的配置与优化。通过核心方法SET_SCREEN_POPUP,可以创建不占用主屏幕空间的临时信息展示窗口。文章提供了从基础实现、动态尺寸计算、工具栏管控到交互事件处理的完整实战技巧,帮助开发者提升SAP程序的用户体验与专业性。

weixin_29264201的博客 410

SAP-ABAP:ABAP ALV报表入门——从0到1搭建你的第一个标准ALV报表程序

ABAP ALV报表开发入门摘要 本教程介绍了ABAP ALV报表开发的核心概念和基础实现方法,适合初学者快速掌握标准ALV报表的开发流程。主要内容包括: ALV基础知识:ALV是SAP的标准报表展示工具,提供数据排序、筛选、导出等功能。函数式ALV(使用REUSE_ALV_GRID_DISPLAY)是最基础的开发方式。

baidu_35680696的博客 331

SAP ABAP ALV报表开发实战:从零构建交互式数据表格

在SAP ABAP开发领域,数据展示与交互是核心需求之一。传统报表开发方式往往面临可维护性差、用户体验不佳的挑战。ABAP List Viewer(ALV)作为SAP系统标准控件库,通过封装丰富的交互功能,如排序、筛选、导出等,有效解决了这些问题。其技术价值在于将开发者从繁琐的UI编码中解放出来,使其能更专注于业务逻辑实现。在工程实践中,ALV广泛应用于物料清单、订单查询、财务数据展示等业务场景。本教程聚焦于面向对象ALV(OO ALV)开发,通过构建一个完整的物料信息报表示例,详细讲解数据获取、字段目录配

weixin_34414650的博客 446

[SAP ABAP] ALV报表练习2

本文主要收录SAP ABAP中的ALV报表程序开发的练习案例

Hudas的博客 1773

77 行代码实现 ABAP ALV 中的双击事件处理

我们在 ALV 开发专题的第二步骤里,为 ALV 输出的数据行,增添了颜色显示的功能: ALV 开发专题 27 行代码开发一个最简单的 SAP ALV 报表 给 ABAP ALV 报表的数据行增添颜色效果 本步骤为该 ALV 报表增添用户点击响应的功能,即双击任意一行,如果该行的 Person 曾经有过购买记录,即在另一个数据库表 ZMYORDER 有对应的数据,则弹出一个对话框,把购买过的产品名称显示出来。 如下图所示:双击第一行,名称为 Jerry 的 Person,购买过 LAPTOP 和 TV

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3443

140.ABAP ALV Grid 双击交互事件实现教程

本文介绍了基于SAP ABAP的采购订单审批报表开发全流程。从SAP三层架构入手,剖析ABAP工作台核心机制,重点说明数据字典定义、Open SQL查询优化和ALV交互展示等关键技术。通过一个完整的采购订单审批场景,提供可直接运行的代码示例,包含选择屏幕参数、数据查询逻辑和ALV输出实现。文章不仅展示标准开发模式,还给出了性能优化建议和常见问题解决方案,适用于SAP S/4HANA或ECC系统中需要快速开发自定义报表或增强标准功能的场景。文中的代码已在SAP NetWeaver 7.5+环境验证,可直接应用

2601_95651806的博客 113

SAP-ABAP:CL_GUI_ALV_GRID控件入门——面向对象ALV开发基础框架搭建指南

本文介绍了面向对象ALV开发的核心优势与基础框架搭建方法。主要内容包括: 对比函数式ALV与面向对象ALV在灵活性、交互性、扩展性等方面的差异 分步讲解OO ALV开发流程:创建容器、实例化ALV网格、准备字段目录和布局 提供完整的可运行代码示例,展示采购订单报表的实现 重点说明关键配置项(如金额/数量字段关联、事件处理等) 总结面向对象ALV的适用场景及开发注意事项 通过本文,开发者可以掌握从函数式ALV向面向对象ALV过渡的基础技能,构建更灵活的报表解决方案。

baidu_35680696的博客 335

195.ABAP REUSE_ALV_GRID_DISPLAY 实战教程

摘要: 本文以SAP ABAP开发为核心,聚焦采购订单审批报表的实现流程。通过SAP系统三层架构解析和ABAP程序处理模型,详细阐述了从数据字典创建到ALV报表展示的全过程。文章提供了完整的可执行代码示例,涵盖数据获取、处理及可视化环节,并重点演示了ALV控件的动态配置方法。该案例展示了SAP开发中业务逻辑与数据操作的结合方式,适用于企业级报表开发场景,代码已通过SAP NetWeaver 7.50环境验证,可直接在SE38中运行。

2601_95651806的博客 104

【ABAP】ALV 屏幕使用容器的灵活拆分类 cl_gui_splitter_container 自由分割(详解)

go_cctrl TYPE REF TO cl_gui_custom_container, "容器go_docking_cc TYPE REF TO cl_gui_docking_container, "父容器(停靠容器)go_splitter_cc TYPE REF TO cl_gui_splitter_container, "拆分容器go_cc_alv1 TYPE REF TO cl_gui_container, "alv容器1。

weixin_45522237的博客 426

156.ABAP ALV 双击跳转 MM03 事务码实现教程

本文介绍了SAP ABAP开发的核心概念与实现方法,重点讲解企业级报表开发流程。首先概述ABAP开发在企业ERP系统中的三大应用场景:定制化报表、接口集成和数据迁移。随后详细解析ABAP三层架构原理,包括数据字典对象设计、Open SQL规范及ALV报表技术要点。文章提供了完整的物料库存查询报表开发实例,涵盖从数据字典结构创建到ALV界面实现的完整代码,特别强调生产环境中的最佳实践,如批量数据操作、字段类型匹配和异常处理机制。所有代码均基于SAP NetWeaver 7.5验证通过,可直接应用于实际项目开发

2601_95651806的博客 10

[ABAP]Function实现ALV Table 二:ALV的弹出窗口形式

NULL 博文链接:https://klg.iteye.com/blog/277183

ABAP ALV多屏幕独立布局:handle机制与REUSE_ALV_GRID_DISPLAY_LVC实战

ALV(ABAP List Viewer)是SAP经典Dynpro界面中实现数据表格展示的核心技术,其多屏幕独立布局能力直接关系到复杂业务场景的交互体验与开发可维护性。本质在于通过handle参数为每个ALV实例分配唯一运行时句柄,实现数据源隔离、事件域分离与状态缓存自治。相比面向对象的CL_GUI_ALV_GRID,REUSE_ALV_GRID_DISPLAY_LVC凭借更轻量的内存管理、更清晰的事件路由(如USER_COMMAND+handle组合)以及与Dynpro生命周期天然绑定的特性,在MM、FI

weixin_34220179的博客 213

国民技术N32G45X低功耗问题之更改全局变量和栈在RAM中的地址

最近项目中用的MCU是国民技术的N32G45X,MCU的资源很丰富,RAM也很大,配套的库和例程也比较全,用起来还是不错的,但是在调试低功耗的时候还是费了不少劲。 首先由于项目低功耗需要,只能选择停机模式2(STOP2)。根据数据手册的描述,在此模式下外部低速时钟开启, RTC运行, R-SRAM保持,所有I/O状态保持,独立看门狗处于关闭状态,25℃的条件下电流为10个微安。 用的这款MCU的RAM是144KB,分为SRAM(128KB)和R-SRAM( Retention SRAM – 16KB),如果

狂想家 2485

深入解析REUSE_ALV_GRID_DISPLAY:如何高效实现ALV自定义按钮功能

本文深入解析了SAP ABAP开发中REUSE_ALV_GRID_DISPLAY函数如何高效实现自定义按钮功能。通过复制并修改GUI Status添加按钮,并在回调事件中处理用户交互,开发者能将静态报表升级为动态的交互式应用,从而显著提升用户体验与操作效率。

tequila的博客 525

信创环境下,软件测试如何破局?

毕竟,在自主可控的道路上,每一行通过测试的代码,都在为信创产业的未来添砖加瓦。未来,测试工程师不仅要验证软件在信创环境的可用性,更要基于国产软硬件的特性,推动软件进行 “原生设计”—— 例如,针对国产 CPU 的多核架构优化代码,基于国产数据库的索引机制提升查询效率。某政务云平台的测试数据显示,在 “飞腾芯片 + 麒麟操作系统” 环境下,系统的并发处理能力较传统环境下降约 15%,测试团队通过优化软件的线程调度逻辑,最终将性能损失控制在 5% 以内 —— 这正是信创性能测试的价值所在。

weixin_45608163的博客 883

【重启后nvidia-smi 命令出现错误】

NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

qq_44769377的博客 5210
上一篇: win10安装office提示:错误1907 无法注册字体
下一篇: python中将字典相同key处理不同的value,将value相加给相同的key
Da_Lian_
博客等级 码龄9年 37粉丝 82原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值