`

如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色

UP 
阅读更多
在ALV报表设计有时候需要根据一定条件将特定的单元显示成特定的颜色,具体实现步骤如下:

1. 在需要显示的内表中添加新的字段,字段类型为lvc_t_scol
2. 根据条件设置颜色数据;
3. 设置layout-coltab_fieldname的数据指定显示颜色的字段.
代码如下:(注意红色部分)
REPORT  z_alv_color.
TYPE-POOLS: slis.
DATA: BEGIN OF it_flight OCCURS 0,
       carrid  LIKE sflight-carrid,
       connid   LIKE sflight-connid,
       fldate   LIKE sflight-fldate,
       seatsmax LIKE sflight-seatsmax,
       seatsocc LIKE sflight-seatsocc,
       color TYPE lvc_t_scol,
      END OF it_flight.
DATA: it_fieldcat TYPE  slis_t_fieldcat_alv,
      layout TYPE  slis_layout_alv.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
  EXPORTING
    i_program_name         = sy-repid
    i_internal_tabname     = 'IT_FLIGHT'
    i_inclname             = sy-repid
  CHANGING
    ct_fieldcat            = it_fieldcat
  EXCEPTIONS
    inconsistent_interface = 1
    program_error          = 2.

SELECT  carrid
       connid
       fldate
       seatsmax
       seatsocc
FROM sflight
INTO CORRESPONDING FIELDS OF TABLE it_flight
UP TO 20 ROWS.
DATA: col TYPE lvc_s_scol,
      coltab TYPE lvc_t_scol,
color TYPE lvc_s_colo.
color-col = '6'.
color-int = '0'.
color-inv = '0'.
LOOP AT it_flight.
  IF it_flight-seatsocc Eq 0.
    col-fname = 'SEATSOCC'.
    col-color = color.
    APPEND col TO coltab.
    CLEAR col.
    it_flight-color = coltab.
    MODIFY  it_flight.
ENDIF.
ENDLOOP.
layout-coltab_fieldname = 'COLOR'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    i_callback_program = sy-repid
    is_layout          = layout
    it_fieldcat        = it_fieldcat
  TABLES
    t_outtab           = it_flight
  EXCEPTIONS
    program_error      = 1.
分享到:
评论

相关推荐

    REUSE_ALV_GRID_DISPLAY超详细讲解

    REUSE_ALV_GRID_DISPLAY超详细讲解 REUSE_ALV_GRID_DISPLAY是一个功能强大的ABAP函数模块,主要用于在ABAP程序中显示ALV网格控件。该函数模块提供了大量的参数和事件,使得开发者可以根据需要自定义ALV网格控件的...

    REUSE_ALV_FIELDCATALOG_MERGE注意点.docx

    在 SAP 开发环境中,"REUSE_ALV_FIELDCATALOG_MERGE" 是一个非常重要的函数,用于合并和创建用于 ALV (ABAP List Viewer) 输出的字段目录。然而,在使用这个函数时,可能存在一些陷阱和注意事项,导致程序出错或者...

    abap-ALV.rar_ABAP系统ALV_abap_abap开发alv

    描述中提到“ABAP ALV总结,ALV格式,REUSE_ALV_GRID_DISPLAY_LVC函数使用”,这表明我们将重点关注ALV的基本概念、数据格式以及如何通过REUSE_ALV_GRID_DISPLAY_LVC函数来实现ALV的显示。 ALV格式通常涉及如何组织...

    ABAP_ALV_知识整理

    - **调用REUSE_ALV_GRID_DISPLAY**: 使用此函数模块来创建标准ALV网格显示。 - **设置列属性**: 设置列的标题、宽度、对齐方式等。 - **设置数据源**: 指定数据源表。 - **设置排序**: 可以设置默认排序规则。 **...

    ABAP开发ALV中自定义按钮实现

    总结来说,自定义ALV按钮的关键在于理解GUI状态的概念,以及如何通过`SET PF-STATUS`和`CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'`的参数设置来控制这些状态。同时,编写响应事件的处理程序是实现按钮功能的核心。...

    abap_alv工具栏修改

    - **参数传递**: 调用`REUSE_ALV_GRID_DISPLAY`时,除了设置`I_CALLBACK_PF_STATUS_SET`外,还需传递`I_CALLBACK_PROGRAM`参数,该参数应设置为当前程序的名称。 - **调试**: 在开发过程中,建议使用调试工具逐步...

    SAP ALV标准范例

    * BALVSD11:使用了REUSE_ALV_FIELDCATALOG_MERGE和REUSE_ALV_LIST_DISPLAY等FM。 * BALVHD01:使用了REUSE_ALV_VARIANT_DEFAULT_GET、REUSE_ALV_FIELDCATALOG_MERGE、REUSE_ALV_EVENTS_GET等FM,用于显示分级层次式...

    ALV常用参数的详细描述1

    CALL FUNCTION \'REUSE_ALV_GRID_DISPLAY\' EXPORTING i_interface_check = \'\' 接口一致性检查 i_callback_program = sy-repid 当前程序名 is_layout = is_layout 输出样式 it_fieldcat = fieldcat[] 字段...

    SAP ALV Grid资料整理 (很全面)

    在实现 ALV Grid 时,我们需要使用 CL_GUI_GRID 类来实现 ALV Grid 控件的各种功能,还可以使用 REUSE_ALV 模块来实现 ALV 报表。 ALV Grid 是一种功能强大且灵活的工具,用于创建交互式报表,可以满足不同的业务...

    SAP ALV报表开发指南.pdf

    在ALV报表开发中,需要了解相关的函数,例如REUSE_ALV_GRID_DISPLAY函数、REUSE_ALV_COMMENTARY_WRITE函数、REUSE_ALV_EVENTS_GET函数、REUSE_ALV_FIELDCATALOG_MERGE函数等,这些函数可以帮助开发者更方便地实现...

    ABAP中的ALV操作

    - `CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'`: 调用标准函数来显示ALV网格,并传递容器名称和数据表。 2. **ALV的列布局设置**: - `DATA: WA_LAYOUT TYPE LVC_S_LAYO`: 创建一个`LVC_S_LAYO`类型的变量来存储列...

    SAP ABAP ALV分页显示

    3. **ALV调用**:通过调用函数`REUSE_ALV_GRID_DISPLAY`来显示`IT_ZZP2`中的数据。此函数接收多个参数,包括字段目录(`IT_FIELDCAT`)、回调程序ID(`GD_REPID`)以及输出表(`T_OUTTAB`)等。 4. **分页控制**:使用`SET...

    SAP OO ALV技术介绍.pptx

    OO ALV技术相比于标准函数REUSE_ALV_GRID_DISPLAY和REUSE_ALV_GRID_DISPLAY_LVC具有更多的灵活性和可扩展性,可以满足更多的报表需求。 OO ALV技术的实现主要涉及到以下几个方面: 1. 容器类的实例化:通过创建...

    ALV LIST列头合并实例

    - **报告名称**: `ZDEMO_ALV_MERGERHEADER` - **功能**: 此报告旨在展示如何在ABAP环境中实现ALV列表视图的列头合并功能。 ### 使用到的关键表 - **AFKO**: 销售订单抬头数据。 - **AFRU**: 销售订单行项目数据。 ...

    SAP ALV报表开发指南.docx

    例如,REUSE_ALV_GRID_DISPLAY函数可以用于显示GRID风格的报表,REUSE_ALV_COMMENTARY_WRITE函数可以用于写入注释,REUSE_ALV_EVENTS_GET函数可以用于获取事件,REUSE_ALV_FIELDCATALOG_MERGE函数可以用于合并字段...

    SAP ALV功能总结

    #### 一、FUNCTION 'REUSE_ALV_GRID_DISPLAY'概述 在SAP系统中,ALV(Application List Viewer)是用于显示列表数据的强大工具,它不仅支持基本的数据展示,还提供了丰富的自定义选项。本文将重点介绍`REUSE_ALV_...

    最好的ALV文挡(里面包括所有ALV涵数的介绍和运用)有列子说明的!!

    8. **REUSE_ALV_GRID_DISPLAY**:用于显示网格视图,不同于列表视图,网格视图通常提供更紧凑的数据展示。 9. **REUSE_ALV_POPUP_TO_SELECT**:用于打开弹出窗口供用户选择。 要使用这些函数模块,需遵循一定的步骤...

    SAP_ABAP_ALV技术

    1. **激活ALV函数库**:在ABAP程序中包含所需的ABAP类和函数模块,如CL_GUI_ALV_GRID和REUSE_ALV_GRID_DISPLAY。 2. **创建数据结构**:定义用于存储数据库查询结果的数据结构。 3. **填充数据**:执行SQL查询,将...

    ALV EDIT_MASK字段的使用.rar_ABAP EDIT_MASK_ALV EDIT_MASK字段的使用_ALVEDIT

    这通常通过在`CALL REPORT`或`CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'`等语句中使用`SET_EDIT_MASK`方法来实现。例如: ``` DATA: ls_edit_mask TYPE lvc_s_fdef, lv_fieldname LIKE LINE OF it_fieldname. ls...

    ABAP--ALV总结

    在 ABAP 中,可以使用 REUSE_ALV_GRID_DISPLAY_LVC 函数来显示 ALV 报表。在这个函数中,需要指定显示的字段、ALV 的全局属性、数据的显示方式等参数。 1.1 在子 FORM 中指定需要显示的字段 在开发 ALV 报表时,...

Global site tag (gtag.js) - Google Analytics