In diesem Anwendungsbeispiel soll folgende Unterscheidung getroffen werden: Privatkunden bestellen versandkostenfrei, für Firmenkunden fallen Versandkosten an.

Ob der Käufer ein Privat- oder Firmenkunde ist, kann z. B. ermittelt werden durch

die Abfrage eines Adresstyps mithilfe eines Suffix-Feldes oder

die Prüfung, ob das Firmenfeld Company gefüllt ist oder nicht.

Beide Methoden stellen wir im Folgenden vor.

Inhalt

Zuordnung über den Adresstyp

Zuordnung über das Feld "Company"

 

Zuordnung über den Adresstyp

Alle Integrationsschritte finden in der Shopkonfiguration shop.config statt.

Schritt 1: Anpassung des Abschnittes AddressFields-Txt

<AddressFields-Txt>
   ...
   Suffix1             = Adressart
   ...
</AddressFields-Txt>

Referenz: Abschnitt AddressFields-Txt

Schritt 2: Anpassung des Abschnittes A-Suffix1

<A-Suffix1>
   <+Entry>
      Name             = Privat
      Value            = 01
   </+Entry>
   <+Entry>
      Name             = Firma
      Value            = 02
   </+Entry>
</A-Suffix1>

Referenz: Abschnitte A-Suffix...

Schritt 3: Anpassung des Abschnittes DelivererAddressDependencies-Definitions

<DelivererAddressDependencies-Definitions>
 
   # Versandkostenfreiheit für B2C (Privatkunden)
   # Wenn in Suffix1-Liste für Adressart "Privat" gewählt wurde
   <+AddressDependency>
      AddressDependency-ID   = nocost
      <+DependencyGroup>
         <+Dependency>   
            Input            = billaddress
            <+Condition>
               Field         = suffix1
               Type          = value
               Value         = 01
            </+Condition>
         </+Dependency>
      </+DependencyGroup>
   </+AddressDependency>
 
   # Versandpflichtig für B2B (Geschäftskunden)
   # Wenn in Suffix1-Liste für Adressart NICHT "Privat" gewählt wurde
   <+AddressDependency>
      AddressDependency-ID   = cost
      <+DependencyGroup>
         <+Dependency>   
            Input            = billaddress
            <+Condition>
               Field         = suffix1
               Type          = notvalue
               Value         = 01
            </+Condition>
         </+Dependency>
      </+DependencyGroup>
   </+AddressDependency>
 
</DelivererAddressDependencies-Definitions>

Referenz: Abschnitt DelivererAddressDependencies-Definitions

Schritt 4: Die Definition der Abhängigkeit den einzelnen Versandarten per UseAddressDependency-ID zuweisen

<+Deliverer>
   Allow                      = yes
   Name-Txt                   = DHL kostenpflichtig (B2B)
   BasicCost-List             = (0:4.95)
   ...
   +UseAddressDependency-ID   = cost
   ...
</+Deliverer>
 
<+Deliverer>
   Allow                      = yes
   Name-Txt                   = DHL versandkostenfrei (B2C)
   BasicCost-List             = (0:0)
   ...
   +UseAddressDependency-ID   = nocost
   ...
</+Deliverer>

Referenz: Abschnitt +Deliverer
Wegweiser: Versandarten anlegen

 

Zuordnung über das Feld "Company"

Alle Integrationsschritte finden in der Shopkonfiguration shop.config statt.

Schritt 1: Anpassung des Abschnittes AddressFields-Txt

<AddressFields-Txt>
   ...
   Company               = Firma
   ...
</AddressFields-Txt>

Referenz: Abschnitt AddressFields-Txt

Schritt 2: Anpassung des Abschnittes DelivererAddressDependencies-Definitions

<DelivererAddressDependencies-Definitions>
 
   # Versandkostenfreiheit für B2C (Privatkunden)
   # Wenn das Firmenfeld nicht gefüllt ist
   <+AddressDependency>
      AddressDependency-ID   = nocost
      <+DependencyGroup>
         <+Dependency>   
            Input            = billaddress
            <+Condition>
               Field         = company
               Type          = empty
            </+Condition>
         </+Dependency>
      </+DependencyGroup>
   </+AddressDependency>
 
   # Versandpflichtig für B2B (Geschäftskunden)
   # Wenn das Firmenfeld ausgefüllt ist
   <+AddressDependency>
      AddressDependency-ID   = cost
      <+DependencyGroup>
         <+Dependency>   
            Input            = billaddress
            <+Condition>
               Field         = company
               Type          = filled
            </+Condition>
         </+Dependency>
      </+DependencyGroup>
   </+AddressDependency>
 
</DelivererAddressDependencies-Definitions>

Referenz: Abschnitt DelivererAddressDependencies-Definitions

Schritt 3: Die Definition der Abhängigkeit den einzelnen Versandarten per UseAddressDependency-ID zuweisen

<+Deliverer>
   Allow                      = yes
   Name-Txt                   = DHL kostenpflichtig (B2B)
   BasicCost-List             = (0:4.95)
   ...
   +UseAddressDependency-ID   = cost
   ...
</+Deliverer>
<+Deliverer>
   Allow                      = yes
   Name-Txt                   = DHL versandkostenfrei (B2C)
   BasicCost-List             = (0:0)
   ...
   +UseAddressDependency-ID   = nocost
   ...
</+Deliverer>

Referenz: Abschnitt +Deliverer
Wegweiser: Versandarten anlegen