CheckoutSuccessExtender und getOrderTotals

Thema wurde von tradefit, 12. März 2019 erstellt.

  1. tradefit

    tradefit Neues Mitglied

    Registriert seit:
    16. April 2018
    Beiträge:
    3
    Danke erhalten:
    0
    Hallo,

    wie kann man bei einem eigenen CheckoutSuccessExtender den Netto-Warenkorbwert ohne Versandkosten auslesen um diesen in einem HTML-Code zu verwenden. Läuft das über getOrderTotals() oder gibt dazu eine andere Methode auf die man zugreifen kann.

    Danke im Voraus an die Community.

    VG Antonio
     
  2. Developer

    Developer Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    2.885
    Danke erhalten:
    617
    Danke vergeben:
    113
  3. tradefit

    tradefit Neues Mitglied

    Registriert seit:
    16. April 2018
    Beiträge:
    3
    Danke erhalten:
    0
    Danke für die ersten Rückmeldungen. Leider war ich auf diesen Seiten bereits schon unterwegs. Da finde ich keine Antwort.
    Es geht mir darum wir ich aus einer abgeschlossenen Bestellung die Daten wir Art.Nr. Art.Preis etc. rauslesen kann.
    Die Bestellnummer kann ich bereits abfangen. Bei der Rest habe ich bis jetzt keine Lösung.
     
  4. Developer

    Developer Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    2.885
    Danke erhalten:
    617
    Danke vergeben:
    113
    Wenn Du die orders_id hast, dann kommst Du doch an alle Tabellen.

    Es gibt diverse Klassen und Funktionen, wo Du mit arbeiten kannst. Du musst dich schon, wenn Du es selber realisieren möchtest, mit der Materie befassen, auch, wenn es am Anfang ziemlich abstrakt für dich ist.

    Ich frage mal anders: Welchen Teil hast Du nicht verstanden, also wo hakt es genau?
     
  5. tradefit

    tradefit Neues Mitglied

    Registriert seit:
    16. April 2018
    Beiträge:
    3
    Danke erhalten:
    0
    #6 tradefit, 12. März 2019
    Zuletzt bearbeitet: 12. März 2019
    Ich habe mich mit der Materie schon befasst:

    anbei mein Code:

    class BilligerTrackingCheckoutSuccessExtender extends BilligerTrackingCheckoutSuccessExtender_parent
    {
    function proceed()
    {

    parent::proceed();

    $orderId = new IdType($this->v_data_array['orders_id']);
    $this->html_output_array[] = $this->createOrderDetails($orderId);
    }

    private function createOrderDetails(IdType $orderId)
    {
    $orderReadService = StaticGXCoreLoader::getService('OrderRead');
    $order = $orderReadService->getOrderById($orderId);
    $orderTotalBlock = $order->getOrderTotals();

    $html = '<div style="display:inline;"><img src="https://billiger.de/sale?shop_id=00000&oid=' . $order->getOrderId() . '&val=' . $orderTotalBlock->getArray() . '" width="1" height="1" border="0" alt="" /></div>';

    return $html;
    }
    }


    Bei $orderTotalBlock gibt mir getArray nur das Wort Array zurück
    Wenn ich dies mit getPrice ersetze, dann bekomme in fatal errror mit dem Hinweis, dass dies nicht auszulesen ist.

    Woran liegt es?

    Leider finde ich nirgends eine Erklärung.
     
  6. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.660
    Danke erhalten:
    1.262
    Danke vergeben:
    300
    ist ja ein Array, also muss du das erst noch durchlaufen um dort den Endpreis auszulesen, oder gezielt den Endpreis aus dem Array ansprechen $orderTotalBlock->getArray()[index].
    Wenn du dir mit var_dump($orderTotalBlock->getArray()); das mal ausgeben lässt siehst du gleich welcher Wert dein Endpreis ist, oder die Zwischensumme in deinem Fall da du das ohne Versandkosten haben möchtest.
     
  7. Kai Schoelzke

    Kai Schoelzke Beta-Held

    Registriert seit:
    30. März 2016
    Beiträge:
    3.803
    Danke erhalten:
    548
    Danke vergeben:
    248
    Hallo Antonio, es gibt zwei Möglichkeiten entweder du Quälst dich selbst oder kaufst was fertiges sende mir einfach eine pn, ich schick dir dann einen Link.
     
  8. Developer

    Developer Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    2.885
    Danke erhalten:
    617
    Danke vergeben:
    113
    Weißt Du denn, warum das so ist? :rolleyes: