在IDOC中用段=" 1"替换段。

2020-09-21 04:46发布

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

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

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


专家们,

在PO中,对于IDOC映射,我们需要为Segment,begin和IDOC传递" 1"。 我只需要通过Java映射进行传递,仅需要进行更改,即segment和IDOC的值为1。我知道我们可以进行一对一的映射,但是我们混杂了多个具有映射的段。 因此尝试了如下所示的java映射,但无法正常工作。 在这里可以帮忙。


导入 java.io 。*;
导入com.sap.aii .mapping.api。*;
公共类WellformedXML_JavaMapping扩展AbstractTransformation {
@Override
public void transform(TransformationInput TransformationInput,TransformationOutput TransformationOutput)抛出StreamTransformationException {
试试{
InputStream inputstream = TransformationInput。 getInputPayload()。getInputStream();
OutputStream outputstream = TransformationOutput.getOutputPayload()。getOutputStream();

byte [] b =新的byte [inputstream.available()];
inputstream。 read(b);
字符串inputContent =新的String(b);

inputContent = inputContent.replaceAll(" SEGMENT"," SEGMENT ='1'");


> outputstream.write(inputContent.getBytes());
} catch(Exception exception){
getTrace()。addDebugMessage(exception.getMessage());
抛出新的StreamTransformationException(exception.toString() );
}
}
}

此致

Ram。