变型配置-多重值特征

2020-09-18 03:28发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) SAP专家您好! ...

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

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


SAP专家您好!

我正在处理多值特征,我真的很感谢任何帮助。

我们以具有5个可能值的CHAR多值特征为例。

特征名称:MACHINING

可能的值:切割,焊接,螺纹M12,螺纹M16,螺纹M20。

是否有可能使用户只能选择THREAD版本之一。 例如,用户可以选择切割,焊接和螺纹M12。 或切割,焊接和螺纹M20。 用户也可以只选择一种螺纹,而无需剪切或/和焊接。

感谢您的回答和建议

祝你有美好的一天!

Primoz

6条回答
SAP砖家
2020-09-18 03:56 .采纳回答

你好 Primoz

可能的解决方案是使用"用户定义函数"来检查用户选择的值,如果选择了多个THREAD,则会返回一条消息。

这里是示例,刚刚在我的沙箱系统中尝试过:

正如所说的,这是通过"用户定义函数"到达的,这里是代码:

 FUNCTION z_check_machining。
 *" ------------------------------------------------  ----------------------
 *" *"本地接口:
 *"正在导入
 *"参考(全球)类CUOV_00结构CUOV_00
 *"表格
 *"查询结构CUOV_01
 *"匹配结构CUOV_01
 *"例外情况
 *"失败
 *"      内部错误
 *" ------------------------------------------------  ----------------------

   TYPE-POOLS:Cudbt。
   数据:w_instance TYPE cudbt_instance,
         i_machining TYPE cudbt_vallist,
         l_val TYPE cudbt_val,
         l_count类型i。

   如果globals-self是INITIAL的话。
     w_instance = 1。
   其他。
     w_instance =全局自身。
   万一。

   通话功能" CUPR_GET_VALLIST"
     出口
       实例= w_instance
       特征="加工"
     输入
       值= i_machining
     例外情况
       unknown_instance = 1
       unknown_characteristic = 2
       not_multivalued = 3
       not_found = 4
       internal_error = 5
       其他= 6。
   如果sy-subrc <> 0。
 *消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
 *与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
   万一。

   清除l_count。
   在i_machining INTO l_val中循环。
     如果l_val-atwrt CS为'THREAD'。
       向l_count加1。
     万一。
   结局。
   如果l_count> 1。
     带有"选择了多个螺纹值"的消息i302(cx)。
   万一。

 ENDFUNCTION。

功能界面仅是MACHINING特性,如下所示:

该函数由依赖项(过程)调用,如下所示:

代码:

功能Z_CHECK_MACHINING(
                   机械加工= $ self.MACHINING
                                               )。

此依赖性可以添加到配置概要文件中,也可以添加到特征本身中。

请检查是否可以满足您的要求。 如有任何疑问,请随时提问。

非常感谢和问候,

Flavio

一周热门 更多>