我使用简单转换从内部表中获取 XML。这是输出 XML。
<?xml version="1.0" encoding="UTF-8"?>
<Complement>
<Document Doc="AAA">
<Locations>
<Location>
<Origin
RFC="URE180429TM6"/>
<Address
Country="SOME_COUNTRY"
/>
[....]
</Location>
</Locations>
<Products NumTotal="1">
<Product
ValorProduct="12164501"
/>
[....]
</Product>
</Products>
[....]....
</Document>
</Complement>
但现在我需要做的是更改一些 XML 元素名称(重命名它们).. 这应该使我的 XML 看起来像这样:
例如,我需要第一个元素(补码)看起来像 cfdi:Complement(:
在 cfdi 和 Complement 之间使用冒号)......等等
<cfdi:Complement>
<document:Document Doc="AAA">
<document:Locations>
<document:Location>
<document:Origin
RFC="URE180429TM6"/>
<document:Domicilio
Country="NIGERIA"
/>
[....]
</document:Location>
</document:Locations>
<document:Products NumTotal="1">
<document:Product
ValorProduct="12164501"
/>
[....]
</document:Product>
</document:Products>
[....]....
</document:Document>
</cfdi:Complement>
我一直在尝试直接从简单转换代码更改元素名称,但它不起作用:
<?sap.transform simple?>
<tt:transform xmlns:tt="http://www.sap.com/transformation-templates"
xmlns:ddic="http://www.sap.com/abapxml/types/dictionary"
xmlns:def="http://www.sap.com/abapxml/types/defined">
<tt:root name="COMPLEMENT" type="ddic:ZCOMPLEMENT"/>
<tt:template>
<tt:namespace name="cfdi"/>
<tt:namespace name="document"/>
<cfdi:Complement> "<----- I get error from this lines
<document:Document> "<----- I get error from this lines
<tt:attribute name="Doc" value-ref=".COMPLEMENT.DOCUMENT.DOC"/>
<document:Locations>
<Location>
<Origin>
<tt:attribute name="RFC" value-ref=".COMPLEMENT.DOCUMENT.LOCATIONS.LOCATION.ORIGIN.RFC"/>
[....]
</Origin>
<Address>
<tt:attribute name="Country" value-ref=".COMPLEMENT.DOCUMENT.LOCATIONS.LOCATION.ADDRESS.COUNTRY"/>
[....]
</Address>
</Location>
</Locations>
<Products>
<tt:attribute name="NumTotal" value-ref=".COMPLEMENT.DOCUMENT.PRODUCTS.NUMTOTAL"/>
<Product>
<tt:attribute name="ValorProduct" value-ref="VALORPRODUCT"/>
[....]
</Product>
</Products>
[....]....
</Document>
</Complement>
</tt:template>
</tt:transform>
这些是我得到的错误:
undeclared namespace prefix 'cfdi'
和
undeclared namespace prefix 'document'
这是简单的转换代码:
我只需要更改元素的名称。但我不认为这比看起来更难。
请帮助我。我是这个 Abap 世界的新手。或者任何想法都会对我有很大帮助。问候