【SAP】ABAP——ALV设置某一个单元格/整行的颜色

1.  当满足某些条件时,则某个字段的输出单元格显示为红色,当不满足时,则显示为原来的颜色。

DATA:BEGIN OF gs_out,
  matnr TYPE ekpo-matnr,"物料号
  werks TYPE mardh-werks,"工厂
  jszzt LIKE mardh-labst,"周转天
  color TYPE lvc_t_scol,"单元格颜色
END OF gs_out.
DATA:wa_out LIKE gs_out,
     gt_out LIKE TABLE OF gs_out.

loop at gt_out into wa_out.
"期间耗用量为0(准呆滞物料),或周转天>系统周转天,周转天显示为红色
    IF wa_data-erfmg = 0 OR wa_data-jszzt > wa_data-jhzzt.
      DATA: ls_color TYPE lvc_s_scol.
      ls_color-fname = 'JSZZT'."周转天字段
      ls_color-color-col = '6'.
      ls_color-color-int = '1'.
      ls_color-color-inv = '0'.
      ls_color-nokeycol = 'X'."覆盖码颜色
      APPEND ls_color TO wa_data-color.
    ENDIF.
ENDLOOP.

*ALV部分
 wa_layout-coltab_fieldname = 'COLOR'."此处需要设置
 wa_layout-zebra = 'X'.
 wa_layout-colwidth_optimize = 'X'.

color-col:

0:灰色         1:蓝色         3:黄色           5.绿色           6.红色

7:橙色         8:无色

2.    当某一个字段满足某一条件时,需要该条数据全部显示为红色。代码如下:

DATA:BEGIN OF gs_out,
  matnr TYPE ekpo-matnr,"物料号
  werks TYPE mardh-werks,"工厂
  jszzt LIKE mardh-labst,"周转天
  color type c length 4,"改行数据的颜色
END OF gs_out.
DATA:wa_out LIKE gs_out,
     gt_out LIKE TABLE OF gs_out.

loop at gt_out into wa_out.
"期间耗用量为0(准呆滞物料),或周转天>系统周转天,周转天显示为红色
    IF wa_data-erfmg = 0 OR wa_data-jszzt > wa_data-jhzzt.
      wa_data-color = 'C600'.
    ENDIF.
ENDLOOP.

*ALV部分
 wa_layout-info_fieldname = 'COLOR'."此处需要设置(与上方不同)
 wa_layout-zebra = 'X'.
 wa_layout-colwidth_optimize = 'X'.

       

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值