# Komplexe Versandkostenberechnung basierend auf Freitextfeld

**URL:** <https://forum.shopware.com/t/komplexe-versandkostenberechnung-basierend-auf-freitextfeld/56344>\
**Category:** Allgemein\
**Created:** [9. November 2018 um 12:35 UTC](https://forum.shopware.com/t/komplexe-versandkostenberechnung-basierend-auf-freitextfeld/56344 "2018-11-09T12:35:07Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![chiliSCHARF](https://avatars.discourse-cdn.com/v4/letter/c/e0b2c6/32.png) [@chiliSCHARF](https://forum.shopware.com/u/chiliSCHARF)\
**Post date:** [9. November 2018 um 12:35 UTC](https://forum.shopware.com/t/komplexe-versandkostenberechnung-basierend-auf-freitextfeld/56344/1 "2018-11-09T12:35:07Z")

</div>

Halli liebe Community,

ich versuche folgende Versandmatrix mit der eigenen Berechnung und eigenen Bedinungen abzubilden:

Es gibt ein Freitextfeld, dies definiert einen Artikel als Sperrgut-Artikel: **at.attr15**

**Eigene Bedinung für Standard-Versand:**

Meine Berechnung für normale Artikel sieht derweilen so aus und funktioniert auch für sich alleine:  
Hier werden einfach 29.33 Euro + Die jeweilige ArtikelStaffel auch korrekt ausgegeben.

```
29.33 +
IF(SUM(b.quantity) <= 2,7.84,
IF(SUM(b.quantity) <= 4,15.68,
IF(SUM(b.quantity) <= 6,23.52,
IF(SUM(b.quantity) <= 8,31.36,
IF(SUM(b.quantity) <= 10,39.2,
IF(SUM(b.quantity) <= 12,47.04,
IF(SUM(b.quantity) <= 14,54.88,
IF(SUM(b.quantity) <= 16,62.72,
IF(SUM(b.quantity) <= 18,70.56,
IF(SUM(b.quantity) <= 20,78.40,
IF(SUM(b.quantity) <= 22,86.24,
IF(SUM(b.quantity) <= 24,94.08,0)))))))))))) 

```

**Bedingung für Sperrgutartikel:**  
Die Bedinung für Sperrgutartikel funktioniert ebenfalls.

```
IF(at.attr15,1,105.73)
+SUM(IF(at.attr15 = '1',(b.quantity)*97.75,0))

```

**Mischwarenkorb:**

Das eigentlich komplizierte tritt erst bei einem Mischwarenkorb auf, sprich ich habe zb. **1 Sperrgutartike** l und **6 Standardartikel:**

Wie muss das Statement aussehen, dass es funktioniert?&nbsp;Ich dachte dann an so einen Ansatz:

```
IF(at.attr15,1,105.73)
+SUM(IF(at.attr15 = '1',(b.quantity)*97.75,0))
+SUM(IF(at.attr15 IS NULL,"WERT",0))

```

Wobei als WERT eben die Staffel des Standard-Versandes wieder greifen sollte. Wenn das funktionieren würde, könnte man sich theoretisch überhaupt die Bedingungen sparen.

Bin über jeden Hinweis sehr dankbar.
