2020-09-21 22:10发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我在映射中有要求将输入字符串分别分割为30个字符,并且目标字段的出现应由分割后获得的字符串数控制。 拆分后获得的每个拆分字符串将填充到相应的目标字段出现位置。 假设例如我在输入字段中输入的字符串包含110个字符,那么目标XML中应在目标字段中每次出现的30、30、30、20个字符中出现4次目标字段。
谢谢
拉姆。
您可以使用UDF中的QUEUE上下文来拆分字符串。
Hi Experts,
有人可以帮助UDF实现吗?
Ramu。
嗨,
UDF将长度大于70的输入字符串分割为目标字段中每个具有70个字符的字符串。 请对此UDF提供帮助。
尝试使用以下UDF。
公共无效splitInputString(String [] inputData,ResultList结果,容器容器)引发StreamTransformationException { List 字符串= new ArrayList (); int索引= 0; 而 (index strings.add(inputData [0] .substring(index,Math.min(index + 30,inputData [0] .length()))); < br> index + = 30; } Iterator itr = strings.iterator(); 字符串currentString ="";
while(itr.hasNext()){ currentString = itr.next(); result.addValue(currentString); } }
嗨Ramu,
尝试在UDF之下按您的要求正常工作:
public void Split(String [] input,ResultList result,Container container)引发StreamTransformationException {
int计数= input [0] .length()/30;
int index = 30;
int j = 1; for(int i = 0; i <= count; i ++)
{if(i == count)
result.addValue(input [0] .substring((i * index),input [0] .length()));
其他
result.addValue(input [0] .substring(i * index,(30 * j)));
j = j + 1;
}
Ashish
您好,Ramu,我有一个类似的要求,并使用了UDFNodePool中的fragmentSingleValue。 问候
Peter
最多设置5个标签!
您可以使用UDF中的QUEUE上下文来拆分字符串。
Hi Experts,
有人可以帮助UDF实现吗?
谢谢
Ramu。
嗨,
UDF将长度大于70的输入字符串分割为目标字段中每个具有70个字符的字符串。 请对此UDF提供帮助。
谢谢
Ramu。
尝试使用以下UDF。
公共无效splitInputString(String [] inputData,ResultList结果,容器容器)引发StreamTransformationException {字符串= new ArrayList (); strings.add(inputData [0] .substring(index,Math.min(index + 30,inputData [0] .length()))); < br> index + = 30;
itr = strings.iterator();
List
int索引= 0;
而 (index
}
Iterator
字符串currentString ="";
while(itr.hasNext()){
--- Priyanka# p #currentString = itr.next();
result.addValue(currentString);
}
}
嗨Ramu,
尝试在UDF之下按您的要求正常工作:
public void Split(String [] input,ResultList result,Container container)引发StreamTransformationException {
int计数= input [0] .length()/30;
int index = 30;
int j = 1; for(int i = 0; i <= count; i ++)
{if(i == count)
result.addValue(input [0] .substring((i * index),input [0] .length()));
其他
result.addValue(input [0] .substring(i * index,(30 * j)));
j = j + 1;
}
谢谢
Ashish
您好,Ramu,我有一个类似的要求,并使用了UDFNodePool中的fragmentSingleValue。 问候
Peter
一周热门 更多>