从xml文件中删除名称空间前缀

2020-09-26 18:34发布

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

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


大家好,

我们的方案是邮件代理。

SAP R/3-> SAP GRC ----> SAP PI->业务伙伴

我们正在将xml文件作为电子邮件附件发送给业务合作伙伴。 在PI中,约定使用ns0或nm作为XML Schema名称空间的前缀。

我的客户希望在将xml文件发送给业务合作伙伴时删除前缀" nm "。

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

<< strong> nm: nfeProc versao =" 3.10" xmlns:nm =" http ://www.portalfiscal.inf.br/nfe " xmlns =" http://www .portalfiscal.inf.br/nfe ">

-----

----

nm: nfeProc>

->我们正在使用SAP标准XSD。

->我已经尝试在邮件通信通道中使用XML Anonymizer Bean来删除XML Payload中的名称空间前缀" nm"。 请检查以下配置以供参考。

我也尝试过将Anonymizer Bean放在消息transformebean之前,但还是没有运气。 请帮助我们解决此问题。

谢谢。

致谢

巴尔加瓦奎师那

9-19-2017-3-22-32-pm.jpg (73.8 kB)

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

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


大家好,

我们的方案是邮件代理。

SAP R/3-> SAP GRC ----> SAP PI->业务伙伴

我们正在将xml文件作为电子邮件附件发送给业务合作伙伴。 在PI中,约定使用ns0或nm作为XML Schema名称空间的前缀。

我的客户希望在将xml文件发送给业务合作伙伴时删除前缀" nm "。

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

<< strong> nm: nfeProc versao =" 3.10" xmlns:nm =" http ://www.portalfiscal.inf.br/nfe " xmlns =" http://www .portalfiscal.inf.br/nfe ">

-----

----

nm: nfeProc>

->我们正在使用SAP标准XSD。

->我已经尝试在邮件通信通道中使用XML Anonymizer Bean来删除XML Payload中的名称空间前缀" nm"。 请检查以下配置以供参考。

我也尝试过将Anonymizer Bean放在消息transformebean之前,但还是没有运气。 请帮助我们解决此问题。

谢谢。

致谢

巴尔加瓦奎师那

9-19-2017-3-22-32-pm.jpg (73.8 kB)
付费偷看设置
发送
7条回答
Bunny_CDM
1楼 · 2020-09-26 19:10.采纳回答

然后您可以尝试使用UDF Krishna,CFDI中有类似的要求,我们需要更改名称空间前缀。

StructureNode节点=((StructureNode)container.getParameter(" STRUCTURE_NODE"));
node.setNSDeclarations(" xmlns:" +前缀+" =" +命名空间);
node.setQName(prefix + "测试");
返回"";

在前缀中,您可以根据要求传递空值和名称空间。 在测试位置,您可以选择消息类型

我试图删除名称空间前缀,并且似乎可以正常工作。

代楠1984
2楼-- · 2020-09-26 19:14

嗨Raghuraman,

感谢您的回复。

按照链接中的说明,我已经在通信通道中配置了模块关键参数,但是仍然没有删除im前缀" nm"。

参数名称:anonymizer.quote

参数值:

致谢

Bhargava克里希纳

半个程序猿
3楼-- · 2020-09-26 19:17

引用的参数名称错误,我相信,请尝试使用anonymizer.quote

https://blogs.sap.com/2014/10/02/remove-namespace-by-xmlanonymizer-bean-in-communication-channel /

ZJXianG
4楼-- · 2020-09-26 19:15

Hi Raghu,

否,我们的要求是从SAP GRC系统接收的xml文件中删除前缀" nm"。

是的,这是Nfe界面。

致谢

Bhargava克里希纳

打个大熊猫
5楼-- · 2020-09-26 19:24

嗨,Bhargava克里希纳!

我不明白为什么同一名称空间既有前缀又没有默认名称空间。

无论如何,您是否尝试将XMLAnonymizerBean bean放置在链中的第一个位置,并在模块的参数中设置带有空前缀的名称空间?

像这样: http:// www.aaa.bbb/ccc" (两个单引号)。

为什么将单引号设置为引号? 您是否有默认标记问题?

问候,叶夫根尼。

一只江湖小虾
6楼-- · 2020-09-26 19:24

嗨,巴尔加瓦,

由于目标名称空间和非限定名称空间的值相同,因此您可以:

1。 使用自定义操作映射(不是SAP提供的操作映射)删除名称空间

2。 使用自定义适配器模块删除名称空间

此致

Mark

三十六小时_GS
7楼-- · 2020-09-26 19:26

你好Bhargava克里希纳,

您还可以使用此XSL映射删除任何名称空间:

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

 

您可以将其用作操作映射中的第一步。

最诚挚的问候,彼得

一周热门 更多>