WDA ALV组件中的TOOLBAR是ON_FUNCTION事件

在ALV中添加自定义按钮

* table toolbarDATA:LO_FUN_CALL  TYPE REF TO CL_SALV_WD_FUNCTION,LO_BTN_CALL  TYPE REF TO CL_SALV_WD_FE_BUTTON.LO_FUN_CALL = WD_THIS->ALV_CONFIG_TABLE->IF_SALV_WD_FUNCTION_SETTINGS~CREATE_FUNCTION( 'BT_MODI' ).CREATE OBJECT LO_BTN_CALL.LO_BTN_CALL->SET_TEXT( '修改' ).LO_BTN_CALL->SET_IMAGE_SOURCE( VALUE = '~Icon/ChangeNumber' ).LO_FUN_CALL->SET_EDITOR( LO_BTN_CALL ).

自定义的按钮触发ON_FUNCTION事件

WDA ALV中修改单元格,和REPORT中的方法类似,需要在内表中添加一个字段‘’来控制字段是否可修改,‘true’的时候不可修改,‘false’不可修改

  DATA: LR_INPUT_FIELD TYPE REF TO CL_SALV_WD_UIE_INPUT_FIELD.DATA: LT_COLUMNS TYPE SALV_WD_T_COLUMN_REF,LS_COLUMNS TYPE SALV_WD_S_COLUMN_REF.
* define UI elementDATA: LC_INPUT  TYPE REF TO CL_SALV_WD_UIE_INPUT_FIELD.
* define column headerDATA: LC_COLUMN_HEADER TYPE REF TO CL_SALV_WD_COLUMN_HEADER.
* set columns tableLT_COLUMNS =  WD_THIS->ALV_CONFIG_TABLE->IF_SALV_WD_COLUMN_SETTINGS~GET_COLUMNS( ).LOOP AT LT_COLUMNS INTO LS_COLUMNS.LR_COLUMN = LS_COLUMNS-R_COLUMN.CASE LS_COLUMNS-ID.WHEN 'CARRID'.CREATE OBJECT LR_INPUT_FIELD EXPORTING VALUE_FIELDNAME = LS_COLUMNS-ID.LR_INPUT_FIELD->SET_READ_ONLY_FIELDNAME( VALUE = 'ZFG_MODI' ).LR_COLUMN->SET_CELL_EDITOR( LR_INPUT_FIELD ).WHEN 'CONNID'.CREATE OBJECT LR_INPUT_FIELD EXPORTING VALUE_FIELDNAME = LS_COLUMNS-ID.LR_INPUT_FIELD->SET_READ_ONLY_FIELDNAME( VALUE = 'ZFG_MODI' ).LR_COLUMN->SET_CELL_EDITOR( LR_INPUT_FIELD ).WHEN 'CITYTO'.CREATE OBJECT LR_INPUT_FIELD EXPORTING VALUE_FIELDNAME = LS_COLUMNS-ID.LR_INPUT_FIELD->SET_READ_ONLY_FIELDNAME( VALUE = 'ZFG_MODI' ).LR_COLUMN->SET_CELL_EDITOR( LR_INPUT_FIELD ).WHEN OTHERS.ENDCASE.ENDLOOP.

添加修改逻辑

METHOD BUTN_FUNC .CASE R_PARAM->ID.WHEN 'BT_MODI'.
*       get message managerDATA LO_API_CONTROLLER     TYPE REF TO IF_WD_CONTROLLER.DATA LO_MESSAGE_MANAGER    TYPE REF TO IF_WD_MESSAGE_MANAGER.LO_API_CONTROLLER ?= WD_THIS->WD_GET_API( ).CALL METHOD LO_API_CONTROLLER->GET_MESSAGE_MANAGERRECEIVINGMESSAGE_MANAGER = LO_MESSAGE_MANAGER.*       report messageCALL METHOD LO_MESSAGE_MANAGER->REPORT_SUCCESSEXPORTINGMESSAGE_TEXT              = 'BT_CALL 测试 SUCCESS'
*          PARAMS                    =
*          MSG_USER_DATA             =
*          IS_PERMANENT              = ABAP_FALSE
*          SCOPE_PERMANENT_MSG       = CO_MSG_SCOPE_CONTROLLER
*          VIEW                      =
*          SHOW_AS_POPUP             =
*          CONTROLLER_PERMANENT_MSG  =
*          MSG_INDEX                 =
*          CANCEL_NAVIGATION         =
*          ENABLE_MESSAGE_NAVIGATION =
*          COMPONENT                 =
*        RECEIVING
*          MESSAGE_ID                =.DATA:LO_ND_GTALV_SPFLI     TYPE REF TO IF_WD_CONTEXT_NODE,LT_EL_GTALV_SPFLI     TYPE WDR_CONTEXT_ELEMENT_SET,LO_EL_GTALV_SPFLI     TYPE REF TO IF_WD_CONTEXT_ELEMENT,LS_GTALV_SPFLI        TYPE WD_THIS->ELEMENT_GTALV_SPFLI,LT_GTALV_SPFLI        TYPE WD_THIS->ELEMENTS_GTALV_SPFLI.DATA:LV_ISERROR TYPE ABAP_BOOL.LO_ND_GTALV_SPFLI = WD_CONTEXT->GET_CHILD_NODE( NAME = WD_THIS->WDCTX_GTALV_SPFLI )."获取选择行数据LT_EL_GTALV_SPFLI = LO_ND_GTALV_SPFLI->GET_SELECTED_ELEMENTS( INCLUDING_LEAD_SELECTION = ABAP_TRUE ).LOOP AT LT_EL_GTALV_SPFLI INTO LO_EL_GTALV_SPFLI.CLEAR: LS_GTALV_SPFLI.LO_EL_GTALV_SPFLI->GET_STATIC_ATTRIBUTES(  IMPORTING STATIC_ATTRIBUTES = LS_GTALV_SPFLI ).LS_GTALV_SPFLI-ZFG_MODI  = ABAP_FALSE.LO_EL_GTALV_SPFLI->SET_STATIC_ATTRIBUTES(  STATIC_ATTRIBUTES = LS_GTALV_SPFLI ).ENDLOOP.WHEN OTHERS.ENDCASE.
ENDMETHOD.

WDA ALV组件复用自定义button,单元格修改相关推荐

  1. EasyExcel导出自定义合并单元格文件

    目标 需要使用阿里的EasyExcel库来导出excel,并要自定义合并单元格. 思路 这里自定义的CellWriteHandler需要将数据进行如下处理: 1.Excel每一行数据必须对应一个对象: ...

  2. easyexcel 列头合并_2020-05-19:EasyExcel自定义合并单元格

    public static void writeExcelWithHeadAndData(OutputStream outputStream, List> head, List> body ...

  3. Web中的EasyExcel导出Excel(不创建对象且自定义合并单元格策略)

    Web中的EasyExcel导出Excel(不创建对象且自定义合并单元格策略) 适用于多张表(只查单表数据就用创建对象那种方法) Controller @RequestMapping(value = ...

  4. 【实用】ABAP ALV单元格修改信息提示

    ABAP日常开发中经常会用到ALV OO(CL_GUI_ALV_GRID)进行清单显示,其中对指定单元格进行操作也是日常必备技能,比如下图中的需求,对指定单元格的"原因代码"列进行 ...

  5. ALV列、行、单元格颜色设置

    1)颜色含义 1:海蓝:2:浅清:3:黄色:4:浅蓝:5:青色:6:红色:7:橙色. (1)首位为主颜色: (2)次位为辅助颜色: (3)末位为0时,表示首位数字表为表格的底色: 末位为1时,则表示以 ...

  6. XSSFWorkbook 设置单元格样式_这个 Excel 技巧太实用了,如何快速套用自定义的单元格样式?...

    今天的推文,主要目的是教大家一个鲜有人知道,却又非常实用的技巧. 我们在日常工作中经常需要将数据表的字体.颜色等调整成统一的样式,如果需要设置的数据表比较多,当然不能每次都重复劳动,那么一般人怎么操作 ...

  7. 教你把ElementTable单元格的四个角变圆/自定义特定单元格样式

    自定义单元格样式 <el-table:cell-style="setSellStyle" > </el-talbe> 用setSellStyle这个方法去控 ...

  8. sap abap alv 实现某行,单元格可编辑与不可编辑 REUSE_ALV_GRID_DISPLAY_LVC

    在使用ALV显示列表的过程中,我们可以使用IT_FIELDCAT参数设置某一个字段的可编辑状态.但是,要设置具体的单元格的可编辑状态对于对ALV不是很了解的人来说是一个头大的问题. 具体单元格可编辑状 ...

  9. easyexcel导出excel自定义合并单元格【动态表头和动态数据均可以自由合并】

    网上合并单元格的博客还是很多的,大家自行舍取吧.本文主要讲解固定与不固定的表头和内容如何合并 参考官网 https://easyexcel.opensource.alibaba.com/docs/cu ...

最新文章

  1. 「倒计时」2021年移动云 API 应用创新开发大赛,你居然还没报名?!
  2. 考研常识:研究生单独考试是什么意思?
  3. Matlab 中常用的直线与点形表示属性
  4. reactjs ref属性:字符串类型的ref和createRef
  5. Javascript中的时间小议
  6. Taro+react开发(68):页面数据太长不走url走localstorage
  7. 如果你也在学python,准备要学习python,希望这篇文章对你有用。
  8. zend 安装php 5.6,CentOS7.0+Zend Guard Loader for PHP 5.6环境搭建
  9. 使用libevhtp搭建HTTPS SERVER(单向验证身份)
  10. 手写SpringIOC注解版本
  11. 深入浅出mysql数据开发_深入浅出MySQL数据库开发、优化与管理维护 PDF扫描版[513KB]...
  12. t分布 u分布 卡方分布_F分布、t分布、正太分布与卡方分布的联系与区别
  13. ubuntu 网易云音乐安装
  14. 架构 BitTorrent BT服务器
  15. HTL6033是一款专用于3串锂电池或聚合物电池的保护芯片
  16. Linux系统用户详细介绍
  17. 【全】可供选择的软件开源协议的罗列
  18. Java根据IP返回 省市,
  19. 绿色节能环保 开启低碳生活
  20. 前端页面----昵图网(简单版)

热门文章

  1. md5校验 java_Java MD5校验
  2. 实现协程的方式及协程的意义 【笔记】
  3. AES破解实践1:某江
  4. faster-rcnn原理介绍
  5. 绩效跃升地图读书笔记20130618
  6. genymotion虚拟机网络设置_genymotion模拟器怎么联网 genymotion联网方法图文教程
  7. case when常见用法分析
  8. tf.stack() 详解
  9. 实现文字的无缝滚动、间歇性向上翻滚
  10. java thumbnails 内存_Java图片处理 Thumbnails框架