点击ALV自带的求和会报错
时间: 2023-12-14 10:35:37 浏览: 29
出现这种情况可能是因为您的 ALV 表中包含了一些不支持求和的字段。您可以在定义 ALV 表格时,明确指定哪些字段支持求和,哪些字段不支持求和。
例如,在使用函数 `REUSE_ALV_GRID_DISPLAY` 显示 ALV 表时,可以使用结构体 `LAYOUT` 中的 `GRID_TITLE`、`SUMMARY_FIELDS` 和 `FIELDNAME` 字段来定义表格的标题、支持求和的字段以及所有字段的名称。如果某个字段不支持求和,则需要将其从 `SUMMARY_FIELDS` 中移除。
以下是一个示例代码片段,其中定义了一个支持求和的 ALV 表:
```
DATA: gt_outtab TYPE TABLE OF <your_table_type>,
gs_layout TYPE lvc_s_layo.
* Populate gt_outtab with data ...
* Define the layout of the ALV grid
gs_layout-grid_title = 'My ALV Table'.
APPEND 'FIELD1' TO gs_layout-summary_fields.
APPEND 'FIELD2' TO gs_layout-summary_fields.
APPEND 'FIELD3' TO gs_layout-summary_fields.
APPEND 'FIELD4' TO gs_layout-summary_fields.
APPEND 'FIELD1' TO gs_layout-fieldname.
APPEND 'FIELD2' TO gs_layout-fieldname.
APPEND 'FIELD3' TO gs_layout-fieldname.
APPEND 'FIELD4' TO gs_layout-fieldname.
* Display the ALV grid
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = gt_fieldcat
i_save = 'A'
is_layout = gs_layout
TABLES
t_outtab = gt_outtab.
```
请注意,以上示例代码仅为参考。具体的实现方式可能因您的需求而有所不同。