Announcement

Collapse
No announcement yet.

XMLSN Transformation vererbt ungewollt daten.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XMLSN Transformation vererbt ungewollt daten.

    Hallo liebe XML Entwickler, ich habe folgendes problem:

    In meiner SAP Simple Transformation, wird die Zeile xmlns ivon OpenShipments nach Openshipment vererbt.

    Das kann aber das empfangende Programm nicht verarbeiten (UPS Worldship).

    Anbei die Bilder des IST und SOLL - zustandes ( Das Umkringelte soll nicht erscheinen ).

    IST XML.jpgSoll XML.jpg


    Dazu benutze ich folgenden Code zum Transformieren:


    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sap="http://www.sap.com/sapxsl" version="1.0">
    <xsl:stylesheet version="1.0">
    </xsl:stylesheet>

    <xslutput encoding="windows-1252" indent="no" method="xmlns " version="1.0"/>

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

    <xsl:template match="/">

    <OpenShipments xmlns="x-schema:OpenShipments.xdr">

    <xsl:apply-templates select="//OpenShipment/ZSDIUPSOUT"/>

    </OpenShipments>

    </xsl:template>

    <xsl:template match="OpenShipment/ZSDIUPSOUT">


    <OpenShipment ProcessStatus="" ShipmentOption="">

    <ShipTo>
    <CustomerID>
    <xsl:value-of select="KUNWE"/>
    </CustomerID>
    <CompanyOrName>
    <xsl:value-of select="NAME1_WE"/>
    </CompanyOrName>
    <Attention>
    <xsl:value-of select="NAME1_WE"/>
    </Attention>
    <Address1>
    <xsl:value-of select="STRAS_WE"/>
    </Address1>
    <Address2>
    <xsl:value-of select="NAME2_WE"/>
    </Address2>
    <Address3>
    <xsl:value-of select="NAME3_WE"/>
    </Address3>
    <CountryTerritory>
    <xsl:value-of select="LAND1_WE"/>
    </CountryTerritory>
    <PostalCode>
    <xsl:value-of select="PSTLZ_WE"/>
    </PostalCode>
    <CityOrTown>
    <xsl:value-of select="ORT01_WE"/>
    </CityOrTown>
    <StateProvinceCounty>
    <xsl:value-of select="REGIO_WE"/>
    </StateProvinceCounty>
    <Telephone>
    <xsl:value-of select="TEL_NUMBER"/>
    </Telephone>
    <EmailAddress>
    <xsl:value-of select="AD_SMTPADR"/>
    </EmailAddress>
    <ReceiverUpsAccountNumber>
    <xsl:value-of select="RECEIVEUPS"/>
    </ReceiverUpsAccountNumber>
    <TaxIDNumber>
    <xsl:value-of select="TAXID"/>
    </TaxIDNumber>

    </ShipTo>
    <ShipmentInformation>
    <ServiceType>
    <xsl:value-of select="SERVICE"/>
    </ServiceType>
    <PackageType>
    <xsl:value-of select="PACKTYP"/>
    </PackageType>
    <NumberOfPackages>
    <xsl:value-of select="ANZPK"/>
    </NumberOfPackages>
    <ShipmentActualWeight>
    <xsl:value-of select="BRGEW"/>
    </ShipmentActualWeight>
    <DescriptionOfGoods>
    <xsl:value-of select="ARKTX"/>
    </DescriptionOfGoods>
    <Reference1>
    <xsl:value-of select="REFER1"/>
    </Reference1>
    <Reference2>
    <xsl:value-of select="REFER2"/>
    </Reference2>
    <Reference3>
    <xsl:value-of select="REFER3"/>
    </Reference3>
    <Reference4>
    <xsl:value-of select="REFER4"/>
    </Reference4>
    <BillingOption>
    <xsl:value-of select="FAKTURART"/>
    </BillingOption>

    <PrinterID>
    <LabelID>
    <xsl:value-of select="PDEST"/>
    </LabelID>
    </PrinterID>

    </ShipmentInformation>
    </OpenShipment>

    </xsl:template>


    </xsl:transform>

    Um Hilfe wird gebeten. Hat jemand eine Idee ?

    Freundliche Grüße aus Nürnberg

  • #2
    Ich sehe mehrere formale Probleme:
    - Verwende entweder xsl:transform oder xsl:stylesheet (beide sind gültige Wurzelelemente).
    - Was soll method="xmlns" bei xslutput bewirken? Hier soll vermutlich "xml" stehen.
    - Wenn der Default-Namensraum in der Ausgabe das eigentliche Problem ist, dann deklariere diesen nur beim Stylesheet-Wurzelelement, also:
    [highlight=xml]<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:sap="http://www.sap.com/sapxsl" xmlns="x-schema:OpenShipments.xdr">
    <!-- ... -->
    <xsl:template match="/">
    <OpenShipments>
    <!-- ... -->
    </OpenShipments>
    </xsl:template>
    <!-- ... -->
    </xsl:transform>[/highlight]

    Comment


    • #3
      Vielen Dank Herr Meinike,

      So hat es Funktioniert !

      Vielen Dank, Sie haben meinen Tag gerettet !

      Gerhard Dürnberger

      Comment

      Working...
      X