SAP alv设置行不可编辑
时间: 2023-08-18 16:07:11 浏览: 247
您可以通过在ALV显示时使用结构字段catalog_id,catalog_type和no_edit来设置行不可编辑。例如,以下是设置ALV行不可编辑的示例代码:
```ABAP
DATA: lr_table TYPE REF TO cl_salv_table.
DATA: lr_columns TYPE REF TO cl_salv_columns_table.
DATA: ls_variant TYPE disvariant.
* 创建ALV表格对象
lr_table = cl_salv_table=>factory( ).
lr_table->set_screen_popup( 'X' ).
* 获取列对象
lr_columns = lr_table->get_columns( ).
* 设置列为只读
lr_columns->set_read_only( abap_true ).
* 创建ALV变量
ls_variant-report = sy-repid.
ls_variant-username = sy-uname.
ls_variant-variant = 'DEFAULT'.
ls_variant-vardescription = 'Default Variant'.
* 显示ALV表格
CALL METHOD lr_table->set_table_for_first_display
EXPORTING
i_structure_name = 'ZMYSTRUCTURE'
is_variant = ls_variant
CHANGING
it_outtab = gt_mydata.
```
在此示例中,`lr_columns->set_read_only( abap_true )`将所有列设置为只读,导致所有行不可编辑。您可以根据需要使用其他条件来设置特定行的只读属性。
阅读全文