【问题标题】:How to check when data is changed in ALV specific field? [duplicate]如何检查 ALV 特定字段中的数据何时更改? [复制]
【发布时间】:2020-12-03 16:10:23
【问题描述】:

我需要检查我的 ALV 中设置为可编辑的字段,当它被更改时。

这是我的fieldcat,相关字段设置为可编辑:

  CLEAR wfieldcat.
  wfieldcat-fieldname     = 'PERDEVA'.
  wfieldcat-ref_fieldname = 'PERDEVA'.
  wfieldcat-ref_tabname   = 'IT_DEVALUATS'.
  wfieldcat-seltext_s     = 'Devaluat'.
  wfieldcat-seltext_m     = 'Devaluat'.
  wfieldcat-seltext_l     = 'Devaluat'.
  wfieldcat-ddictxt       = 'M'.
  wfieldcat-edit          = 'X'.            "<==========
  APPEND wfieldcat TO p_fieldcat.

一旦字段被用户更改,我需要检查一些值的条件,如果它们没有完成,只需调用我自己的refresh 表单。

可能有一些功能模块或方法可以做到这一点,但我发现的每个文档都指的是 S/4HANA,而我正在使用 R/3。

编辑: 正如我在 cmets 中所说,“CHECK_CHANGED_DATA”是我一直在寻找的功能模块,@Suncatcher 通过正确使用 example 来提供威胁。

【问题讨论】:

  • 好的,我发现CHECK_CHANGED_DATA 的方法是一种可能的解决方案。我将尝试实现它
  • 也许这对你有帮助ALV grid edit events
  • @Suncatcher 谢谢!有我需要的例子:)

标签: abap sap-erp


【解决方案1】:

您应该看到演示程序,转到 SE38 tcode,您可以编写 BALV* 或 BCALV* 按 f4。您可以查看 check_changed_data 实现示例。

【讨论】:

  • 确切地说:BCALV_EDIT_03 - 验证修改后的单元格。但无论如何,这个示例集合确实是一个很好的起点,并在代码中进行了解释。
  • provide context for links,即简要说明这些演示程序如何解决OP问题。
  • 请注意,这个问题是一个重复的问题(正如 Suncatcher 已经注意到的那样),我刚刚在另一个问题/答案中添加了一个最小的可重现示例,以演示此方法如何工作(不是最佳的,但在最少)。
  • @SandraRossi 是的,那个帖子就是我要找的 :)
猜你喜欢
  • 2013-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多