Hallo OXID-Freunde,
ich habe ein Modul, welches nach Abschluss einer Bestellung, die Daten an eine Warenwirtschaft überträgt. Die Bestellungen können von Ebay, Amazon (beides drittanbieter-module) oder nativ aus dem Shop kommen.
Hierzu überlade ich _setOrderStatus() im Order-Objekt.
Hier muss ich dann prüfen, von wo diese Bestellung kommt.
Beim Ebay-Modul mache ich das so:
$oCurrentOrder = $this;
$test_ebay_oxorderreferrer = (trim($oCurrentOrder->oxorder__oxorderreferrer->getRawValue()) == "referrer_ebay") ? "true" : "false";
$test_ebay_ebayorder_id = (trim($oCurrentOrder->oxorder__ebayorder_id->getRawValue()) != "") ? "true" : "false";
$test_ebay_complete = (trim($oCurrentOrder->oxorder__ebay_complete->getRawValue()) == "1") ? "true" : "false";
$test_ebay_user = (trim($oCurrentOrder->oxorder__ebay_user->getRawValue()) != "") ? "true" : "false";`
Hier kann ich prima auf diese Spalten des ebay-Moduls zugreifen.
Wenn ich nun aber eine Bestellung nativ aus dem Shop abschließe, kommt ein Fehler, dass
$oCurrentOrder->oxorder__oxorderreferrer ein Boolscher wert ist und daher keine Methoden hat.
mit einem Var-Dump des $oCurrentOrder - Objektes zeigt sich, dass viele Spalten das Field-Objekt beinhalten, viele andere Spalten aber false sind.
Woran liegt das und wie kann ich erzwingen dass alle Datenbankfelder in das objekt geladen werden?
Danke vorab.