将 ALV 输出网格中的复选框标记为选中

2023-12-06

我正在使用类创建 ALV 输出网格cl_gui_alv_grid。使用 fieldcatalog 的相应记录将输出表的其中一列定义为复选框:

ls_fcat-checkbox = 'X'.
ls_fcat-edit = 'X'.

enter image description here

对于包含复选框的列的所有记录,它们都设置为未选中。我的问题是我可以实现什么逻辑,以便在显示 ALV 时将某些行的复选框设置为选中状态。


如果您想根据 alv 网格中最初显示的数据设置复选框,只需在条件匹配时用 abap_true (='X') 填写 outtab 复选框字段即可。如果你愿意not使用字段目录的复选框参数,您只会看到“X”表示选中,“ ”表示未选中。

如果要根据用户输入设置复选框,则在编辑 alv 网格中的某些字段后,请使用以下 alv 网格事件来更改 outtab:

METHODS:
      handle_data_changed FOR EVENT data_changed OF cl_gui_alv_grid
        IMPORTING er_data_changed,

      handle_data_changed_finished FOR EVENT data_changed_finished OF cl_gui_alv_grid, "executed only if no errors, outtab holds changed data

我还发现了一些我在处理这些事件时发表的评论

*&---------------------------------------------------------------------*
*&      Method  handle_data_changed
*&---------------------------------------------------------------------*
*      raised when at least one cell is modified in the ALV
*     - modified entries are not stored in gt_outtab yet, but er_data_changed object
*     - mt_good_cells holds every changed field thats valid according to type declaration
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*&      Method  handle_data_changed_finished
*&---------------------------------------------------------------------*
*      - raised when data validation is valid
*      - NOW outtab holds valid changed data
*----------------------------------------------------------------------*
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 ALV 输出网格中的复选框标记为选中 的相关文章

  • 记录一下QM检验批接口,回头补细节

    method ZQM II SI SPCD REC SI SPCD PROCSS INSERT IMPLEMENTATION HERE gt 数据定义部分 TYPES BEGIN OF ty qamv prueflos TYPE qamv
  • SAP BAPI_ACC_DOCUMENT_POST记账码问题

    今天遇见一个问题 使用BAPI ACC DOCUMENT POST过账 或BAPI ACC DOCUMENT CHECK检查数据 时 报错 借 贷标记不一致 刚开始以为是数据的问题 调试后发现数据的借贷平衡 金额也没有问题 联想到记账码是通
  • 如何搜索可用的 RFC 功能模块和表

    我必须承认我不是 SAP R 3 编程方面的专家 所以这更多的是关于这个问题的基本问题 有没有办法获取 SAP 系统上可访问的 RFC 模块和 或表的列表 在互联网上的许多示例中 我发现一个 RFC 模块似乎在每个 SAP 系统上都可用 S
  • CNS0项目创建交货单增加销售办事处

    1 业务需求 1 1 销售办事处介绍 销售办事处是指在企业中负责销售活动的区域性单位或部门 在SD模块中 可以表示企业的不同销售地点 销售办公室 分销中心或分公司 销售办事处扮演着多种角色和职责 例如 销售活动管理 销售办事处负责管理和监控
  • 在ABAP中找到两个数据集的差异?

    我有一组值 foo bar blue 我有一个看起来像这样的表 ID my col 1 foo 2 bar 我想要设置值减去所有可用的 my col 值 foo bar blue 减去 foo bar 结果应该是 蓝色 在ABAP中如何做到
  • 使用正则表达式替换 CSV 中引号之间的逗号

    例如 我们有一个像这样的字符串 COURSE 247 28 4 2016 12 53 Europe Brussels 1 Verschil tussen merk product en leveranciersverantwoordelij
  • CNS0创建交货单没有WBS元素

    1 问题 CNS0创建交货单带不出WBS 但是交货单过账之后 又可以读取到WBS 2 原因 2 1 项目挂料 创建项目挂料时 当物料为通用料 则在网络中挂料时 采购类型为网络预留 当物料为专用料 则在网络中挂料时 采购类型为WBS要素预留
  • SAP搜索帮助的限制值范围样式

    样式一 点击下拉框 输入筛选数据 筛选搜索帮助列表 样式二 点击漏斗 输入筛选数据 筛选搜索帮助列表 参数设置 不同的样式 通过账号的参数设置决定 第一种样式 没有配置F4METHOD 或者配置了参数值为ActiveX 第二种样式 配置了F
  • 如何从 SAP ABAP 系统中提取数据?

    我需要以某种格式从 SAP ABAP 系统中提取数据 然后将其加载到 Oracle 数据库中 xlsx csv dmp 等 提取数据后 我将使用 Pentaho 将其上传到 Oracle 数据库中 有没有办法从SAP中提取数据 我还需要自动
  • 除了使用 CONCATENATE 关键字之外,还有其他连接方法吗?

    有没有另一种方法可以在ABAP中连接而不是使用CONCATENATE keyword http help sap com abapdocu 731 en abapconcatenate shortref htm 一个使用的例子CONCATE
  • 返回范围表。如何?

    我想编写一个返回范围表的函数模块 这可能吗 如果可能的话 如何实现 类型化范围的结构如下 Name Type SIGNT VARV SIGN OPTION TVARV OPTI LOW your type HIGH your type 您可
  • 如何以编程方式判断系统是 R/3 还是 S/4

    是否可以通过代码判断当前系统是R 3还是S 4 我需要它 因为我有一个返回人力资源相关数据的软件组件的方法 但这个组件应该与R 3和S 4系统不同 DATA lv software component mo configuration gt
  • ABAP 对象中的“ADD-CORRESPONDING”相当于什么?

    对于以下可执行程序 存在以下语法错误 OO 上下文中不支持 ADD CORRESPONDING 相当于什么ADD CORRESPONDING在ABAP对象中 REPORT CLASS lcl app DEFINITION FOR TESTI
  • 如何跳过选择屏幕上的必填字段?

    我希望当我单击 Iptal 按钮时它跳过必填字段 但我不想在没有 强制 的情况下控制强制字段 我想在文本框中看到复选标记 例如屏幕截图 通常 当没有必填字段时 Iptal 按钮会调用不同的屏幕 注意 屏幕是标准选择屏幕 我解决这个问题的方法
  • 方法调用作为另一个方法调用的参数?

    我是abap OO 的新手 但之前用java开发过 并编写了一个abap cl caretaker 类 它应该处理数据库表及其本地副本 实习生表 上的操作 我想进行以下方法调用 caretaker gt show table caretak
  • ABAP中调用方法的不同方式

    抱歉这个基本的 ABAP 问题 ABAP中调用方法有哪些不同的方式 他们的 官方 名字是什么 我听说过执行 方法调用和内部 内联方法调用 执行使用PERFORM关键字和方法调用CALL METHOD语法 我猜 但什么是 内部 或 内联方法调
  • ALV网格不刷新

    我的模块池程序中有两个屏幕 屏幕 A 和屏幕 B 屏幕 A 显示 ALV 网格并在工具栏上有 1 个按钮 屏幕 B 也显示 ALV 网格和工具栏上有 1 个按钮 当我按下屏幕 A 上的 显示订单 按钮时 我会被定向到屏幕 B 然后我在屏幕
  • 反序列化匿名 JSON 数组?

    我有一个想要反序列化的匿名数组 这里是第一个数组对象的示例 time 08 55 54 date 2016 05 27 timestamp 1464332154807 level 3 message registerResourcePath
  • 在ABAP中显示消息语句内的变量

    如何在不使用消息类的情况下显示消息语句中的变量 IF acct bal lt min bal MESSAGE customer balance less than minimum Balance gt acct bal TYPE E END
  • 过渡到面向对象的ABAP?

    看来我们大多数 SAP 程序员都在使用旧版本的 ABAP 也就是面向对象之前的版本 我还注意到 面向对象的语言更加干净 更加现代 他们显然借此机会摆脱了不推荐使用的东西 由于该系统尚未推出 因此重新设计的时机宜早不宜迟 是否值得要求将新代码

随机推荐