<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: getting XML via ABAP in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692999#M304202</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is there only a simple xpath expression possible? Or can I also use following expression:&lt;/P&gt;&lt;P&gt;/ORDERS05/IDOC/E1EDKA1[PARVW='AG']/PARTN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If no, are there any other ABAP/4 statements to solve this or only a mini-transformation (also in this thread).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards&lt;/P&gt;&lt;P&gt;  Helmut&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; Hello Mustafa,&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; the IXML library delievers all methods to retrieve&lt;/P&gt;&lt;P&gt;&amp;gt; and parse xml documents.&lt;/P&gt;&lt;P&gt;&amp;gt; For your needs replace "uri_to_xml" with uri to your&lt;/P&gt;&lt;P&gt;&amp;gt; xml document.&lt;/P&gt;&lt;P&gt;&amp;gt; With "find_from_path" you can get xml elements by&lt;/P&gt;&lt;P&gt;&amp;gt; simple xpath expression.&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; Hope it helps.&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; Regards&lt;/P&gt;&lt;P&gt;&amp;gt; Sebastian&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&amp;gt; DATA: lr_ixml                TYPE REF TO if_ixml,
&amp;gt; lr_ixml_doc            TYPE REF TO
&amp;gt;  if_ixml_document,
&amp;gt; lr_ixml_stream_factory TYPE REF TO
&amp;gt;  if_ixml_stream_factory,
&amp;gt; lr_ixml_istream        TYPE REF TO
&amp;gt;  if_ixml_istream,
&amp;gt; lr_ixml_parser         TYPE REF TO
&amp;gt;  if_ixml_parser,
&amp;gt; lr_ixml_element        type ref to
&amp;gt;  if_ixml_element,
&amp;gt;      lp_value               type string.
&amp;gt; ixml                = cl_ixml=&amp;gt;create( ).
&amp;gt; lr_ixml_doc            = lr_ixml-&amp;gt;create_document(
&amp;gt; ).
&amp;gt; lr_ixml_stream_factory =
&amp;gt; lr_ixml-&amp;gt;create_stream_factory( ).
&amp;gt; 
&amp;gt; lr_ixml_istream =
&amp;gt; lr_ixml_stream_factory-&amp;gt;create_istream_uri(
&amp;gt; uri_to_xml ).
&amp;gt; 
&amp;gt; lr_ixml_parser  = lr_ixml-&amp;gt;create_parser( document
&amp;gt;       = lr_ixml_doc
&amp;gt; istream        =
&amp;gt; lr_ixml_istream
&amp;gt; 
&amp;gt; tream_factory = lr_ixml_stream_factory ).
&amp;gt; 
&amp;gt; lr_ixml_parser-&amp;gt;parse( ).
&amp;gt; 
&amp;gt; lr_ixml_element = lr_ixml_doc-&amp;gt;find_from_path( path =
&amp;gt; '/root/some_node/currency' ).
&amp;gt; 
&amp;gt; lp_value = lr_ixml_element-&amp;gt;get_value( ).
&amp;gt; 
&amp;gt; * do something *
&amp;gt; *
&amp;gt; * data: ln_amount type i.
&amp;gt; *
&amp;gt; * ln_amount = lp_value.
&amp;gt; 
&amp;gt; &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 18 Sep 2007 09:10:52 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-09-18T09:10:52Z</dc:date>
    <item>
      <title>getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692992#M304195</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi experts;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i want to download an xml file (central bank currency info XML) and read the currency info from xml file with abap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;can you help me about this. documentation , example code...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;i want to download xml from web first then upload this xml to an internal table.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Mustafa&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Mustafa SADIK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 08:33:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692992#M304195</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-28T08:33:23Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692993#M304196</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can use the FM TEXT_CONVERT_XML_TO_SAP &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Richa&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 08:40:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692993#M304196</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-28T08:40:51Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692994#M304197</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the sample code from a website.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Databases&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES:&lt;/P&gt;&lt;P&gt;  makt,                                "Mat description&lt;/P&gt;&lt;P&gt;  marc,                                "Material / plant&lt;/P&gt;&lt;P&gt;  t001w,                               "plant name&lt;/P&gt;&lt;P&gt;  bhdgd.                               "Batch heading&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;  BEGIN OF gt_marc OCCURS 0,&lt;/P&gt;&lt;P&gt;    werks LIKE marc-werks,&lt;/P&gt;&lt;P&gt;    matnr LIKE marc-matnr,&lt;/P&gt;&lt;P&gt;  END OF gt_marc,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table to be downloaded as xml. Each line stores start and end tags&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;and the value&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  BEGIN OF gt_xml OCCURS 0,&lt;/P&gt;&lt;P&gt;    line(120),&lt;/P&gt;&lt;P&gt;  END OF gt_xml,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_maktx(120).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;User-input&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT-OPTIONS:&lt;/P&gt;&lt;P&gt;  s_werks FOR marc-werks,&lt;/P&gt;&lt;P&gt;  s_matnr FOR marc-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract all required data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM main_processing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT gt_marc BY werks matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gt_marc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT FIRST.                          "First tag must be root&lt;/P&gt;&lt;P&gt;      CLEAR gt_xml.&lt;/P&gt;&lt;P&gt;      gt_xml-line = ''.&lt;/P&gt;&lt;P&gt;    APPEND gt_xml.&lt;/P&gt;&lt;P&gt;    CLEAR gt_xml.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    FORMAT COLOR 2 ON.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; gt_marc-matnr, makt-maktx.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 2 OFF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The last tag must be the root closing tag --*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gt_xml-line = '&amp;lt;/LOCATIONS&amp;gt;'.&lt;/P&gt;&lt;P&gt;  APPEND gt_xml.&lt;/P&gt;&lt;P&gt;  CLEAR gt_xml.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DOWNLOAD'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            filename = 'C:PLANT1.XML'&lt;/P&gt;&lt;P&gt;            filetype = 'ASC'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            data_tab = gt_xml.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE sy-title TO bhdgd-line1.&lt;/P&gt;&lt;P&gt;  MOVE sy-repid TO bhdgd-repid.&lt;/P&gt;&lt;P&gt;  MOVE sy-uname TO bhdgd-uname.&lt;/P&gt;&lt;P&gt;  MOVE sy-datum TO bhdgd-datum.&lt;/P&gt;&lt;P&gt;  MOVE '0' TO bhdgd-inifl.&lt;/P&gt;&lt;P&gt;  MOVE '132' TO bhdgd-lines.&lt;/P&gt;&lt;P&gt;  FORMAT INTENSIFIED ON COLOR COL_HEADING.&lt;/P&gt;&lt;P&gt;  PERFORM batch-heading(rsbtchh0).     "report header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Form READ_PLANT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM read_plant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get plant name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR t001w.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE name1&lt;/P&gt;&lt;P&gt;    INTO t001w-name1&lt;/P&gt;&lt;P&gt;    FROM t001w&lt;/P&gt;&lt;P&gt;   WHERE werks EQ gt_marc-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " READ_PLANT&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Form MAIN_PROCESSING&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM main_processing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material and plant basic data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT werks matnr&lt;/P&gt;&lt;P&gt;    INTO TABLE gt_marc&lt;/P&gt;&lt;P&gt;    FROM marc&lt;/P&gt;&lt;P&gt;   WHERE werks IN s_werks&lt;/P&gt;&lt;P&gt;     AND matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " MAIN_PROCESSING&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Form READ_DESCRIPTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM read_description.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR g_maktx.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE maktx&lt;/P&gt;&lt;P&gt;    INTO g_maktx&lt;/P&gt;&lt;P&gt;    FROM makt&lt;/P&gt;&lt;P&gt;   WHERE matnr EQ gt_marc-matnr&lt;/P&gt;&lt;P&gt;     AND spras EQ 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Replace special character&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;' WITH '*ù%;' INTO g_maktx.&lt;/P&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '*ù%;' WITH '&amp;amp;amp;' INTO g_maktx.&lt;/P&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '/' WITH '&amp;amp;#47;' INTO g_maktx.&lt;/P&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " READ_DESCRIPTION&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="20" type="ul"&gt;&lt;P&gt;END OF PROGRAM Z_DOWN_XML ************************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 08:43:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692994#M304197</guid>
      <dc:creator>jayanthi_jayaraman</dc:creator>
      <dc:date>2006-11-28T08:43:52Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692995#M304198</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks i will look at this fm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and sorry i forget something i want to downnload xml from web according to given url&lt;/P&gt;&lt;P&gt;can you help me about this too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards &lt;/P&gt;&lt;P&gt;mustafa&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;i think i made a mistake&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i want to download xml from web first then upload this xml to an internal table.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Mustafa SADIK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 08:44:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692995#M304198</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-28T08:44:10Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692996#M304199</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Mustafa,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the IXML library delievers all methods to retrieve and parse xml documents.&lt;/P&gt;&lt;P&gt;For your needs replace "uri_to_xml" with uri to your xml document.&lt;/P&gt;&lt;P&gt;With "find_from_path" you can get xml elements by simple xpath expression.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Sebastian&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: lr_ixml                TYPE REF TO if_ixml,
      lr_ixml_doc            TYPE REF TO if_ixml_document,
      lr_ixml_stream_factory TYPE REF TO if_ixml_stream_factory,
      lr_ixml_istream        TYPE REF TO if_ixml_istream,
      lr_ixml_parser         TYPE REF TO if_ixml_parser,
      lr_ixml_element        type ref to if_ixml_element,
      lp_value               type string.

lr_ixml                = cl_ixml=&amp;gt;create( ).
lr_ixml_doc            = lr_ixml-&amp;gt;create_document( ).
lr_ixml_stream_factory = lr_ixml-&amp;gt;create_stream_factory( ).

lr_ixml_istream = lr_ixml_stream_factory-&amp;gt;create_istream_uri( uri_to_xml ).

lr_ixml_parser  = lr_ixml-&amp;gt;create_parser( document       = lr_ixml_doc
                                          istream        = lr_ixml_istream
                                          stream_factory = lr_ixml_stream_factory ).

lr_ixml_parser-&amp;gt;parse( ).

lr_ixml_element = lr_ixml_doc-&amp;gt;find_from_path( path = '/root/some_node/currency' ).

lp_value = lr_ixml_element-&amp;gt;get_value( ).

* do something *
*
* data: ln_amount type i.
*
* ln_amount = lp_value.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 09:21:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692996#M304199</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-28T09:21:44Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692997#M304200</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks Sebastian.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i  reward your answer&lt;/P&gt;&lt;P&gt;thanks again&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Nov 2006 12:50:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692997#M304200</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-28T12:50:50Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692998#M304201</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sebastian:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following code generates essentially a null pointer exception when I try to execute an XSLT transform (CALL TRANSFORM) on the &amp;lt;b&amp;gt;if_ixml_istream&amp;lt;/b&amp;gt; named &amp;lt;i&amp;gt;istream&amp;lt;/i&amp;gt;.  The URL is valid as I've copied it into my browser and displayed the XML document from the server (I've obfuscated the actual URL for security reasons).  Any suggestions?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
TYPE-POOLS: abap.
TYPE-POOLS: ixml.
CLASS cl_ixml DEFINITION LOAD.

DATA g_ixml         TYPE REF TO if_ixml.
DATA streamfactory  TYPE REF TO if_ixml_stream_factory.
DATA istream        TYPE REF TO if_ixml_istream.
DATA xmlstr         TYPE string.
DATA ex             TYPE REF TO CX_SY_REF_IS_INITIAL.
DATA imsg           TYPE REF TO IF_MESSAGE.
DATA smsg           TYPE string.

START-OF-SELECTION.

  g_ixml = cl_ixml=&amp;gt;create( ).
  streamfactory = g_ixml-&amp;gt;create_stream_factory( ).
  istream = streamfactory-&amp;gt;create_istream_uri( 'http://www.someremotesite.com/documents/docindex.xml' ).

  TRY.
    CALL TRANSFORMATION zsimplexslt
      SOURCE XML istream
      RESULT XML xmlstr.
  CATCH CX_SY_REF_IS_INITIAL INTO ex.
    imsg = ex.
    WRITE / 'EXCEPTION THROWN:'.
    smsg = imsg-&amp;gt;GET_LONGTEXT( ).
    smsg = imsg-&amp;gt;GET_TEXT( ).
    WRITE / smsg.
  ENDTRY.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Aug 2007 20:24:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692998#M304201</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-30T20:24:15Z</dc:date>
    </item>
    <item>
      <title>Re: getting XML via ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692999#M304202</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is there only a simple xpath expression possible? Or can I also use following expression:&lt;/P&gt;&lt;P&gt;/ORDERS05/IDOC/E1EDKA1[PARVW='AG']/PARTN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If no, are there any other ABAP/4 statements to solve this or only a mini-transformation (also in this thread).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards&lt;/P&gt;&lt;P&gt;  Helmut&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; Hello Mustafa,&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; the IXML library delievers all methods to retrieve&lt;/P&gt;&lt;P&gt;&amp;gt; and parse xml documents.&lt;/P&gt;&lt;P&gt;&amp;gt; For your needs replace "uri_to_xml" with uri to your&lt;/P&gt;&lt;P&gt;&amp;gt; xml document.&lt;/P&gt;&lt;P&gt;&amp;gt; With "find_from_path" you can get xml elements by&lt;/P&gt;&lt;P&gt;&amp;gt; simple xpath expression.&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; Hope it helps.&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; Regards&lt;/P&gt;&lt;P&gt;&amp;gt; Sebastian&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&amp;gt; DATA: lr_ixml                TYPE REF TO if_ixml,
&amp;gt; lr_ixml_doc            TYPE REF TO
&amp;gt;  if_ixml_document,
&amp;gt; lr_ixml_stream_factory TYPE REF TO
&amp;gt;  if_ixml_stream_factory,
&amp;gt; lr_ixml_istream        TYPE REF TO
&amp;gt;  if_ixml_istream,
&amp;gt; lr_ixml_parser         TYPE REF TO
&amp;gt;  if_ixml_parser,
&amp;gt; lr_ixml_element        type ref to
&amp;gt;  if_ixml_element,
&amp;gt;      lp_value               type string.
&amp;gt; ixml                = cl_ixml=&amp;gt;create( ).
&amp;gt; lr_ixml_doc            = lr_ixml-&amp;gt;create_document(
&amp;gt; ).
&amp;gt; lr_ixml_stream_factory =
&amp;gt; lr_ixml-&amp;gt;create_stream_factory( ).
&amp;gt; 
&amp;gt; lr_ixml_istream =
&amp;gt; lr_ixml_stream_factory-&amp;gt;create_istream_uri(
&amp;gt; uri_to_xml ).
&amp;gt; 
&amp;gt; lr_ixml_parser  = lr_ixml-&amp;gt;create_parser( document
&amp;gt;       = lr_ixml_doc
&amp;gt; istream        =
&amp;gt; lr_ixml_istream
&amp;gt; 
&amp;gt; tream_factory = lr_ixml_stream_factory ).
&amp;gt; 
&amp;gt; lr_ixml_parser-&amp;gt;parse( ).
&amp;gt; 
&amp;gt; lr_ixml_element = lr_ixml_doc-&amp;gt;find_from_path( path =
&amp;gt; '/root/some_node/currency' ).
&amp;gt; 
&amp;gt; lp_value = lr_ixml_element-&amp;gt;get_value( ).
&amp;gt; 
&amp;gt; * do something *
&amp;gt; *
&amp;gt; * data: ln_amount type i.
&amp;gt; *
&amp;gt; * ln_amount = lp_value.
&amp;gt; 
&amp;gt; &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Sep 2007 09:10:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-xml-via-abap/m-p/1692999#M304202</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-18T09:10:52Z</dc:date>
    </item>
  </channel>
</rss>

