XML --> ABAP


Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV

Moderatoren: Jan, Steff

XML --> ABAP

Beitragvon Gast » 18.11.2005, 08:40

Hi Leute!!
Brauch eure Hilfe zu einem Problem. Ich muss eine XML-Datei in ABAP umwandeln, ich will die Daten in eine interne Tabelle schreiben.

Hier der Code:

XML:
Code: Alles auswählen
<?xml version="1.0" encoding="iso-8859-1" ?>
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
        <asx:values>
                <kunde>
                        <kunnr>0000012345</kunnr>
                        <name1>Max</name1>
                        <name2>Mustermann</name2>
                </kunde>
        </asx:values>
</asx:abap>
 


XSLT:
Code: Alles auswählen
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sapxsl="http://www.sap.com/sapxsl" version="1.0">
  <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">

    <xsl:strip-space elements="*"/>

    <xsl:template match="KUNDE">
      <xsl:template match="KUNNR">
        <xsl:value-of select="."/>
      </xsl:template>

      <xsl:template match="NAME1">
        <xsl:value-of select="."/>
      </xsl:template>

      <xsl:template match="NAME2">
        <xsl:value-of select="."/>
      </xsl:template>
    </xsl:template>

  </asx:abap>
</xsl:transform>
 


ABAP:
Code: Alles auswählen
DATA: wa_pfad TYPE string.

DATA: BEGIN OF i_tab,
        kunnr    TYPE  kunnr,
        name1    TYPE  name1,
        name2    TYPE  name2,
        END OF i_tab.

  MOVE: p_pfad TO wa_pfad.

      CALL TRANSFORMATION ztestxml_xslt
      SOURCE XML wa_pfad
      RESULT kunnr = i_tab-kunnr
             name1 = i_tab-name1
             name2 = i_tab-name2.

      LEAVE TO LIST-PROCESSING.

      WRITE: i_tab.
 


Ich bekomme dann Folgendes:
Code: Alles auswählen
Laufzeitfehler         UNCAUGHT_EXCEPTION  
Ausnahme               CX_XSLT_RUNTIME_ERROR
 


Selbst wenn man in der XML-Datei die asx-Anweisungen weglässt funktioniert es nicht.

Was mir aufgefallen ist, dass wenn man das XSLT-Programm ausführt folgendes ausgegeben wird (bei dem Coding^^):
Code: Alles auswählen
<?xml version="1.0" encoding="iso-8859-1"?>#        
##########0000012345#####Max#####Mustermann#########
 


Habt ihr vielleicht 'ne Idee warum das Programm einen Laufzeitfehler ausgibt?
Gast
 

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Zurück zu ABAP® Core

  Aktuelle Beiträge   
Steuerliches Abgangsland in Verkaufsbeleg ändern
vor 4 Stunden von Julia611 0 Antw.
XML hochladen, Abschnitte suchen, Abschnitte als XML zurück
vor 3 Stunden von deejey 1 Antw.
(LKW)Bedarfsvorschau je Debitor
vor 2 Tagen von wreichelt 5 Antw.
Lieferplan, Einteilungen, Feinabrufe
vor 3 Tagen von bapimueller 0 Antw.
gelöst Smartforms Struktur rechtsbündig
vor 3 Tagen von qyurryus 3 Antw.

  Ähnliche Beiträge beta
OLE ABAP VBA...
08.05.2006, 14:21 von zzcpak 1 Antw.
XML zu ABAP und ABAP zu XML
26.07.2006, 10:18 von Yvonne 4 Antw.
FTP aus ABAP
21.08.2006, 14:47 von Asaph 1 Antw.
ABAP-SQL Frage
03.12.2003, 19:57 von Gast 6 Antw.
Fax aus Abap versenden
08.03.2007, 15:28 von JHM 4 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder