ALV部分单元格可编辑控制

1、在内表中定义字段style TYPE lvc_t_styl,它是内表,用来控制不可编辑;

2、设置单元格所在列为可编辑的fieldcat-edit = 'X';

3、在layout结构中设定控制不可编辑字段的名字,FM(REUSE_ALV_GRID_DISPLAY_LVC,其他函数不行)或者OO:wa-layout-stylefname= 'STYLE';

4、在内表循环中给该字段赋值(控制不可编辑),将不符合条件的数据设置成不可编辑,通过STYLE=CL_GUI_ALV_GRID=>MC_STYLE_DISABLED实现。

  DATAls_fieldcat_9000 TYPE lvc_s_fcat,
        ls_style         TYPE lvc_s_styl,
        lt_style         TYPE lvc_t_styl.

  LOOP AT pt_out WHERE bstnk IS INITIAL.
    READ TABLE pt_fieldcat_9000 INTO ls_fieldcat_9000 WITH KEY fieldname 'BSTNK'.
    IF sy-subrc EQ 0.
      ls_style-fieldname 'YBFSJJE'.
      ls_style-style cl_gui_alv_grid=>mc_style_disabled.
      APPEND ls_style TO lt_style.
      pt_out-style lt_style.
      MODIFY pt_out TRANSPORTING style.
      CLEAR ls_style.
      REFRESHlt_style.
    ENDIF.
  ENDLOOP.

5、调用REUSE_ALV_GRID_DISPLAY_LVC显示。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值