需要有关Groovy脚本的帮助以汇总XML和聚合

2020-08-27 01:09发布

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

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


人们好,

请使用groovy脚本在以下requiremtn上帮助我

我想使用groovy脚本进行映射以汇总和汇总输出

我的来源是:




0002
1
100



0001
1
200



0002
1
300



0001
1
300


------------------

我的要求输出是

---------



0002
1 < br> 400



0001
1
500


致谢

DV

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

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


人们好,

请使用groovy脚本在以下requiremtn上帮助我

我想使用groovy脚本进行映射以汇总和汇总输出

我的来源是:




0002
1
100



0001
1
200



0002
1
300



0001
1
300


------------------

我的要求输出是

---------



0002
1 < br> 400



0001
1
500


致谢

DV

付费偷看设置
发送
5条回答
三十六小时_GS
1楼-- · 2020-08-27 01:28

你好

如果要在Groovy中解决此问题,则需要首先解析消息正文XML,对元素的内容进行汇总,然后输出包含汇总和的新XML文档。 我只是回答了另一个问题,其中详细介绍了如何执行此操作。

此致

Morten

小熊yu生菜
2楼-- · 2020-08-27 01:44

Hi DV

到目前为止,您尝试了什么? 如果您发布脚本,我们将有更好的机会帮助您。

此致

Morten

Hello DV,

您可以尝试使用以下代码,这可能会对您有所帮助:

----------------

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

def消息processData(Message message){

字符串正文= message.getBody(java.lang.String)as String;

//构建XML文档
//SAXBuilder builder = new SAXBuilder(); < br> def worklogs =新的XmlSlurper()。parseText(body);
def stringWriter =新的StringWriter()
def peopleBuilder =新的MarkupBuilder(stringWriter)
def t11 = 0;


//def with_kids = node.findAll {it.userId.unique()}
def btNumbers = worklogs.row.collect {it.userId}
def countMap = btNumbers.unique(false).collectEntries {btNumber->
[btNumber,btNumbers.count(btNumber)]
}
peopleBuilder。" root" {

countMap.each {k,v->
工作日志。 row.each {node->
if(k == node.userId.text())
{
le = node.Marks.text()
t11 = t11 + le.toInteger()
}
}
出局{
键(k)
值(v)
总计(t11)
}
t11 = 0

}

}

< br>


def xml1 = stringWriter.toString()
message.setBody(xml1);




返回消息;
}

---------------------

致谢

GB

一只江湖小虾
4楼-- · 2020-08-27 01:22

另外,为什么还要在Groovy中解决这个问题?

Morten

歪着头看世界
5楼-- · 2020-08-27 01:48

总和对我来说是0。 该代码有效吗?

一周热门 更多>