How to download IDoc as XML file?

IDocs are sent to the Java Connector(JCo) as an IDoc-XML string. If you want to see how IDoc-XML look like, follow the below steps to download the IDoc to frontend as XML file.

  1. First create a IDoc object for a given idoc number.
  2. Get IDoc XML data as a string.
  3. Download the XML string to frontend.
PARAMETERS: p_idoc TYPE edidd-docnum.

DATA: o_idoc_xml TYPE REF TO cl_idoc_xml1.
DATA: gv_string  TYPE string.
DATA: gt_string  TYPE TABLE OF string.

*Create IDoc object
CREATE OBJECT o_idoc_xml
EXPORTING
docnum = p_idoc
EXCEPTIONS
OTHERS = 1.
IF sy-subrc NE 0.
  WRITE: /'Error creating idoc object'.
  EXIT.
ENDIF.

*Get IDoc data as string
CALL METHOD o_idoc_xml->get_xmldata_as_string
  IMPORTING
    data_string = gv_string.

APPEND gv_string TO gt_string.

IF sy-subrc NE 0 OR o_idoc_xml IS INITIAL.
  WRITE: /'Error getting xml data as string'.
  EXIT.
ENDIF.

*Download IDoc data as XML file
CALL FUNCTION 'GUI_DOWNLOAD'
  EXPORTING
    filename = 'C:\idoc.xml'
  TABLES
    data_tab = gt_string.

Downloaded XML file

ALE-IDoc-1


3 Comments

  1. hi, very nice topic, could you please give me, more explain about
    this.. How to download IDoc as XML file?

  2. Very useful, many thanks for this – it has enabled an upstream system to do development on the IDOC whilst ABAP work is not yet complete.

Comments are closed.