ABAP - SALV教程04 添加状态栏

news2024/11/15 3:39:12
  • CL_SALV_TABLE中提供了 GET_FUNCTIONS方法.GET_FUNCTIONS方法返回的是一个CL_SALV_FUNCTIONS_LIST类型的实例对象.
  • 类CL_SALV_FUNCTIONS_LIST两个方法(SET_ALL、SET_DEFAULT)可以添加标准状态栏

  • 实现步骤:

  1. 定义SET_STATUS私有方法.

      PRIVATE SECTION.
        METHODS:
          set_status CHANGING co_alv TYPE REF TO cl_salv_table.
    
      METHOD set_status.
        DATA(lo_functions) = co_alv->get_functions( ).
        "cl_salv_functions_list类型的实例对象的添加状态方法
        lo_functions->set_all( abap_true ).
        "lo_functions->set_default( abap_true ).
      ENDMETHOD.

  2. 在生成SALV实例对象后调用SET_STATUS私有方法.

        DATA: lx_msg TYPE REF TO cx_salv_msg.
        TRY.
            cl_salv_table=>factory(
              IMPORTING
                r_salv_table = mo_salv
              CHANGING
                t_table      = mt_data ).
          CATCH cx_salv_msg INTO lx_msg.
        ENDTRY.
    
        me->set_status( CHANGING co_alv = mo_salv ).

  •  完整代码
    CLASS lcl_model DEFINITION.
      PUBLIC SECTION.
        TYPES:BEGIN OF TY_dATA,
                vbeln TYPE vbak-vbeln,
                erdat TYPE erdat,
                erzet TYPE erzet,
                ernam TYPE ernam,
                auart TYPE auart.
        TYPES:END  OF ty_data.
    
        DATA mt_data TYPE TABLE OF ty_data.
    
        DATA mo_salv TYPE REF TO cl_salv_table.
    
        "获取数据的方法
        METHODS get_data.
        "展示SALV的方法
        METHODS alv_show.
    
      PRIVATE SECTION.
        METHODS:
          set_status CHANGING co_alv TYPE REF TO cl_salv_table.
    
    ENDCLASS.
    
    CLASS lcl_model IMPLEMENTATION.
      METHOD get_data.
        SELECT vbeln erdat erzet ernam auart
          INTO TABLE mt_data
          FROM vbak
          UP TO 20 ROWS.
      ENDMETHOD.
    
      METHOD alv_show.
        DATA: lx_msg TYPE REF TO cx_salv_msg.
        TRY.
            cl_salv_table=>factory(
              IMPORTING
                r_salv_table = mo_salv
              CHANGING
                t_table      = mt_data ).
          CATCH cx_salv_msg INTO lx_msg.
        ENDTRY.
        me->set_status( CHANGING co_alv = mo_salv ).
        mo_salv->display( ).
      ENDMETHOD.
    
      METHOD set_status.
        DATA(lo_functions) = co_alv->get_functions( ).
        "cl_salv_functions_list类型的实例对象的添加状态方法
        lo_functions->set_all( abap_true ).
        "lo_functions->set_default( abap_true ).
      ENDMETHOD.
    ENDCLASS.
    
    START-OF-SELECTION.
      DATA(lo_model) = NEW lcl_model( ).
      lo_model->get_data( ).
      lo_model->alv_show( ).

  • 显示效果 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1484099.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

qt 基于百度API的人脸识别

百度云官网:点击跳转 一、创建应用 跳转进去,可以看到以下界面: 点击红色圈内的“去创建”,创建自己的项目。可以看到以下界面: 输入“应用名称”,并勾选“人脸对比”,还要到页面的最后输入“应…

董兆祥出席工业废水资源化,开创变废为宝新途径演讲

演讲嘉宾:董兆祥 董事长 河北奥博水处理有限公司 演讲题目:工业废水资源化,开创变废为宝新途径 会议简介 “十四五”规划中提出,提高工业、能源领城智能化与信息化融合,明确“低碳经济”新的战略目标,热…

C++之stack

1、stack简介 stack是实现的一个先进后出,后进先出的容器。它只有一个出口,只能操作最顶端元素。 2、stack库函数 (1)push() //向栈压入一个元素 (2)pop() //移除栈顶元素 (3…

‘conda‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

如果你在运行 conda 命令时收到了 ‘conda’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 的错误消息,这可能意味着 Anaconda 并没有正确地添加到你的系统路径中。 1.你可以尝试手动添加 Anaconda 到系统路径中。以下是在 Windows 系统上添加…

RPA中国 x UiPath | 第六届RPA极客挑战赛,3月16日上海开赛!

随着人工智能技术的不断进步以及数字化转型的深入,企业对于高效、精准、自动化的业务流程需求日益迫切。RPA技术作为连接人类工作与机器操作的桥梁,正逐渐从规则驱动发展为智能决策的助手。 由RPA中国联合UiPath共同主办的【第六届RPA极客挑战赛】将于2…

利用AI生成内容推广吸粉推广营销影响力全自动化工具

利用AI生成内容推广吸粉影响力全自动化工具 步骤 1、采集热门关键词 2、用各大平台AI接口生成各种角度文章或视频 3、发布到各平台 细节 您提到的利用人工智能(AI)生成内容并推广吸粉的全自动化工具,在当前技术条件下是可能的。下面是一个…

简单的生活案例解释:关系图卷积网络(RGCN)

目录 1、用一个简单的生活案例来解释关系图卷积网络(RGCN)2、RGCN与FB15K-237文件格式详情数据集构成结合RGCN和FB15K-237参考文献1、用一个简单的生活案例来解释关系图卷积网络(RGCN) 假设你是一名社交媒体平台的工程师,你的任务是分析用户之间的关系,以便为他们推荐更…

微服务笔记

什么是微服务? 微服务是一种经过良好架构设计的分布式架构方案,微服务架构特征: 1.单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业发。 2.面向服务:微服务对外暴露业务接口 3.自治:团…

Sublime Text4代码配色自定义方案

文章目录 前言效果图 前言 关于Sublime Text对于我的使用体验,只能说内置的代码主题真的都太low了,一点都不好看。所以接下来我分享一下我自定义代码配色。当然,大家也可以通过我给的中文翻译注释来自定义自己喜欢的颜色。废话不多说&#x…

给自己的2023年写了个年终总结

哈喽,你好啊,我是雷工! 2023年的余额已经严重不足,再有5天,2023年也将成为历史中的年份了。 从网上看到很多小伙伴已经进入了年终总结的模式,我也忍不住想,今年收获了什么?又失去了…

【计算机是怎么跑起来的】软件,体验一次手工汇编

【计算机是怎么跑起来的】软件,体验一次手工汇编 二进制机器语言汇编语言操作码操作数寄存器内存地址和I/O地址参考书:计算机是怎么跑起来的 第三章外设在路上。。。先整理一下本书涉及的理论知识,反正后面做视频也要重写QAQ 程序的作用是驱动硬件工作,所以在编写程序之前必…

C++——模版

前言:哈喽小伙伴们好久不见,这是2024年的第一篇博文,我们将继续C的学习,今天这篇文章,我们来习一下——模版。 目录 一.什么是模版 二.模版分类 1.函数模版 2.类模板 总结 一.什么是模版 说起模版,我们…

gofly框架接口入参验证使用介绍

接口传入的参数做相关性质验证是开发中较为常用,gofly框架内置校验工具,提供开发效率,开发接口简单调用即可实现验证,下面介绍gofly框架数据验证设计思路及使用方法。 gofly框架提供了功能强大、使用便捷、灵活易扩展的数据/表单…

SpringBoot系列(一):SpringBoot介绍

SpringBoot系列(一):SpringBoot介绍 1. SpringBoot介绍 SpringBoot是由Pivotal团队提供的一套用于构建微服务的基础框架,它旨在简化Spring应用程序的创建和开发过程。 SpringBoot通过设计大量的自动化配置等方式来简化Spring原有样板化的配置&#xff…

禁止u盘拷贝的方法,U盘文件防止拷贝的方法

某大型制造企业在研发一款新产品时,涉及到了大量的机密数据和设计图纸。为了方便工作,研发部门的员工经常使用U盘在不同电脑之间传输数据。 然而,由于缺乏对U盘的有效管理,导致了一起严重的数据泄露事件。 事件经过:…

SpringBoot+Redis实现不重复消费的队列

背景 最近我们新研发了一个“年夜饭订购”功能(没想到吧,雷袭在是一个程序猿的同时,也是一名优秀的在厨子)。用户使用系统选择年夜饭,点击“下单”时,后台首先会生成一条订单数据,返回消息给用户…

了解 SYN Flood 攻击

文章目录: 什么是 SYN Flood 攻击?对网络的影响SYN Flood 发生的迹象如何解决? 什么是 SYN Flood 攻击? SYN Flood(SYN 洪水攻击)是一种常见的分布式拒绝服务(DDoS - Distributed Denial of Se…

Slicer学习笔记(六十五) 3DSlicer的医学图像数据增强扩展模块

1. 医学图像数据增强扩展模块 基于3D Slicer5.1.0 编写了一个测试医学图像的数据增强测试扩展模块。 扩展模块名:DataAugementation 项目地址:DataAugmentation 下载该项目后,可以将该扩展模块添加到3D Slicer的扩展中。 关于如何给3DSlicer…

3.1 序列式容器-vector

STL中一些常见的容器: 序列式容器(Sequence Containers): vector(动态数组): 动态数组,支持随机访问和在尾部快速插入/删除。list(链表): 双向链表…

Unity3d Shader篇(十一)— 遮罩纹理

文章目录 前言一、什么是遮罩纹理?1. 遮罩纹理工作原理2. 遮罩纹理优缺点优点:缺点: 3. 遮罩纹理图 二、使用步骤1. Shader 属性定义2. SubShader 设置3. 渲染 Pass4. 定义结构体和顶点着色器函数5. 片元着色器函数 三、效果四、总结 前言 在…