这里介绍三种类型的颜色:列的背景色,单元格的背景色,单元格文本的颜色。

1.给ALV结构添加颜色控制字段:

三个字段都是同一类型:WDY_UIE_LIBRARY_ENUM_TYPE

COL_BACKG:列背景色

CELL_BACKG:单元格背景色

TEXT_BACKG:单元格文本背景色。

2.初始化ALV时,设置对应的字段和颜色控制

CASE ls_column-id.
WHEN 'POSTING_DATE'.
ls_column-r_column->set_cell_design( cl_wd_abstr_master_table_col=>e_cell_design-positive ).
WHEN 'OBJECT_ID'.
ls_column-r_column->set_cell_design_fieldname( 'CELL_BACKG' ).
WHEN 'STAT'.
DATA lr_cell_editor TYPE REF TO cl_salv_wd_uie.
DATA lr_text_view TYPE REF TO cl_salv_wd_uie_text_view. lr_cell_editor = ls_column-r_column->get_cell_editor( ).
IF lr_cell_editor->editor = if_salv_wd_c_column_settings=>cell_editor_text_view.
lr_text_view ?= lr_cell_editor.
lr_text_view->set_semantic_color_fieldname( 'TEXT_BACKG' ).
ENDIF. WHEN OTHERS.
ENDCASE.

日期列设置列背景色,单号设置单元格不同,状态列设置文本色。

3.查询数据时,控制颜色字段属性,设置颜色。

  LOOP AT lt_retab INTO ls_retab.
* 16 colors are available
l_cell_design = l_cell_design + .
IF l_cell_design > .
l_cell_design = .
ENDIF.
* cell background color
CASE l_cell_design.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-standard.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-negative.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-positive.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-badvalue_dark.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-badvalue_medium.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-badvalue_light.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-criticalvalue_dark.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-criticalvalue_medium.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-criticalvalue_light.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-goodvalue_dark.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-goodvalue_medium.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-goodvalue_light.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-key_medium.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-group_level1.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-group_level2.
WHEN .
ls_retab-cell_backg = cl_wd_abstr_master_table_col=>e_cell_design-group_level3.
ENDCASE. * text colors
l_semantic_color = l_semantic_color + .
IF l_semantic_color > .
l_semantic_color = .
ENDIF.
CASE l_semantic_color.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-standard.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-diminished.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-positive.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-critical.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-negative.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-marked1.
WHEN .
ls_retab-text_backg = cl_wd_text_view=>e_semantic_color-marked2.
ENDCASE.
MODIFY lt_retab FROM ls_retab.
ENDLOOP.

好了,加颜色的代码已经完成,看看效果吧。

WDA基础十六:ALV的颜色的更多相关文章

  1. Bootstrap<基础十六> 导航元素

    Bootstrap 提供的用于定义导航元素的一些选项.它们使用相同的标记和基类 .nav.Bootstrap 也提供了一个用于共享标记和状态的帮助器类.改变修饰的 class,可以在不同的样式间进行切 ...

  2. WDA基础十四:ALV字段属性配置表

    ALV配置表管理 一.字段属性配置表 对于可编辑的ALV不用这个,尽可能多的设置一些控制: 单元格类型:默认A,特殊选择 ZLYE_TYPE        E       A       1      ...

  3. WDA基础五:ALV组件的使用

    说明,因为ALV的功能比TABLE强大,所以在很多时候都习惯性的选择ALV显示. ALV是WDA的组件,封装好的,和SELECT OPTION一样.所以使用的方法一般就是:引入组件,初始化组件,数据绑 ...

  4. CSS学习(十六)-HSLA颜色模式

    一.理论: 1.HSLA颜色模式 a.HSLA在HSL基础上添加了不透明度,值越大透明度越低 b.HSLA颜色模式的浏览器兼容性和HSL一样,仅仅有较新版本号的主流浏览器才支持 2.RGBA和HSLA ...

  5. java基础(十六)----- equals()与hashCode()方法详解 —— 面试必问

    本文将详解 equals()与hashCode()方法 概述 java.lang.Object类中有两个非常重要的方法: public boolean equals(Object obj) publi ...

  6. WDA基础十七:ALV不同行显示不同下拉

    1.给ALV结构添加VALUE SET字段. 2.初始化时将TYPE_SET字段设置为值范围. METHOD wddoinit . DATA: lo_node TYPE REF TO if_wd_co ...

  7. WDA基础十二:FREE PROGRAM SH (WDA TREE)

    一个需要用TREE展示搜索帮助的需求: 1.创建WDA程序:ZCATEGORY 2.Component Controller中添加节点: (说明,此节点仅在搜索帮助程序中使用,可以不用interfac ...

  8. WDA基础十:OVS搜索帮助的使用

    对于WDA来说,常用的搜索帮助有OVS,标准SH,Interface view等.今天来说说两种常用的OVS的使用: 一:普通字段,表字段的搜索帮助(在创建节点的时候指定搜索帮助OVS,或者后面加上去 ...

  9. WDA基础十八:Select option配置

    为了省代码...为了方便管理WDA的查询条件... 首先建配置表: 说明: 上面的KEY基本都是维护的维度,可以根据销售组织,根据用户组,根据组件,根据SELECT OPTION的不同...等等,可以 ...

随机推荐

  1. h5页面在ios机上禁止长按复制

    (注意,增加之后需要对input的另外设置,不然输入框无法输入)场景:H5出现一个按钮需要长按几秒展示动画的,如:skcs.net-tactic.com/wap/peace/index,这时就需要用到 ...

  2. Node.js基础学习四之注册功能

    前言:在Node.js学习(二)和(三)中介绍了如何在Node.js 中获取登录的用户名和密码与数据库进行验证并返回数据给客户端 需求:实现注册功能 为了区分登录和注册是两个不同的请求,在端口后面加上 ...

  3. CSS3@media媒体查询

    CSS3@media媒体查询 定义 media媒体查询, 当文档宽度变化时, 就可以根据文档宽度的变化来运用样式,不同的宽度应用不同的样式 使用 @media 查询,你可以针对不同的媒体类型定义不同的 ...

  4. vue 异步刷新页面,

    入口文件vue.app中 <div id="app"> <router-view v-if="isRouterAlive" /> < ...

  5. nginx cookie 会话保持功能

    sticky 会话保持,基于自定义cookie 进行会话保持的方式 安装包下载地址:https://github.com/bymaximus/nginx-sticky-module-ng ./conf ...

  6. 多线程threading 的使用

    在Python3中,通过threading模块提供线程的功能.原来的thread模块已废弃.但是threading模块中有个Thread类(大写的T,类名),是模块中最主要的线程类,一定要分清楚了,千 ...

  7. [c/c++] programming之路(28)、结构体存储和内存对齐+枚举类型+typedef+深拷贝和浅拷贝

    一.结构体存储 #include<stdio.h> #include<stdlib.h> struct info{ char c; //1 2 4 8 double num; ...

  8. SAP 查询分析器,查询报表自动生成,SQL查询测试实现说明(转)

    在日常的SAP开发和应用中,经常需要通过查询SAP数据表来处理日常业务,比如:数据对账.报表SQL测试.SAP查询功能开发等.通过开发SAP查询分析器,SAP实施和开发人员,可以在较短的时间内查询到需 ...

  9. Linux系统 磁盘IO过高排查总结

    最近做的一个电商网站因为磁盘 I/O 过高导致访问速度奇慢,问题存在两个月有余未得到解决办法.此次排查原因的经验可以作下次问题的参考. 1.会看懂 top 系统命令出来的各项参数.此次是无意中发现 u ...

  10. Python3 tkinter基础 Scale orient 横竖 resolution单步步长 length 长度 tickinterval 指示刻度

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...