当源文件的记录/顺序超过1个时,xslt拆分/分块/分离消息

2020-08-16 21:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 当文件包含多个订单时,需...

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

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


嗨,

当文件包含多个订单时,需要拆分/分离/压缩源xml文件。

源文件:

<?xml version =" 1.0" encoding =" UTF-8"?>

http://Test.com/Test">

<订单>

202005280038-0000000

Ok

....

<订单>

202005280038-0000001

Ok

....

<订单>

202005280038-0000002

Ok

....

主要

预期产量:

<?xml version =" 1.0" encoding =" UTF-8"?>

http://Test.com/Test">

<订单>

202005280038-0000000

Ok

....

下一封邮件为

<?xml version =" 1.0" encoding =" UTF-8"?>

http://Test.com/Test">

<订单>

202005280038-0000001

Ok

....

第三个消息为

<?xml version =" 1.0" encoding =" UTF-8"?>

http://Test.com/Test">

<订单>

202005280038-0000002

Ok

....

1条回答
哎,真难
2020-08-16 22:19

有人可以检查一下Java代码,请提出更改建议以获取正确的输出,

映射结果不被接受。

java-code-in-message-mapping-function.jpg 我尝试了 在博客的Java代码下面,但记录是分开的,但仍在同一xml中。

https: //answers.sap.com/questions/12920191/how-to-split-single-xml-file-contains-two-separate.html

请检查代码并共享代码更改以获取实际输出。

 public void transform(TransformationInput arg0,TransformationOutput arg1)引发StreamTransformationException {getTrace()。addInfo("已调用JAVA映射"); 字符串inData = convertStreamToString(arg0.getInputPayload()。getInputStream()); 字符串outData ="";  String [] out = inData.split(" "); 字符串xUTF =" "; //inData = inData.replace(xUTF," <?xml version = \" 1.0 \" encoding = \" utf-8 \"?> ");  inData = inData.replace(xUTF,"");  for(String s:out){试试{inData = s.concat("   -1){sb.append((char)ch);} reader.close();  } catch(Exception exception){exception.toString();  } return sb.toString();  }



 

修改了 博客中的代码

一周热门 更多>