SP TN上的查询帮助-在不满足预定义条件时阻止

2020-09-27 15:05发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我需要有关TN SP的帮...

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

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


嗨,

我需要有关TN SP的帮助,要求如下:

1)我已经在商品主数据中创建了一个UDF,其值为" YES"/" NO"
2)有两个唯一的商品,分别名为" NOTE"和" Battery"。3)创建SO时, UDF值为YES的项目应以相同的顺序但名称不同的行后跟名为" NOTE"或" Battery"的项目,否则将被阻止

示例如下:

UDF值为" YES"的项目= ITEM001,ITEM002,ITEM003
UDF值为" NO"的项目= ITEM004,ITEM005,ITEM006

条件一:
SO#001
行1:ITEM001
行2:注意
结果:已通过

条件二:
SO#002
行1:ITEM001
行2:电池
结果:已通过

条件三:
SO#003
第1行:ITEM001
第2行:电池/注意
第3行:ITEM005
结果:通过

第4条:
SO#004
第1行:ITEM004
第2行:ITEM006
结果:已通过

条件五:
SO#005
第1行:ITEM004
第2行:ITEM001
结果:阻止

我的查询如下,但不符合我的要求 要求

如果@object_type ='17'并且@transaction_type in('A','U')

开始

如果存在

(从RDR1中选择T0.ItemCode T0内连接ORDR T1上T0.DocEntry = T1.DocEntry内连接OITM T2上T0.ItemCode = T2.ItemCode

其中T0.ItemCode!='注意'或T0.ItemCode!='电池'和T2.U_BATTERY ='是'并且T0.DocEntry=@list_of_cols_val_tab_del)

开始

SET @error = 999

SET @error_message ='001'

END

END

9条回答
打个大熊猫
2020-09-27 15:54 .采纳回答

嗨,奥尔加,

我创建了一个像您这样的环境,并且测试了您提到的所有方案,并且此查询运行正常。

 IF @object_type ='17'和@  transaction_type in('A','U')
 开始
 -首先检查您的udf是否有某些项目等于
 如果(从RDR1 T0内联接OITM T1上的SELECT COUNT(*)T0.ItemCode = T1.ItemCode
 T0.DocEntry = @list_of_cols_val_tab_del AND T1.U_BATTERY ='YES')> 0
 开始
 -然后检查您是否有笔记或电池
 如果(从RDR1 T0选择COUNT(*)
 T0.DocEntry = @list_of_cols_val_tab_del和UPPER(T0.ItemCode)='NOTE'或UPPER(T0.ItemCode)='BATTERY')= 0
 开始
 SET @错误= 999
 SET @error_message ='001'
 结束
 结束
 结束
 

希望对您有所帮助。

亲切的问候

迭戈·拉瑟

一周热门 更多>