XML到ABAP的转换-XMl中字段顺序的问题

2020-08-17 03:41发布

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

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


1。 我们正在使用使用XSLT_TOOL Tcode创建的XML转换代码。 XML文件即将进入SAP,并转换为ABAP结构内部表。 但是有时我们得到的XML文件的XML转换无法处理的字段顺序发生了变化。

因此,我们还根据XML文件序列添加了导致转换代码另一部分出错的特定标记。

2。 我们使用XML解析(使用功能模块SMUM_XML_PARSE)遇到了一个不同的解决方案,将XML数据连同所有标记及其值一起放入内部表,以便我们可以通过循环这些XML数据将值分配给SAP内部表记录 。 我们期望XML文件中包含大量数据。

请提出是否还有其他解决方案,即使XML文件中的字段顺序发生变化,也可以读取XML文件数据并将其分配给SAP DDIC结构/内部表中的正确字段。

还要让我知道以后的XML解析技术是否会引起性能问题,因为我们期望XML文件中包含大量数据。

随附我们正在使用的转换代码

xml-transformation-code.txt

下面是示例XML输入文件:

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

ZP00

912

14611006ABC-123

20200601

<有效日期> 99991231

美元

1

C

EA

删除

EA

20200430 16:12:11

1.0

98.00

10.0

97.00

15.0

96.00

20.0

95.00

25.0

94.00

xml-transformation-code.txt (5.6 kB)

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

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


1。 我们正在使用使用XSLT_TOOL Tcode创建的XML转换代码。 XML文件即将进入SAP,并转换为ABAP结构内部表。 但是有时我们得到的XML文件的XML转换无法处理的字段顺序发生了变化。

因此,我们还根据XML文件序列添加了导致转换代码另一部分出错的特定标记。

2。 我们使用XML解析(使用功能模块SMUM_XML_PARSE)遇到了一个不同的解决方案,将XML数据连同所有标记及其值一起放入内部表,以便我们可以通过循环这些XML数据将值分配给SAP内部表记录 。 我们期望XML文件中包含大量数据。

请提出是否还有其他解决方案,即使XML文件中的字段顺序发生变化,也可以读取XML文件数据并将其分配给SAP DDIC结构/内部表中的正确字段。

还要让我知道以后的XML解析技术是否会引起性能问题,因为我们期望XML文件中包含大量数据。

随附我们正在使用的转换代码

xml-transformation-code.txt

下面是示例XML输入文件:

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

ZP00

912

14611006ABC-123

20200601

<有效日期> 99991231

美元

1

C

EA

删除

EA

20200430 16:12:11

1.0

98.00

10.0

97.00

15.0

96.00

20.0

95.00

25.0

94.00

xml-transformation-code.txt (5.6 kB)
付费偷看设置
发送
3条回答
shere_lin
1楼-- · 2020-08-17 04:02

嗨,桑德拉

感谢您的回复。 我尝试了标记,即使XML字段顺序正在更改,该标记也可以正常工作。 而且我们没有任何特定的XSD,因为据我所知,在生成XML文件的源代码中,它们动态地选择了必需的字段/值,而不是按照特定的顺序进行选择,并且XML中的字段顺序发生了变化。

槿木_熙
2楼-- · 2020-08-17 04:10

请使用"代码"按钮格式化XML。 如果附件很短,则无需在附件中提供代码。

nice_wp
3楼-- · 2020-08-17 04:00

您必须首先弄清楚接收到的XML的可能语法是什么。 当前,您说"有时候我们得到的XML文件的字段顺序发生了变化",这确实很模糊。 您必须询问负责XML的团队,其可能的语法是什么(例如,询问定义XML语法的XSD)。

关于某些元素的随机顺序,您可以 使用 ST-tt:group,分组,在此处 这两个元素的顺序都可以,并且是可选的:

  
元素1
元素2

一周热门 更多>