ABAP ALV中的颜色设置

ABAP ALV中的颜色设置,第1张

行颜色及单元格颜色设置需要在ALV的显示内表中设置两个字段:

然后在布局中设置:

最后在ALV显示之前根据需求进行颜色的设定:

对于 列颜色 的设置就比较简单了,直接在gt_fieldcat中做处理即可:

另外附上SAP的颜色编码:SAP中的颜色编码是由4位Cxyz组成的

C:color的简写,颜色编码均以C开头

x:标准色码,SAP中一共有7个标准色

y:反转颜色,启用/关闭 1/0

z:增强颜色,启用/关闭 1/0

标准色码一览表

WRITE:/00 ITAB1-MATNR COLOR = N,

/05 ITAB1-NAME COLOR = N,

/10 ITAB1-MONTH COLOR = N,

你这是ALV里面的fieldcat哈

你写的也没错

把注释行恢复

edit那个改成 &2

后面的&1,&2.都+2

不过一般也就一个chebox

checkbox没必要给一个&X

要不然后面调用宏的时候

每一列多一个值

给你看看我写的

DEFINE setfieldcat.

  l_pos = l_pos + 1.

  wa_fieldcat-col_pos = l_pos.

  wa_fieldcat-fieldname = &1.

  wa_fieldcat-scrtext_l = &2.

  wa_fieldcat-scrtext_m = &2.

  wa_fieldcat-scrtext_s = &2.

  wa_fieldcat-just = &3.

  if wa_fieldcat-fieldname = 'MATNR'.

    wa_fieldcat-no_zero = 'X'.

  endif.

  if wa_fieldcat-col_pos = 1.

    wa_fieldcat-edit = 'X'.               " 可编辑

    wa_fieldcat-checkbox = 'X'.           "单选框

    wa_fieldcat-hotspot = 'X'.

  endif.

  if wa_fieldcat-col_pos = 2.

    wa_fieldcat-emphasize = 'C310'.      "列的颜色

  endif.

  if wa_fieldcat-fieldname eq 'ICON'.

    wa_fieldcat-icon = 'X'.

  elseif wa_fieldcat-fieldname eq 'SYMBOL'.

    wa_fieldcat-symbol = 'X'.

  endif.

  append wa_fieldcat to gt_fieldcat.

  clear: wa_fieldcat.

END-OF-DEFINITION.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11729696.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存