Skip to Content
0
Aug 27, 2014 at 03:34 PM

How to read XML file from server

1041 Views

Hi!!

I'have 4.6c version and I must to read an XML file from server, I wrote this sample code:

REPORT zflavio_xml2.

* & ------------------------------------------------ --------------------- *

* Date & Declaration

* & ------------------------------------------------ --------------------- *

DATE: LIKE rlgrap-filename file.

file = '/usr/usrsap/CRD/transfer/SEPASCT_SSBPAE/IN/R4_ESEMPIO.xml'.

DATE: gcl_xml TYPE REF TO cl_xml_document.

DATE: gv_subrc TYPE sy-subrc.

DATA: TYPE gv_xml_string xstring.

DATA: TYPE gv_size sytabix.

DATE: gt_xml_data TYPE TABLE OF smum_xmltb.

DATA: TYPE gwa_xml_data smum_xmltb OCCURS 0 WITH HEADER LINE.

* DATA: TYPE gwa_xml_data smum_xmltb.

DATE: gt_return TYPE TABLE OF bapiret2.

DATA: TYPE gv_tabix sytabix.

DATE: len TYPE i.

* & ------------------------------------------------ --------------------- *

* & Start-of-selection

* & ------------------------------------------------ --------------------- *

START-OF-SELECTION.

OPEN DATASET file FOR INPUT IN BINARY MODE.

IF sy-subrc = 0.

DO.

READ DATASET INTO gv_xml_string file. "ACTUAL LENGTH len.

* IF sy-subrc NE 0.

EXIT.

* ENDIF.

ENDDO.

ENDIF.

CLOSE DATASET file.

CALL FUNCTION 'SMUM_XML_PARSE'

EXPORTING

xml_input = gv_xml_string

TABLES

xml_table = gwa_xml_data

return = gt_return.

WRITE: / 'heirarchy', 11 'Type', 17 'Name', 37 'Value'.

LOOP AT gwa_xml_data.

WRITE: / gwa_xml_data-hier,

11 gwa_xml_data-type,

17 gwa_xml_data-cname,

37 gwa_xml_data-cValue.

CLEAR gwa_xml_data.

ENDLOOP.

the problem is that in the internal table, the program writes correctly the first twenty records, but it cuts all the others.

Does anyone know help me?

Thanks a lot,

Flavio Mariola