2006 Dec 05 1:35 PM
hello all,
With the help of Mr. raja I have done with the code but still i have some problem. could any one help me(raja you too).
XLST program code (YSIMPLEXMLTOITAB)
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:strip-space elements="*"/>
<xsl:output indent="yes"/>
<xsl:template match="QfiData">
<asx:abap xmlns:asx="http://www.sap.com/abapxml">
<asx:values>
<I_DATA>
<xsl:for-each select="Materials">
<I_DATA1>
<MATERIAL>
<xsl:value-of select="Material"/>
</MATERIAL>
<CONDITIONRATE>
<xsl:value-of select="ConditionRate"/>
</CONDITIONRATE>
<VALIDFROM>
<xsl:value-of select="ValidFrom"/>
</VALIDFROM>
<VALIDTO>
<xsl:value-of select="ValidTo"/>
</VALIDTO>
<REGIONID>
<xsl:value-of select="RegionID"/>
</REGIONID>
<MATERIALID>
<xsl:value-of select="MaterialID"/>
</MATERIALID>
</I_DATA1>
</xsl:for-each>
</I_DATA>
</asx:values>
</asx:abap>
</xsl:template>
</xsl:stylesheet>
Program to test it.
REPORT y_test_xml_tran.
TYPES: BEGIN OF i_det,
Material(10),
ConditionRate(16) type p decimals 2 ,
ValidFrom(10) ,
ValidTo(10) ,
RegionID(3) ,
MaterialID(10) ,
end of i_det .
DATA: i_data TYPE TABLE OF i_det.
data: wa like line of i_data .
DATA: xml_string TYPE string .
DATA: xslt_error TYPE REF TO cx_xslt_exception,
xslt_message TYPE string .
CLEAR xml_string .
CONCATENATE
`<?xml version="1.0" encoding="utf-8"?>`
`<QfiData xmlns:xsl="http://www2.siemens.nl/qfiservice/QfiData.xsd">`
`<Materials>`
`<Material>463581</Material>`
`<ConditionRate> 2.44</ConditionRate>`
`<ValidFrom>20060208</ValidFrom>`
`<ValidTo>99991231</ValidTo>`
`<RegionID>48</RegionID>`
`<MaterialID>36294</MaterialID>`
`</Materials>`
`<Materials>`
`<Material>463582</Material>`
`<ConditionRate> 2.44</ConditionRate>`
`<ValidFrom>20060208</ValidFrom>`
`<ValidTo>99991231</ValidTo>`
`<RegionID>48</RegionID>`
`<MaterialID>36295</MaterialID>`
`</Materials>`
`</QfiData>`
INTO xml_string .
TRY .
CALL TRANSFORMATION (`YSIMPLEXMLTOITAB`)
SOURCE XML xml_string
RESULT i_data = i_data.
CATCH cx_xslt_exception INTO xslt_error.
xslt_message = xslt_error->get_text( ).
ENDTRY.
the error i am getting is:
Error message : ABAP XML formatting error in XML node of type "element", name: "abap"
hello all,
With the help of Mr. raja I have done with the code but still i have some problem. could any one help me(raja you too).
XLST program code (YSIMPLEXMLTOITAB)
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:strip-space elements="*"/>
<xsl:output indent="yes"/>
<xsl:template match="QfiData">
<asx:abap xmlns:asx="http://www.sap.com/abapxml">
<asx:values>
<I_DATA>
<xsl:for-each select="Materials">
<I_DATA1>
<MATERIAL>
<xsl:value-of select="Material"/>
</MATERIAL>
<CONDITIONRATE>
<xsl:value-of select="ConditionRate"/>
</CONDITIONRATE>
<VALIDFROM>
<xsl:value-of select="ValidFrom"/>
</VALIDFROM>
<VALIDTO>
<xsl:value-of select="ValidTo"/>
</VALIDTO>
<REGIONID>
<xsl:value-of select="RegionID"/>
</REGIONID>
<MATERIALID>
<xsl:value-of select="MaterialID"/>
</MATERIALID>
</I_DATA1>
</xsl:for-each>
</I_DATA>
</asx:values>
</asx:abap>
</xsl:template>
</xsl:stylesheet>
Program to test it.
REPORT y_test_xml_tran.
TYPES: BEGIN OF i_det,
Material(10),
ConditionRate(16) type p decimals 2 ,
ValidFrom(10) ,
ValidTo(10) ,
RegionID(3) ,
MaterialID(10) ,
end of i_det .
DATA: i_data TYPE TABLE OF i_det.
data: wa like line of i_data .
DATA: xml_string TYPE string .
DATA: xslt_error TYPE REF TO cx_xslt_exception,
xslt_message TYPE string .
CLEAR xml_string .
CONCATENATE
`<?xml version="1.0" encoding="utf-8"?>`
`<QfiData xmlns:xsl="http://www2.siemens.nl/qfiservice/QfiData.xsd">`
`<Materials>`
`<Material>463581</Material>`
`<ConditionRate> 2.44</ConditionRate>`
`<ValidFrom>20060208</ValidFrom>`
`<ValidTo>99991231</ValidTo>`
`<RegionID>48</RegionID>`
`<MaterialID>36294</MaterialID>`
`</Materials>`
`<Materials>`
`<Material>463582</Material>`
`<ConditionRate> 2.44</ConditionRate>`
`<ValidFrom>20060208</ValidFrom>`
`<ValidTo>99991231</ValidTo>`
`<RegionID>48</RegionID>`
`<MaterialID>36295</MaterialID>`
`</Materials>`
`</QfiData>`
INTO xml_string .
TRY .
CALL TRANSFORMATION (`YSIMPLEXMLTOITAB`)
SOURCE XML xml_string
RESULT i_data = i_data.
CATCH cx_xslt_exception INTO xslt_error.
xslt_message = xslt_error->get_text( ).
ENDTRY.
the error i am getting is:
Error message : ABAP XML formatting error in XML node of type "element", name: "abap"
2006 Dec 15 10:06 AM
2007 Apr 02 9:18 PM
| User | Count |
|---|---|
| 5 | |
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |