使用Java映射编辑文件内容

2020-08-27 17:48发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 我们正在研究从文件...

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

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


专家您好,

我们正在研究从文件到SFTP的方案,该方案处理的是带有随机数据的平面文件。 我们不使用FCC,这是一个传递方案。 在文件发送到目标之前,我们正在使用Java映射来更改文件名。

但是,我们还有另一个要求,我们需要用另一个字符替换文件中特定位置(例如,文件开头的第13个位置)处的字符。 文件的其余内容将保持相同。是否有可能在Java映射中进行处理? 如果是这样,您能帮我提供代码吗? 我们正在使用SAP PO 7.4 SP17。

我不太熟悉Java代码并在论坛上进行了搜索,但是找不到任何合适的帖子。 下面给出的是我当前正在使用的代码:

公共类fileName扩展AbstractTransformation {public void transform(TransformationInput TransformationInput,TransformationOutput TransformationOutput)引发StreamTransformationException {

尝试{

InputStream inputstream = TransformationInput.getInputPayload()。getInputStream();

OutputStream outputstream = TransformationOutput.getOutputPayload()。getOutputStream();

Map mapParameters =(Map)TransformationInput.getInputHeader()。getAll();

String NewFileName ="";

mapParameters.put(DynamicConfigurationKey.create(" http://sap.com/ xi/XI/Dynamic ",StreamTransformationConstants.DYNAMIC_CONFIGURATION),"");

DynamicConfiguration conf =(DynamicConfiguration)mapParameters.get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);

DynamicConfigurationKey键= DynamicConfigurationKey.create(" http://sap.com/xi/XI/System/File "," FileName"); NewFileName = conf.get(key)+" .txt";

conf.put(key,NewFileName);

byte [] b =新的byte [inputstream.available()];

inputstream.read(b);

outputstream.write(b);

} catch(异常异常)

{getTrace()。addDebugMessage(exception.getMessage());

抛出新的StreamTransformationException(exception.toString());

}

}}

提前谢谢!

4条回答
Tong__Ming
2020-08-27 18:32

Hello Sugata,

非常感谢您的及时回复!

尝试编辑代码时出现以下错误:

错误:无法解析类型java.lang.CharSequence。 从所需的.class文件间接引用

方法定义中发生错误:convertStreamToString行:sb.append((char)ch);

要在上面添加内容,我正在使用NWDS创建JAR文件。 当我将指针指向错误行时,建议的解决方法是配置构建路径。

有什么想法吗?

谢谢

Faisal

一周热门 更多>