0

更新通知后,我想在表 VIQMEL 中插入受影响的设备 (BEQUI) 和功能位置 (BTPLN)。我阅读了一些提到用户出口 EXIT_SAPLIQS0_017 的主题。但是,我从未见过它的实现,我的也不起作用。

这是迄今为止尝试过的;我知道这是非常基本的,但我对用户出口非常缺乏经验。

  data: ls_notif  type viqmel.
  data: lt_qmfe   type table of wqmfe.
  data: lt_qmur   type table of wqmur.
  data: lt_qmma   type table of wqmma.
  data: lt_qmsm   type table of wqmsm.

  select single * from viqmel into @data(ls_viqmel) where qmnum eq '000010000719'.
  select single * from tq80 into @data(ls_tq80) where qmart eq @ls_viqmel-qmart.

  ls_viqmel-bequi = '1000069'.
  ls_viqmel-btpln = '1010'.

  call function 'EXIT_SAPLIQS0_017'
    exporting
      i_viqmel = ls_viqmel
      i_tq80   = ls_tq80
    importing
      e_viqmel = ls_notif
    tables
      t_viqmfe = lt_qmfe
      t_viqmur = lt_qmur
      t_viqmma = lt_qmma
      t_viqmsm = lt_qmsm.

我得到了 viqmel 结构,但是当我检查 VIQMEL 表时似乎没有任何改变。有任何想法吗?

4

2 回答 2

3

正如 Sandra 正确指出的那样,您不直接调用出口,而是实现它们。

  1. create ZXWOCU21include where 只写这两行代码

    e_viqmel-bequi = '1000069'.
    e_viqmel-btpln = '1010'.
    

您不应该手动填充参数(如tq80),默认情况下它们是由系统预先填充的。

  1. 在 CMOD tcode(如果不存在)中为QQMA0025包含您的用户出口的增强组件创建项目并激活它。这是手册

在 ABAP 中使用 CMOD 为 SAP 用户出口功能创建增强项目

于 2019-06-05T12:15:43.330 回答
1

您可以从EXIT_SAPLIQS0_017. 如果有人已经实现它(或将其分配给他(她),最好在注释行中添加为什么添加以及放置逻辑的位置。

从 ABAP 方面,基本上你在你的包中实现这个 Z 包含。当您双击它时,GUI(或 Eclipse)将导航它或给您一个弹出窗口(您会创建它吗?)

如何查找很简单,您可以使用cmodorsmod作为标准,但您已经知道出口名称,请尝试 transaction code SE37。填写EXIT_SAPLIQS0_017并检查INCLUDE z...内部。

于 2019-06-04T12:21:52.127 回答