Pasar de un .TXT a XML

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • gerbeltran
    Member
    • jun
    • 55

    #1

    Pasar de un .TXT a XML

    Gente alguien sabe si existe la manera de convertir en abap un archivo .txt en XML, o bien directamente como puedo generar un XML independientemente del origen de la información.

    Muchas gracias a todos y espero puedan darme una mano en esto.

    saludos,
    Germàn.
  • azua14
    Senior Member
    • jul
    • 140

    #2
    a decir verdad nunca he hecho nada con XML, pero intenta con la funcion BANK_API_PP_UT_DATA_TO_XML
    sino es eso...pues que puedo decir..a la SE37 y busca con *XML* y a probar funciones..

    Comentario

    • ballan
      Senior Member
      • oct
      • 671

      #3
      Revisa este post

      http://sap4.com/modules.php?name=con...pagina&pid=120

      Comentario

      • gerbeltran
        Member
        • jun
        • 55

        #4
        Muchas gracias a todos ya lo pude resolver...es muy sencillo.
        La clave está en la función 'SDIXML_DOM_TO_XML' que te hace la conversion.

        Gracias por el post!! y éxitos.

        saludos,
        Germán

        Comentario

        • Luis E. Muñoz A.
          Junior Member
          • oct
          • 2

          #5
          Generacion Archivo en XML

          Por favor Quien me Puede ayudar con este tema.
          Necesito generar un archivo en formato XML, se de una funcion
          SDIXML_DOM_TO_XML' como le paso los parametros.

          Comentario

          • XIPE_CSESD
            Member
            • abr
            • 96

            #6
            Por la red me encontre un codigo espero te sirva.

            * Databases
            TABLES:
            makt, "Mat description
            marc, "Material / plant
            t001w, "plant name
            bhdgd. "Batch heading

            * Internal tables
            DATA:
            BEGIN OF gt_marc OCCURS 0,
            werks LIKE marc-werks,
            matnr LIKE marc-matnr,
            END OF gt_marc,

            * Table to be downloaded as xml. Each line stores start and end tags
            * and the value
            BEGIN OF gt_xml OCCURS 0,
            line(120),
            END OF gt_xml,

            g_maktx(120).

            * User-input
            SELECT-OPTIONS:
            s_werks FOR marc-werks,
            s_matnr FOR marc-matnr.

            ************************************************** ********************
            START-OF-SELECTION.

            * Extract all required data
            PERFORM main_processing.

            ************************************************** ********************
            END-OF-SELECTION.

            SORT gt_marc BY werks matnr.

            LOOP AT gt_marc.

            AT FIRST. "First tag must be root
            CLEAR gt_xml.
            gt_xml-line = '<LOCATIONS>'.
            APPEND gt_xml.
            CLEAR gt_xml.
            ENDAT.

            AT NEW werks. "At new plant
            PERFORM read_plant.
            FORMAT COLOR 4 ON.
            SKIP 1.
            WRITE :/ gt_marc-werks, t001w-name1.
            FORMAT COLOR 4 OFF.
            CLEAR gt_xml.
            gt_xml-line = ' <PLANT>'.
            APPEND gt_xml.
            CLEAR gt_xml.
            CONCATENATE ' <NUMBER>' gt_marc-werks '</NUMBER>'
            INTO gt_xml-line.
            APPEND gt_xml.
            CLEAR gt_xml.
            CONCATENATE ' <NAME>' t001w-name1 '</NAME>' INTO gt_xml-line.
            APPEND gt_xml.
            CLEAR gt_xml.
            gt_xml-line = ' </PLANT>'.
            APPEND gt_xml.
            CLEAR gt_xml.
            ENDAT.

            PERFORM read_description.

            CLEAR gt_xml.
            gt_xml-line = ' <MATERIAL>'.
            APPEND gt_xml.
            CLEAR gt_xml.
            CONCATENATE ' <NAME>' g_maktx '</NAME>'
            INTO gt_xml-line.
            APPEND gt_xml.
            CLEAR gt_xml.
            CONCATENATE ' <NUMBER>' gt_marc-matnr '</NUMBER>'
            INTO gt_xml-line.
            APPEND gt_xml.
            CLEAR gt_xml.
            gt_xml-line = ' </MATERIAL>'.
            APPEND gt_xml.
            CLEAR gt_xml.

            * display data
            FORMAT COLOR 2 ON.
            WRITE :/ gt_marc-matnr, makt-maktx.
            FORMAT COLOR 2 OFF.
            ENDLOOP.

            * The last tag must be the root closing tag --*
            gt_xml-line = '</LOCATIONS>'.
            APPEND gt_xml.
            CLEAR gt_xml.

            CALL FUNCTION 'DOWNLOAD'
            EXPORTING
            filename = 'C:PLANT1.XML'
            filetype = 'ASC'
            TABLES
            data_tab = gt_xml.

            ************************************************** ********************
            TOP-OF-PAGE.

            MOVE sy-title TO bhdgd-line1.
            MOVE sy-repid TO bhdgd-repid.
            MOVE sy-uname TO bhdgd-uname.
            MOVE sy-datum TO bhdgd-datum.
            MOVE '0' TO bhdgd-inifl.
            MOVE '132' TO bhdgd-lines.
            FORMAT INTENSIFIED ON COLOR COL_HEADING.
            PERFORM batch-heading(rsbtchh0). "report header

            *---------------------------------------------------------------------*
            * Form READ_PLANT
            *---------------------------------------------------------------------*
            FORM read_plant.

            * Get plant name
            CLEAR t001w.
            SELECT SINGLE name1
            INTO t001w-name1
            FROM t001w
            WHERE werks EQ gt_marc-werks.

            ENDFORM. " READ_PLANT
            *---------------------------------------------------------------------*
            * Form MAIN_PROCESSING
            *---------------------------------------------------------------------*
            FORM main_processing.

            * Material and plant basic data
            SELECT werks matnr
            INTO TABLE gt_marc
            FROM marc
            WHERE werks IN s_werks
            AND matnr IN s_matnr.

            ENDFORM. " MAIN_PROCESSING
            *---------------------------------------------------------------------*
            * Form READ_DESCRIPTION
            *---------------------------------------------------------------------*
            FORM read_description.

            * Material name
            CLEAR g_maktx.
            SELECT SINGLE maktx
            INTO g_maktx
            FROM makt
            WHERE matnr EQ gt_marc-matnr
            AND spras EQ 'E'.

            * Replace special character
            DO.
            REPLACE '&' WITH '*ù%;' INTO g_maktx.
            IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.
            ENDDO.
            DO.
            REPLACE '*ù%;' WITH '&amp;' INTO g_maktx.
            IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.
            ENDDO.
            DO.
            REPLACE '/' WITH '/' INTO g_maktx.
            IF NOT sy-subrc IS INITIAL. EXIT.ENDIF.
            ENDDO.

            ENDFORM. " READ_DESCRIPTION

            Comentario

            Trabajando...