InvoicePDF Artikel Sortieren bei aktueller Version

Hallo,

ich netze invoicePDF und möchte meine Artikel auf der Rechnung nach Artikelnummer Sortiert haben. Bei meinem alten 4.8er Shop war das eine kleine Anpassung im Modul. Dort stand der SQL Aufruf drin und man musste diesen nur kurz erweitern.
Beim aktuellen invoicePDF Modul für Oxid 6 gibt es keine myorder.php mehr und ich finde auch nichts in dewn Moduldateien, was darauf hindeutet, dafür verantwortlich zu sein.

Weiß jemand mehr?
Aktuell ist die Sortierung scheinbar so, in der Reihenfolge wie der Kunde die Artikel in den WK gelegt hat, oder komplett random.

Danke,
Florian

Hat denn niemand eine Idee?
Dieses Durcheinander auf den Rechnungen ist ja kein Zustand…

Wenn Du das “normale” Modul benutzt, sollte dies auch im Shop zu finden sein:
/source/modules/oe/invoicepdf/

Nach der ID zu sortieren, halte ich für einen Fehler: : ORDER BY oxorderarticles.oxartid,

Füge in source/modules/oe/invoicepdf/models/invoicepdfoxorder.php
folgendes (vor der letzten Klammer) hinzu:

protected function _getArticles($blExcludeCanceled = false)
    {
        $sSelect = "SELECT `oxorderarticles`.* FROM `oxorderarticles`
                        WHERE `oxorderarticles`.`oxorderid` = '" . $this->getId() . "'" .
                   ($blExcludeCanceled ? " AND `oxorderarticles`.`oxstorno` != 1 " : " ") . "
                        ORDER BY `oxorderarticles`.`oxartnum`, `oxorderarticles`.`oxselvariant`, `oxorderarticles`.`oxpersparam` ";

        // order articles
        $oArticles = oxNew('oxlist');
        $oArticles->init('oxorderarticle');
        $oArticles->selectString($sSelect);

        return $oArticles;
    }

Frohes neues Jahr…

1 Like

Peeeeerfekt! Viiiielen lieben Dank!!!

Ich habe lediglich 2x “DESC” noch hinzufügen müssen, dann hatte es geklappt. Wollte es ja auch nach oxartnum sortiert haben, nicht nach der oxid :slight_smile:

Gerne. Dann einfach als erledigt markieren :wink:.

Nachtrag:

Mit dem Eintrag ersetzt Du die originale Methode, in der nach oxid sortiert wird. Dies halte ich, wie geschrieben, für einen Fehler bzw. Bug :wink:.