如何通过abap中的XSLT程序读取XML文件的属性

2020-09-12 19:47发布

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

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


专家们,

我有一个如下的XML文件,我需要读取属性值并将其提取到内部表中。

,但未获取值,并且内部表仍为空。 如果代码有问题,请告诉我。 提前非常感谢您!

xml文件

 <?xml version =" 1.0" encoding =" iso-8859-1"吗?>
 <客户>
   
   
   
   
  

XSLT程序

 
  
  
  
  
  
  
  
  <项目>
  
  
  
  
  
  
  
  
  
  
  
   
  
  
  

呼叫中断:

 TYPES:类型为ts_person,
  cust_id(4)类型c,
  firstname(20)TYPE c,
  姓氏(20)TYPE C,
 * ONE_STRING TYPE CHAR50,
  ts_person的结尾。
数据:ts_person的it_data类型标准表, wa_data TYPE ts_person。
数据:gt_result_xml类型abap_trans_resbind_tab, gs_result_xml类型abap_trans_resbind。
将it_data的引用获取到gs_result_xml值中。 gs_result_xml-name ='IPERSON'。 将gs_result_xml附加到gt_result_xml。
上面的CALL转换ZXSLT_1" xslt文件 源XML it_xml 结果(gt_result_xml)。

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

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


专家们,

我有一个如下的XML文件,我需要读取属性值并将其提取到内部表中。

,但未获取值,并且内部表仍为空。 如果代码有问题,请告诉我。 提前非常感谢您!

xml文件

 <?xml version =" 1.0" encoding =" iso-8859-1"吗?>
 <客户>
   
   
   
   
  

XSLT程序

 
  
  
  
  
  
  
  
  <项目>
  
  
  
  
  
  
  
  
  
  
  
   
  
  
  

呼叫中断:

 TYPES:类型为ts_person,
  cust_id(4)类型c,
  firstname(20)TYPE c,
  姓氏(20)TYPE C,
 * ONE_STRING TYPE CHAR50,
  ts_person的结尾。
数据:ts_person的it_data类型标准表, wa_data TYPE ts_person。
数据:gt_result_xml类型abap_trans_resbind_tab, gs_result_xml类型abap_trans_resbind。
将it_data的引用获取到gs_result_xml值中。 gs_result_xml-name ='IPERSON'。 将gs_result_xml附加到gt_result_xml。
上面的CALL转换ZXSLT_1" xslt文件 源XML it_xml 结果(gt_result_xml)。
付费偷看设置
发送
2条回答
骆驼绵羊
1楼-- · 2020-09-12 20:41

嗨,希尔帕,

这似乎与Source XML => IT_XML和Result => GT_RESULT_XML不匹配。您可以检查吗?

谢谢

Mohan

d56caomao
2楼-- · 2020-09-12 20:34

您的代码工作正常,所有数据都存储在gt_result_xml-value中。 一个小问题是转换时,您会丢失first_name和last_name的@,因此对于当前代码而言,它仅获取customer_id。

如果您尝试将数据从xml转换为it_data而不是gt_result_xml,则可以将其设置为结果 参数或使用当前代码,您必须使用字段符号来引用gt_result_xml值:

调用转换ZXSLT_1
 来源XML xml
 结果IPERSON = it_data。

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答