点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
Hallo专家,
我需要根据某些条件对某些行进行着色,尽管对某些列和单元格进行着色工作正常,但是对某些行进行着色对我来说根本不起作用,我的编码如下所示,
1。 拾取数据,
在这里,我将与课程一起选择数据 我在这种类型的DATA lts_data类型zz_ts_data中添加了一个名为" COLOR"类型lvc_t_scol的字段。 FIELD-SYMBOLS类似lts_data的行 FIELD-SYMBOLS 类型任何表。 FIELD-SYMBOLS TYPE数据。 zzcl_dd_process => get_instance()-> get_rprts_by_fsel_rng (出口 iv_bukrs = gc_bukrs it_fsel_rng = lt_fsel_rng 输入 ets_data = lts_data)。 循环至lts_data ASSIGNING 。 将初始行插入表 中,并分配 。 将 移动到 。 ENDLOOP。
2。 显示数据,
数据ls_color类型lvc_s_colo。 数据lo_not_fin_acr_ov_alv_cols类型参考cl_salv_columns_table。 数据lo_not_fin_acr_ov_col类型参考cl_salv_column_table。 数据:lt_s_color TYPE lvc_t_scol, ls_s_color类型为lvc_s_scol。 数据ls_color类型lvc_s_colo。 创建对象go_data 出口 container_name ='CON'。 呼叫方法cl_salv_table => factoryEXPORTING r_container = go_data 输入 r_salv_table = go_alv 改变 t_table =。 万一。 *******将红色设置为一列,一切正常************ ls_color-col ='6'。 lo_not_fin_acr_ov_alv_cols = go_not_fin_acr_ov_alv-> get_columns()。 lo_not_fin_acr_ov_col?= lo_not_fin_acr_ov_alv_cols-> get_column('TG_RUN_NO') 。 lo_not_fin_acr_ov_col-> set_color(ls_color)。 *******将颜色设置为行,一切都无法正常工作******** 循环 分配 。 将结构 的组件" BUKRS"分配给 。 将结构 的组件"颜色"分配给 。 如果Bukrs =" 1130"。 ls_s_color-color-col = cl_gui_resources => list_col_positive .. ls_s_color-color-int = 0。 ls_s_color-color-inv = 0。 附录ls_s_color至lt_s_color。 万一。 = lt_s_color。 万一。 从 修改表 。 结局。 go_alv-> display(
正如我提到的那样,对行进行着色完全无效,您的建议受到高度赞赏,
最好的问候
珍妮
还必须使用方法SET_COLOR_COLUMN定义颜色列的名称。
您对SET_COLOR_COLUMN中的"列"一词感到困惑。 这并不表示显示该列,而是表示内部表中用于包含颜色的列。 将列命名为" COLOR"后,就必须
请仔细检查以下线程 ,可能会对您有所帮助。
ALV输出中整行的颜色
下面的代码将在等于1130时查找bukrs值,然后将显示颜色行。
使用字段符号时无需使用"修改内部表"。
请再次检查,让我知道它是否有效
非常感谢!!! ...
一周热门 更多>