Groovy脚本映射

2020-09-20 07:40发布

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

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


HI专家

如果您已经完成了将groovy脚本映射到目标层级结构中的工作,能否请您推荐我一个博客/场景。

问候,

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

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


HI专家

如果您已经完成了将groovy脚本映射到目标层级结构中的工作,能否请您推荐我一个博客/场景。

问候,

付费偷看设置
发送
3条回答
半个程序猿
1楼-- · 2020-09-20 08:23

您好Vijender

这并不复杂。 它有两个步骤:

  1. 解析当前邮件正文
  2. 创建新的邮件正文

假设内容为XML,步骤1为XML解析,步骤2为构建XML文档。

解析XML

要在Groovy中解析XML,您可以使用groovy.util.XmlSlurper类。 在下面的示例中,我将解析这个简单的文档:

 <行>
    
        10 
    
    
        20 
    
    
        30 
    
  

下面是一个简短的代码段,用于分析文档并汇总数字:

导入groovy.util.XmlSlurper

 def lines = new XmlSlurper()。parseText('   10     20      30   ')

 def总和= 0

 lines.line.num.each {num-> sum + = num.text()作为整数}

 println sum 

要解析消息正文,您可以运行:

新的XmlSlurper()。parseText(message.getBody(java.lang.String))

您可以在Groovy的此处中了解更多有关XML解析的信息。

构建XML文档

使用Groovy的groovy.xml.MarkupBuilder类,构建XML文档非常容易。 这是一段代码,可以生成一个简单的文档,并用其替换消息正文:

导入com.sap.gateway.ip.core.customdev.util.Message
 导入groovy.xml.MarkupBuilder

 def消息processData(消息消息){
    def sw =新的StringWriter()
    def builder =新的MarkupBuilder(sw)
    builder.xmldoc {
       消息("你好,世界!")
    }
    message.setBody(sw.toString())
    返回讯息
 } 

代码生成以下XML:

 
   你好,世界!
  

可以在此处找到更多MarkupBuilder示例。

因此,您现在需要做的就是将这两种技术结合起来,并实现您的特定要求。

玩得开心

Morten

Tong__Ming
2楼-- · 2020-09-20 08:26

Hi Vijender

恐怕我不太了解。 使用Groovy进行映射是关于我描述的这两个活动,并向您显示了代码示例。

另外,请注意,您现在正在回答自己的问题,而不是评论我的回答。

此致

Morten

歪着头看世界
3楼-- · 2020-09-20 08:24

HI Morten Wittrock,


非常感谢您的答复! 如果您能帮助我将groovy脚本用作结构从源到目标的一对一映射,将不胜感激

一周热门 更多>