Bekommen, Um Increment Id in Magento
Ich versuche, um die Reihenfolge Increment Id in Magento, die auf den Erfolg.phtml-Seite, so dass ich verwenden können, diese affiliate-tracking.
Ich bin mit dem folgenden code, aber es gibt einen Fehler in der zweiten Zeile;
$order = Mage::getSingleton('sales/order')->getLastOrderId();
$lastOrderId = $order->getIncrementId();
Der Fehler lautet:
Fatal error: Call to a member function getIncrementId() on a non-object in Zeile 34: $LastOrderId = $order->getIncrementId();
Ich Frage mich, ob jemand irgendwelche Ideen auf, wie man die Reihenfolge Increment Id? Dies ist die Referenznummer, die im admin gesehen, in der Regel so etwas wie: #1000123
InformationsquelleAutor der Frage doubleplusgood | 2010-02-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie konkret tun dies auf der checkout-Seite Erfolg - Erfolg ein.phtml - dann den code, um die Reihenfolge Inkrement ID ist bereits in der Vorlage, da es für den Kunden.
Brauchen Sie nur die folgenden:
Beachten Sie, dass das nicht funktionieren wird auf anderen Seiten so, für diejenigen, die Sie brauchen, um zu verwenden:
InformationsquelleAutor der Antwort Chris Norton
$Bestellung in deinem code wird die Letzte Bestellung-ID...wie der name der Funktion andeutet. Wenn dies nicht der Wert, den Sie möchten, dann verwenden Sie es zu laden, eine Bestellung, und verwenden Sie dann die get-Methode auf:
InformationsquelleAutor der Antwort Greg
Dies funktioniert perfekt, ich m laufen diese in mein Modul jetzt.
Hoffe es hilft, danke. 🙂
InformationsquelleAutor der Antwort Chiragit007
Ihren Anruf
nicht zurückgeben eines Objekts. Versuchen
bestätigen.
Habe ich noch nicht getaucht hat, in den checkout-code vor kurzem, aber ich bin mir ziemlich sicher, dass da
sales/order
erhalten Sie die Bestellung in Bearbeitung ist. Sobald der Auftrag erteilt wurde, es ist nicht mehr in Bearbeitung.Den "richtigen" Weg, um dies zu tun wäre ein Beobachter für eine der Veranstaltungen, die Magento feuert während der Kaufabwicklung. Die
Veranstaltung sollte ausreichend sein, vorausgesetzt, Sie haben nicht allzu viel getan, die Anpassung des checkout-Prozesses.
Gibt es eine knappe Erklärung, wie dies zu tun auf das Wiki (für ein anderes Ereignis)
Sobald Sie Ihre event-setup und reagiert, führen Sie eine
zu sehen, welche Art von Informationen, die Sie zur Verfügung haben. Die Chancen sind, es ist ein Auftrag-Objekt in die man die ID, die Sie suchen.
InformationsquelleAutor der Antwort Alan Storm
Musste ich...
Während in den Erfolg.phtml-template. Anstelle der load() ich habe loadByIncrementId - dann ist mein Auftrag-Objekt war nicht mehr leer.
InformationsquelleAutor der Antwort Bryce
Wenn Sie im admin-Modus - versuchen Sie dies:
$orderModel = Mage::getModel('sales/order');
$orders = $orderModel->getCollection()->setOrder('increment_id', 'DESC')->setPageSize(1)->setCurPage(1);
$orderId = $orders->getFirstItem()->getIncrementId();
InformationsquelleAutor der Antwort Matthias Kleine
getRealOrderId()
erscheint die Rückkehr der Nummer der Bestellung, wie Sie im Daten-grids.getId()
zurückkehren wird die interne id der Zeile in der Datenbank, die Sie wahrscheinlich nicht wollen.InformationsquelleAutor der Antwort Dominic
Können Sie die increment-id mit diesem code-snippet:
Können Sie jetzt tun, ein echo $Incrementid Variablen und finden Sie die increment-id.
Ich hoffe, das hilft.
InformationsquelleAutor der Antwort lucasvm1980
InformationsquelleAutor der Antwort Naveenbos
InformationsquelleAutor der Antwort devopsmagento