更改节点值

2020-08-15 21:58发布

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

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


Hello SAP社区

我想对存储在Groovy脚本之前的Content Modifier中的属性值进行修改。

  • 属性名称:PropertyID
  • 属性值(示例):FA163EBCE69E1EDAAF8EE63AFB543D3E

有人可以帮我创建一个脚本吗?

  1. 获取PropertyID值
  2. 将值更改为小写
  3. 在以下位置添加破折号:9、14、19、24(对于此示例,最终值为" fa163ebc-e69e-1eda-af8e-e63afb543d3e")
  4. 将此值保存在新的媒体资源中,以便我在下一步中使用它

非常感谢您的帮助。

此致

最低点

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

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


Hello SAP社区

我想对存储在Groovy脚本之前的Content Modifier中的属性值进行修改。

  • 属性名称:PropertyID
  • 属性值(示例):FA163EBCE69E1EDAAF8EE63AFB543D3E

有人可以帮我创建一个脚本吗?

  1. 获取PropertyID值
  2. 将值更改为小写
  3. 在以下位置添加破折号:9、14、19、24(对于此示例,最终值为" fa163ebc-e69e-1eda-af8e-e63afb543d3e")
  4. 将此值保存在新的媒体资源中,以便我在下一步中使用它

非常感谢您的帮助。

此致

最低点

付费偷看设置
发送
4条回答
haha101010
1楼 · 2020-08-15 22:58.采纳回答

您好,Nadir

看一下这段代码。 我添加了注释,显示了四个步骤的执行位置。

导入com.sap.gateway.ip.core.customdev.util.Message

 def消息processData(消息消息){
     def old = message.getProperty('PropertyID')//1
     def lcase = old.toLowerCase()//2
     def formatted =" $ {lcase [0..7]}-$ {lcase [8..11]}-$ {lcase [12..15]}-$ {lcase [16..19]}-$ {  lcase [20..31]}"//3
     message.setProperty('NewPropertyID',格式化)//4
     返回讯息
 } 

通常我将步骤1和2合并在一起,但是为了使代码与您的步骤保持一致,在这种情况下我没有这么做。

注意

Morten

何必丶何苦呢
2楼-- · 2020-08-15 22:50

您好,Nadir

很高兴您发现它很有用。

关于合并1和2,讽刺的是我实际上 已经这样做了。 那就是message.getProperty('PropertyID')。toLowerCase()部分。 我编辑了代码以反映我的回答,但是到那时您已经将其复制了,似乎是:-)

问候,

Morten

N-Moskvin
3楼-- · 2020-08-15 22:33

您好, Nadir Naji

如果您创建新的脚本文件,则可以在其中获取示例代码

 def map = message.getProperties(),请参见获取属性和标题的示例。
 def值= map.get(" PropertyName")
//对值执行运算
 message.setProperty(" PropertyName",value); 

希望这会有所帮助!

感谢和问候,

Praveen T

callcenter油条
4楼-- · 2020-08-15 22:47
< p>你好,

谢谢大家!

您的解决方案 Morten Wittrock 运作良好!

我刚刚在newVal中添加了toString(),因此可以在下一步中使用它进行调用。

导入com.sap.gateway.ip.core.customdev.util.Message

 def消息processData(消息消息){
     def oldVal = message.getProperty('PropertyID')。toLowerCase()//1
     def lcaseVal = oldVal.toLowerCase()//2
     def newVal =" $ {lcaseVal [0..7]}-$ {lcaseVal [8..11]}-$ {lcaseVal [12..15]}-$ {lcaseVal [16..19]}-$ {  lcaseVal [20..31]}"。toString()//3
     message.setProperty('PropertyID',newVal)//4
     返回讯息
 }
 

如果可能,我很想知道您想做的组合。

谢谢

最低点

一周热门 更多>