CPI:Groovy脚本,用于从消息中删除消息标签

2020-08-17 13:50发布

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

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


专家们,

我正在从SELECT数据存储中获取数据,并且必须将其映射到OData结构。 要生成xsd,我必须从消息标签中开始,其中number = 1是动态的。

我尝试了replaceAll。 但是无法删除整个标签,因为它是动态的。

正在寻找一个常规脚本来删除以下输入结构的上述标记:

 <?xml version ='1.0'encoding ='UTF-8'?>
 <消息>
     
 
     
     
 
     
     
 
     
     
 
     
 ......
     
 
     
  

预期输出:

 <?xml version ='1.0'encoding ='UTF-8'?>
 <消息>
 
 
 
 
 ......
 
  

此致

Pavan G

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

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


专家们,

我正在从SELECT数据存储中获取数据,并且必须将其映射到OData结构。 要生成xsd,我必须从消息标签中开始,其中number = 1是动态的。

我尝试了replaceAll。 但是无法删除整个标签,因为它是动态的。

正在寻找一个常规脚本来删除以下输入结构的上述标记:

 <?xml version ='1.0'encoding ='UTF-8'?>
 <消息>
     
 
     
     
 
     
     
 
     
     
 
     
 ......
     
 
     
  

预期输出:

 <?xml version ='1.0'encoding ='UTF-8'?>
 <消息>
 
 
 
 
 ......
 
  

此致

Pavan G

付费偷看设置
发送
5条回答
天桥码农
1楼 · 2020-08-17 14:49.采纳回答

嗨,Pavan

您可以在XSLT中轻松完成此操作。 此样式表将元素替换为包含的任何内容:

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

如果您担心通过删除元素而引入的额外换行符,那么以下是删除它们的版本:

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

此致

Morten

N-Moskvin
2楼-- · 2020-08-17 14:33

Hi Pavan

您的示例输入无效的XML。 您可能应该显示真实但简短的文档(当然会删除所有敏感信息)。

致谢

Morten

SKY徐
3楼-- · 2020-08-17 14:36

Hello Pavan,

添加内容过滤器并使用以下条件。

//contentoffirstmessage 

在内容过滤器之后,添加带有以下主体的Content Modifier,然后它应该可以工作。

 <消息>
 $ {in.body}
  

致谢

Sriprasad Shivaram Bhat

spaceman01
4楼-- · 2020-08-17 14:47

非常感谢您的帮助莫滕·维特洛克(Morten Wittrock)

您的XSLT代码对我有用。

此致

Pavan G