Formel für Versandkostenberechnung einbinden

Hallo Entwickler-Gemeinde!

Wie empfohlen, stelle ich meine Frage hier im Entwickler-Forum, da ich leider mit der bisherigen Antwort auch nicht weiter komme.
Ich möchte eine Formel für die Versandkostenberechnung einbinden, die auf dem Gesamtgewicht des Warenkorbs beruht und die Entfernung in KM vom Standort zur Lieferadresse berücksichtigt, welche in der oxuser und oxaddress in einem neuen Feld wekm hinterlegt wird.
Ich habe eine

class mydelcost extends mydelcost_parent 
public function getDeliveryPrice ..
...
case '%'
    if ($this->oxdelivery__oxaddsum->value == 999) {
                $bWeight = oxSession::getInstance()->getBasket()->getWeight();
	$km = $oUser->oxuser__wekm->value;
	$this->_oPrice->add($km * $bWeight + 5 );
...

erstellt, die oxdelivery erweitert (getDeliveryPrice hab ich aus oxdelivery kopiert).

Die if-Verzweigung wird auch korrekt ausgewählt, für die vorgesehenen Produkte, aber
das Problem hier ist, dass ich die Werte für das Gesamtgewicht vom Warenkorb und den Inhalt aus dem User-Feld nicht bekomme, obwohl ich im Debug-Modus die richtigen Werte in _dWeight und bei oxuser__wekm sehen kann. Auf der Admin-Seite beim User kann ich auch mit dem Feld wekm fehlerfrei arbeiten, es ist also korrekt angelegt, denke ich. Aber beim Ergebnis erhalte ich immer nur 5€ also sind die Variablen wohl leer.

Kann mir jemand sagen, was ich hier falsch mache, oder was ich ändern muss, um bei der Versandkostenberechnung mit den Werten richtig arbeiten kann?

Wir arbeiten mit der CE 4.5.4

Vielen Dank im Voraus
Martin

Hallo,

den Bug für das Warenkorbgewicht habe ich wohl gefunden. Da jede Variante ein eigenes Gesamtgewicht hat, da unterschiedliche Anzahl von Einzelteilen enthalten ist, wurde beim Basis-Produkt kein Gewicht angezeigt. Da ich das richtige Gewicht der Variante anzeigen konnte, ging ich nicht davon aus, dass ich das Gewicht brauche. Nachdem ich ein pseudo-Gewicht von 1 eingegeben habe beim Basis-Produkt bekomme ich auch das Basket-Gesamtgewicht der Varianten im Warenkorb.

Leider bekomme ich immer noch nicht die Daten aus oxuser oder oxaddress. Kann mir da noch jemand einen Tipp geben. Ist oUser die richtige Klasse?

Viele Grüße
Martin