跳过SLT中的删除记录

2020-08-22 22:36发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的人们, 我需要在SLT中...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


亲爱的人们,

我需要在SLT中捕获删除的图像/记录。 我们不想删除目标HANA数据库中已在源中删除的记录。 并且我们想添加一个新列以状态为目标,无论记录是否在源中被删除。

我也阅读了几乎所有的博客和SAP答案,并且尝试在开发中实现它们。 但是SLT仍然无法捕获删除图像及其从目标中删除的删除记录。

下面是我的包含在"规则分配"下的LTRS中的代码

下面是我在LTRS->"规则分配"中填写的详细信息

表名称:VBRP

规则类型:与字段相关

状态:已发布

分配目标:MANDT

实现:包括具有以下代码的名称。

您能告诉我我在这里想念的吗? 为什么它对我不起作用。

此致

Kamal

 FIELD-SYMBOLS:任意类型,
   TYPE任意,
  键入any。

 将结构的分配组件'IUUC_OPERAT_FLAG'分配到。

 如果sy-subrc = 0并且 ='D'。
   ='U'。
 将结构的组件'ZDELETE'分配给。
 如果sy-subrc = 0。
   ='X'。
 万一。
 ENDIF。
4条回答
绿领巾童鞋
2020-08-22 23:15

嗨,

同时有可能和不可能。

首先,您离成功仅一步之遥:)

您必须创建
正确的脚本如下所示:

 FIELD-SYMBOLS:
   TYPE任意,
  键入any。

 将结构的分配组件'IUUC_OPERAT_FLAG'分配到。

 如果sy-subrc = 0并且 ='D'。
   将结构的分配组件'IUUC_OPERAT_FLAG'分配到 ='U'。
   将结构的组件'ZDELETE'分配给。
   如果sy-subrc = 0。
      ='X'。
   万一。
 ENDIF。

第二个主要问题是,当您在目标中将操作从" D"更改为" U"时,将执行UPDATE。 但是,当您执行删除操作时,触发器仅将键写入日志表中。 这意味着在记录中仅填充了关键字段。 在目标中,仅将填充FIELD'ZDELETE',所有其他字段将使用空值进行更新。

没有机会跳过对所有其他字段的更新。 仅可能从目标读取记录并使用当前值初始化所有其他字段。 但是,当然,这会降低性能。

一周热门 更多>