ABAP ALV和OOALV设置单元格颜色,编辑
首先给大家分享一篇博客:
REUSE_ALV_GRID_DISPLAY_LVC-可编辑单元格
文章目录
- 单元格编辑
- 单元格/行-颜色
- 效果展示
**需求:**我是想实现某个单元格可根据数据来判断是否是可以进行编辑的或要添加一个什么样的颜色.
我们需要用到下面的三个结构
ALV 控制: 单元格的类型表:LVC_T_STYL
ALV 控制: 字段名称 + 类型:LVC_S_STYL
ALV 控制: 单元格颜色表:LVC_T_SCOL
单元格编辑
1.下面的zstyle这个字段就是用来编辑这个单元格是否需要编辑的
"输出结构
TYPES: BEGIN OF ty_output.INCLUDE STRUCTURE ztsd0001. "内表
TYPES zstyle TYPE lvc_t_styl. "编辑状态字段
TYPES: END OF ty_output.DATA: gt_output TYPE TABLE OF ty_output. "输出内表
DATA: gs_output TYPE ty_output. "输出工作区
2.在layout中设置上面的那个字段.
gs_layout-stylefname = 'ZSTYLE'. "用于改变字段属性
3.在FIELDCAT中设置你要想实现那一列的效果,要把它设置成可编辑的,对是设置整列可编辑的(后续要经过判断在设置具体到那个单元格可编辑)
IF &1 EQ 'aufnr2 '. GS_FIELDCAT-EDIT = 'X'.ENDIF.
4.最后就是在展示ALV的前一步进行实现具体单元格可编辑的效果.
DATA:lt_celltab TYPE lvc_t_styl,ls_celltab TYPE lvc_s_styl."这个字段要和你在FIELDCAT 中设置那个列可编辑的字段,要对应ls_celltab-fieldname = 'AUFNR2'. "下面这两行是常量, 你可以选择给他固定值,或者直接调用cl_gui_alv_grid中的常量ls_celltab-style = cl_gui_alv_grid=>mc_style_disabled. "不可编辑 初始值 '00100000'
" ls_celltab-style = cl_gui_alv_grid=>MC_STYLE_ENABLED. "可编辑 初始值 '00080000'INSERT ls_celltab INTO TABLE lt_celltab. INSERT LINES OF lt_celltab INTO TABLE gs_output-zstyle. CLEAR:ls_celltab,lt_celltab ."判断该内表汇总字段aufnr2为不为初始化的 实现不可修改
"(也就是说这个字段有值的就不要进行可编辑,没有的可以进行编辑)LOOP AT gt_output INTO DATA(ls_out).IF ls_out-aufnr2 IS not INITIAL.MODIFY gt_output INDEX sy-tabix FROM gs_output TRANSPORTING zstyle.ENDIF.ENDLOOP.CLEAR:ls_out, gs_output.
到这里就完成了
单元格/行-颜色
1.下面的CLR行颜色代码的字段,cellcolor 用于单元格颜色.
"输出结构
TYPES: BEGIN OF ty_output.INCLUDE STRUCTURE ztsd0001. "内表
TYPES cellcolor TYPE lvc_t_scol. "单元格颜色
TYPES clr TYPE char04. "行颜色代码的字段
TYPES: END OF ty_output.DATA: gt_output TYPE TABLE OF ty_output. "输出内表
DATA: gs_output TYPE ty_output. "输出工作区
2.需要在layout总进行设置
gs_layout-info_fname = 'CLR'. "行颜色代码的字段
gs_layout-ctab_fname = 'CELLCOLOR'. "单元格颜色内表字段
3.最后就是在展示ALV的前一步进行实现具体单元格/行的效果.
LOOP AT gt_output INTO gs_output.
"设置某一行为红色IF gs_output-aufnr = ''.gs_output-clr = 'C610'.MODIFY gt_output FROM gs_output TRANSPORTING clr.CLEAR gs_output.ENDIF."设置某一个单元格为黄色 IF gs_output-aufnr <> ''.lw_cellcolor-fname = 'AUFNR'."订单编号为‘’的行的‘AUFNR’字段颜色为 黄色lw_cellcolor-color-col = 3.lw_cellcolor-color-int = 1.lw_cellcolor-color-inv = 0.APPEND lw_cellcolor TO gs_output-cellcolor.MODIFY gt_output FROM gs_output.CLEAR lw_cellcolor.ENDIF.CLEAR gs_output.ENDLOOP.
效果展示
单元格编辑效果

颜色添加效果

叠加效果

相关文章:
ABAP ALV和OOALV设置单元格颜色,编辑
首先给大家分享一篇博客: REUSE_ALV_GRID_DISPLAY_LVC-可编辑单元格 文章目录单元格编辑单元格/行-颜色效果展示**需求:**我是想实现某个单元格可根据数据来判断是否是可以进行编辑的或要添加一个什么样的颜色. 我们需要用到下面的三个结构 ALV 控制: 单元格的类型表:LVC_T_ST…...
Java知识复习(十三)数据库和SQL
1、主键和外键 主键也叫主码。主键用于唯一标识一个元组,不能有重复,不允许为空。一个表只能有一个主键。外键也叫外码。外键用来和其他表建立联系用,外键是另一表的主键,外键是可以有重复的,可以是空值。一个表可以有…...
JVM虚拟机种类
1,Sun Classic VM: 1.现在此款虚拟机已经淘汰了,是历史上第一款商用的虚拟机。2.只能使用纯解释器的方式来执行Java代码。3.服役于 JDK 1.0、1.1、1.2;在 1.3、1.4 作为 HotSpot VM 的备选 VM;之后退出历史舞台;2,Sun Exact VM 1.…...
Linux操作系统学习(线程基础)
文章目录线程的基础概念线程控制内核LWP和线程ID的关系线程的基础概念 一般教材对线程描述是:是在进程内部运行的一个分支(执行流),属于进程的一部分,粒度要比进程更加细和轻量化 一个进程中是可能存在多个线程…...
YOLOv5源码逐行超详细注释与解读(1)——项目目录结构解析
前言 前面简单介绍了YOLOv5的网络结构和创新点(直通车:【YOLO系列】YOLOv5超详细解读(网络详解)) 在接下来我们会进入到YOLOv5更深一步的学习,首先从源码解读开始。 因为我是纯小白,刚开始下…...
前端开发总结的一些技巧和实用方法(2)
本文主要介绍一些JS中用到的小技巧和实用方法,可以在日常Coding中提升幸福度,也可以通过一些小细节来增加代码可读性,让代码看起来更加优雅,后续将不断更新1.数组 map 的方法 (不使用Array.Map) Array.from 还可以接受第二个参数…...
Docker搭建jenkins(Vue自动化部署)
前言 需要提前准备的条件 Docker环境 一、jenkins镜像 # 查询镜像 docker search jenkins# 下载镜像 # lts稳定版 docker pull jenkins/jenkins:lts#查看镜像 docker images二、启动Jenkins容器 创建挂载文件夹,并且进行文件授予权限 #创建文件夹 mkdir -p /home/j…...
ADCS攻击之CVE-2022–26923
CSDN自动博客文章迁移漏洞简介该漏洞允许低权限用户在安装了 Active Directory 证书服务 (AD CS) 服务器角色的默认 Active Directory 环境中将权限提升到域管理员。在默认安装的ADCS里就启用了Machine模板。漏洞利用添加机器账户,并将该机器账户dnsHostName指向DC[…...
AO3401-ASEMI低压P沟道MOS管AO3401
编辑:ll AO3401-ASEMI低压P沟道MOS管AO3401 型号:AO3401 品牌:ASEMI 封装:SOT-23 最大漏源电流:-4.2A 漏源击穿电压:-30V RDS(ON)Max:0.05Ω 引脚数量࿱…...
【STM32MP157应用编程】3.控制PWM
目录 PWM文件 指令操作PWM 程序操作PWM 程序说明 程序代码 3_PWM_1.c 启动交叉编译工具 编译 拷贝到开发板 测试 PWM文件 在/sys/class/pwm目录下,存放了PWM的文件。 pwmchip0和pwmchip4目录对应了MP157 SoC的2个PWM控制器,pwmchip0对应的是M…...
基于Python的selenium
一、安装 1.1安装Python,安装Python时需要勾选增加环境变量 如果之前已经安装过Python,需要将Python相关文件以及环境变量删除 1.2安装成功:在命令行界面下输入Python,最终展示>>>即可成功 2.1安装pycharm,直接自定义安装…...
Go底层原理:一起来唠唠GMP调度(一)
目录前言一、进程、线程、Goroutine1、进程与线程2、Goroutine二、Go调度器设计思想1、线程模型1.1 内核级线程模型1.2 用户级线程模型1.3 混合型线程模型2、 被废弃的 G-M 调度器2.1 了解 G-M 调度如何工作3、如今高效的 GMP 模型3.1 GMP模型调度流程3.2 GMP调度设计策略3.3 G…...
前端——1.相关概念
这篇文章主要介绍前端入门的相关概念 1.网页 1.1什么是网页? 网站:是指在因特网上根据一定的规则,使用HTML等制作的用于展示特定内容相关的网页集合 网页:是网站中的一“页”,通常是HTML格式的文件,它要…...
java四种线程池(基本使用)
标题java四种线程池及使用示例 1、线程工厂 1、我们先来写ThreadFactory,在创建线程池时候可以传入自定义的线程工厂,线程工厂说白了就是用来定制线程的一些属性:名字、优先级、是否为守护线程。直接看代码即可。 当然创建线程池的时候可以…...
float的表示范围为什么比long大
●很多人会有一个疑问, 一个用来表示小数的 float 为什么表示的范围会比 long 还要大呢 ? ●这次, 咱们就来详细说一说这个事情 从长计议 ●聊到这个话题, 我们就要从计算机存储数字这个位置说起了 ●计算机存储数字的方式其实就是 : 二进制 二进制是计算机中最基本的数字存储…...
Flutter Android 打包保姆式全流程 2023 版
大家好,我是 17。 为什么要写这篇文章呢?对于一没有 android 开发经验,从未有过打包经历的新人来说,要想成功打包,是很困难的。因为受到的阻碍太多,是完全陌生的领域,几乎是寸步难行。如果有老…...
C++笔记之lambda表达式
引言 Lambda表达式是从C 11版本引入的特性,利用它可以很方便的定义匿名函数对象,通常作为回调函数来使用。大家会经常拿它和函数指针,函数符放在一起比较,很多场合下,它们三者都可以替换着用。 语法 [ captures ] (…...
flink大数据处理流式计算详解
flink大数据处理 文章目录flink大数据处理二、WebUI可视化界面(测试用)三、Flink部署3.1 JobManager3.2 TaskManager3.3 并行度的调整配置3.4 区分 TaskSolt和parallelism并行度配置四、Source Operator(资源算子)五、Sink Operator(输出算子)六、Flink滑…...
Java面试题(二十三)DCL单例
懒汉式单例 private static SingletonInstance INSTANCE;private SingletonInstance(){}public static SingletonInstance getInstance() {if (INSTANCE null) {INSTANCE new SingletonInstance();}return INSTANCE;}构造方法私有化,然后判断是否为空,…...
UML-类图
一、类 一个类由三个格子组成,从上至下分别表示: 第一格:类名称(接口和抽象类,使用斜体) 第二格:类的属性(成员变量,可以没有) 第三格:类的操作&…...
MA730/MT6835/MT6825/MT6709磁编码器SPI通信实战:从寄存器配置到角度解析
1. 磁编码器SPI通信基础与选型指南 磁编码器作为现代电机控制和机器人系统中的核心传感器,其精度和响应速度直接影响整个系统的性能。MA730、MT6835、MT6825和MT6709这几款磁编码器在工业界应用广泛,它们都采用SPI接口进行通信,但在具体实现上…...
从芯片选型到PCB布线:手把手拆解基于Zynq-7100的10Gbps雷达数据采集卡硬件设计
从芯片选型到PCB布线:Zynq-7100雷达数据采集卡硬件设计实战 在高速数据采集领域,10Gbps量级的实时信号处理对硬件设计提出了严苛挑战。当我们面对雷达回波、医学影像或工业检测等场景时,传统采集方案往往在吞吐量、延迟和同步精度上捉襟见肘。…...
AppleJuice与法律边界:如何在教育框架内负责任地使用
AppleJuice与法律边界:如何在教育框架内负责任地使用 【免费下载链接】AppleJuice Apple BLE proximity pairing message spoofing 项目地址: https://gitcode.com/gh_mirrors/ap/AppleJuice AppleJuice作为一款专注于Apple BLE近距离配对消息模拟的开源项目…...
closure-compiler-js迁移指南:如何从弃用版本平稳过渡到官方版本
closure-compiler-js迁移指南:如何从弃用版本平稳过渡到官方版本 【免费下载链接】closure-compiler-js Package for the JS version of closure-compiler for use via NPM 项目地址: https://gitcode.com/gh_mirrors/cl/closure-compiler-js 如果你正在使用…...
如何5分钟实现Windows系统自动化软件部署:winget-install完整指南
如何5分钟实现Windows系统自动化软件部署:winget-install完整指南 【免费下载链接】winget-install Install WinGet using PowerShell! Prerequisites automatically installed. Works on Windows 10/11 and Server 2019/2022. 项目地址: https://gitcode.com/gh_…...
基于大语言模型的智能购物助手:从架构设计到工程实现
1. 项目概述:当AI遇上电商,一个“懂你”的购物助手如何炼成最近在逛GitHub的时候,发现了一个挺有意思的项目,叫“KudoAI/amazongpt”。光看名字,你大概能猜到它和亚马逊(Amazon)以及GPT有关。没…...
向量寄存器文件优化:Register Dispersion技术解析
1. 向量寄存器文件的技术挑战与优化背景在处理器架构设计中,向量寄存器文件(Vector Register File, VRF)作为向量处理单元(VPU)的核心组件,承担着存储和管理向量数据的关键任务。传统VRF设计通常采用固定数…...
GD32C103RBT6 DAC 驱动库详细解析
本文基于GD32C10x 官方固件库 V1.0.0,深度解析 DAC 外设驱动库gd32c10x_dac.c,包含驱动概述、核心函数详解、可直接运行的工程例程,适合 GD32 单片机开发入门与实战。 一、DAC 外设概述 1.1 GD32C10x DAC 基本特性 双通道 12 位数字 / 模拟转换器(DAC0、DAC1) 输出电压范…...
从排版混乱到学术规范:NKThesis LaTeX模板的中文标题架构演进之路
从排版混乱到学术规范:NKThesis LaTeX模板的中文标题架构演进之路 【免费下载链接】NKThesis 南开大学硕士毕业论文/博士论文模板 (Latex Template for Nankai University) 项目地址: https://gitcode.com/gh_mirrors/nk/NKThesis 在学术写作的数字化浪潮中&…...
别再只盯着CVE-2017-7529复现了,聊聊Nginx缓存机制下的那些‘信息泄露’风险
深入解析Nginx缓存机制与敏感信息防护实践 Nginx作为现代Web架构的核心组件,其高效的缓存机制在提升性能的同时也隐藏着不容忽视的安全隐患。当开发者们热衷于讨论CVE-2017-7529这类高危漏洞的复现时,我们更需要将目光投向日常配置中那些容易被忽视的信息…...
