点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我的Flatfile排序...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我的Flatfile排序...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我的Flatfile排序仍然有问题。 我尝试了其他方法但无济于事,所以我回到了原来的脚本。 但是说实话,我不知道为什么这行不通。
我的输入看起来像这样
所有行都以\ r \ n终止,包括最后一行
这个想法很简单,读取正文,使用'\ r \ n'上的拆分创建一个数组,对子字符串上的结果数组进行排序,然后将排序后的数组转换回字符串。
但是由于某种原因,拆分无法正常进行,如果我使用空白的''字符进行拆分,它还会不断出现错误,使我认为数据类型可能不正确。
代码是这样的,我尽可能地拆分命令以使其简单,但实际上body.split已经出错:
导入com.sap.gateway.ip.core.customdev.util.Message; 导入java.util.HashMap; 导入groovy.xml。*; 导入groovy.json。*; 导入groovy.util。*; 导入groovy.time。*; 导入org.codehaus。*; def消息processData(消息消息){ //身体 def主体= message.getBody(); def messageLog = messageLogFactory.getMessageLog(message); testArray = body.split('\ r \ n') def sortArray = testArray.sort {it.substring(2,11)} def stringArray = sortArray.join('\ r \ n') message.setBody(stringArray); 返回消息; }
我得到的错误是:
java.lang.NoSuchMethodException:方法的无签名:[B.split()适用于参数类型:(java.lang.String)值:[]可能的解决方案:split(groovy.lang.Closure),等待 (),toList(),wait(long),print(java.lang.Object),sprintf(java.lang.String,java.lang.Object)
请注意[和]之间的空白行。 如果我尝试拆分其他内容,则会收到相同的错误,但没有空格。
我不知道[B. 来自[B.split。 我不明白为什么会有这个错误。 拆分功能通常效果很好。
我只能想象它与输入数据有关。 记录的长度各不相同,最长可达6k字节。
有什么想法吗? 我真的很想尽全力。
谢谢
汤姆
(10.1 kB)
汤姆你好,
我已经尝试了您的方案,并且它没有任何问题(从Content Modifier和SFTP通道通过)。您的文件似乎有问题。如果您可以屏蔽与客户相关的数据并共享文件,我可以运行并检查 可能是什么原因引起的。
此致
Sriprasad Shivaram Bhat
一周热门 更多>