REUSE_ALV_GRID_DISPLAY_LVC-可编辑单元格、列可编辑、行可编辑、单位、时间

## REUSE_ALV_GRID_DISPLAY_LVC-可编辑单元格、列可编辑、行可编辑

整个报表可编辑

 gs_layout-edit     = 'X'.       "将整个ALV设置成可编辑

列可编辑

FORM build_fieldcat1 .

  DEFINE %%append_fieldcat .

    CLEAR gs_fcat .
    gs_fcat-col_pos  = &5."列的输出位置
    gs_fcat-fieldname = &1."需要显示内表的哪一个字段
    gs_fcat-outputlen = &2." outputlen列的字符输出宽度
    gs_fcat-scrtext_m = &3. "middle key word标题字段显示的名称(中)
    gs_fcat-key       = &4."是否为关键字
 CASE &1 .

  WHEN 'BEGDA'.
   gs_fcat-dd_outlen = '10'.
   WHEN 'ENDDA'.
   gs_fcat-edit = 'X'."以列为单位可编辑
   gs_fcat-dd_outlen = '10'.
   WHEN 'FKOSTL'.
    gs_fcat-edit = 'X'."以列为单位可编辑
   WHEN 'LTEXT'.
   gs_fcat-edit = 'X'."以列为单位可编辑

ENDCASE.
APPEND  gs_fcat  TO  gt_fcat2.
  END-OF-DEFINITION.
  %%append_fieldcat:
*                      'MANDT' '3'  '集团号' 'X',
                           'KOSTL'   '10'  '成本中心' 'X' '1',
                           'BUTXT'   '25' '公司代码'   ' X' '2',
                           'BEGDA'    '8'  '开始日期'   'X ' '3',
                           'ENDDA'    '8' '结束日期'  ' ' '4',
                           'FKOSTL'   '10'  '财务成本中心'   ' ' '5',
                           'LTEXT'  '40'  '财务成本中心名称' ' ' '6'.


ENDFORM.

行可编辑:部分代码

YPES : BEGIN OF ty_output.
          INCLUDE STRUCTURE zhr_fin_cost.
        TYPES:
                  flag1       TYPE c,
                  sel         TYPE c,
                  field_style TYPE lvc_t_styl, “列可编辑
                END OF ty_output.


FORM build_layout2 .
  gs_layout2-cwidth_opt = 'X'."ALV网格(单元格)宽度设置为自动最优化,按输出内容宽度自动调整
  gs_layout2-zebra = 'X'."斑马线
*  gs_layout2-sel_mode = 'A'.
  gs_layout2-box_fname = 'SEL'."定义行的成选择按钮
*  gs_layout2-detail_initial_lines = 'X'."在详细信息里显示出为空的行
*  gs_layout2-window_titlebar = '财务成本中心转换表'."标题
*  gs_layout2-confirmation_prompt = 'X'."退出确认提醒
  gs_layout2-stylefname = 'field_style'.  “列可编辑
*  gs_layout2-edit = 'X'.
ENDFORM.


    WHEN 'ADD_EDIT'.

      CLEAR gs_output.
      gs_output-mandt = sy-mandt.
      gs_output-flag1 = 'X'.

      CLEAR stylelin .
      stylelin-fieldname = 'BEGDA'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      CLEAR stylelin .
      stylelin-fieldname = 'BUTXT'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      CLEAR stylelin .
      stylelin-fieldname = 'ENDDA'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      CLEAR stylelin .
      stylelin-fieldname = 'FKOSTL'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      stylelin-fieldname = 'KOSTL'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      CLEAR stylelin .
      stylelin-fieldname = 'LTEXT'. "
      stylelin-style = cl_gui_alv_grid=>mc_style_enabled .
      APPEND stylelin TO gs_output-field_style.

      APPEND gs_output TO gt_output.

单元格可编辑



TYPES:BEGIN OF gty_ekko,
        ebeln TYPE ekko-ebeln,
        verkf TYPE ekko-verkf,
        style TYPE lvc_t_styl,  "将该字段设置为保存编辑状态的字段
      END OF gty_ekko.

  gwa_edit-fieldname = 'EBELN'.
  gwa_edit-style = cl_gui_alv_grid=>mc_style_disabled."设置为不可输入
  INSERT gwa_edit INTO TABLE git_edit.

gwa_layout-stylefname = 'STYLE'. "指定保存编辑状态的字段名


单位、时间

单位

GS_FIELDCAT_LVC-DATATYPE = 'DATS'.	"日期

"类似的用法
GS_FIELDCAT_LVC-DATATYPE = 'CURR'.		"金额类型
GS_FIELDCAT_LVC-DATATYPE = 'QUAN'		"计量单位
GS_FIELDCAT_LVC-INTTYPE = 'C'.

"也可设置参照字段属性
GS_FIELDCAT_LVC-REF_FIELD = FIELD_NAME.
GS_FIELDCAT_LVC-REF_TABLE = TABLE_NAME.

时间

GS_FIELDCAT-DATATYPE = 'DATS'.
GS_FIELDCAT-INTTYPE = 'D'.
GS_FIELDCAT-REF_TABLE = 'LIKP'.
GS_FIELDCAT-REF_FIELD = 'LFDAT'.

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值