Foro -Documentación -Código fuente -Contacto -Empleo

Buscar

Traducir

Amazon

ZDOMXML PDF Imprimir E-mail
Usar puntuación: / 0
MaloBueno 
Código fuente - Ejemplos
Domingo, 07 de Diciembre de 2003 14:44
Ejemplo conversion datos a XML
REPORT z.

DATA: it_table LIKE dd02l OCCURS 0.

DATA: l_dom TYPE REF TO IF_IXML_ELEMENT,
       m_document TYPE REF TO IF_IXML_DOCUMENT,
       g_ixml TYPE REF TO IF_IXML,
       w_string TYPE XSTRING,
       w_size TYPE I,
       w_result TYPE I,
       w_line TYPE STRING,
       it_xml TYPE DCXMLLINES,
       s_xml LIKE LINE OF it_xml,
       w_rc LIKE SY-SUBRC.

START-OF-SELECTION.
  SELECT * FROM dd02l INTO TABLE it_table
   up TO 10 rows.

END-OF-SELECTION.
********************************************
**** initialize iXML-Framework          ****
********************************************
  WRITE / 'initialiazing iXML:'.
   class cl_ixml definition load.
   g_ixml = cl_ixml=>create( ).
   check NOT g_ixml IS INITIAL.
  WRITE: 'ok'.

********************************************
**** create DOM from SAP data           ****
********************************************
  WRITE / 'creating iXML doc:'.
   m_document = g_ixml->create_document( ).
   check NOT m_document IS INITIAL.
  WRITE: 'ok'.

  WRITE / 'converting DATA TO DOM 1:'.
  CALL FUNCTION 'SDIXML_DATA_TO_DOM'
    EXPORTING
       NAME = 'IT_TABLE'
       DATAOBJECT = it_table[]
    IMPORTING
       DATA_AS_DOM = l_dom
    CHANGING
       DOCUMENT = m_document
    EXCEPTIONS
       ILLEGAL_NAME = 1
       OTHERS = 2.
  IF SY-SUBRC = 0. WRITE  'ok'.
  ELSE WRITE: 'Err =', SY-SUBRC.
  ENDIF.
   check NOT l_dom IS INITIAL.

  WRITE / 'appending DOM to iXML doc:'.
   w_rc = m_document->append_child( new_child = l_dom ).
  IF w_rc IS INITIAL WRITE  'ok'.
  ELSE WRITE: 'Err =', w_rc.
  ENDIF.

********************************************
**** visualize iXML (DOM)               ****
********************************************
  WRITE / 'displaying DOM:'.
  CALL FUNCTION 'SDIXML_DOM_TO_SCREEN'
    EXPORTING
       DOCUMENT = m_document
    EXCEPTIONS
       NO_DOCUMENT = 1
       OTHERS = 2.
  IF SY-SUBRC = 0. WRITE  'ok'.
  ELSE WRITE: 'Err =', SY-SUBRC.
  ENDIF.

********************************************
**** convert DOM to XML doc (table)     ****
********************************************
  WRITE / 'converting DOM TO XML:'.
  CALL FUNCTION 'SDIXML_DOM_TO_XML'
    EXPORTING
       DOCUMENT = m_document
*     PRETTY_PRINT        = ' '
    IMPORTING
       XML_AS_STRING = w_string
       SIZE = w_size
    TABLES
       XML_AS_TABLE = it_xml
    EXCEPTIONS
       NO_DOCUMENT = 1
       OTHERS = 2.
  IF SY-SUBRC = 0. WRITE  'ok'.
  ELSE WRITE: 'Err =', SY-SUBRC.
  ENDIF.

  WRITE / 'XML as string of size:', w_size, / w_string.

   describe TABLE it_xml lines w_result.
  WRITE / 'XML as table of', w_result,  'lines:'..
  LOOP AT it_xml INTO s_xml.
    WRITE s_xml.
  ENDLOOP.

  WRITE / 'end of processing'.
* end of code
Comentarios
Buscar
¡Sólo los usuarios registrados pueden escribir comentarios!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 
home search