Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: ANLEITUNG: Status "Storniert" hinzufügen

    Bonner

    • Fördermitglied
    • Beiträge: 848
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #30 am: 22. Juni 2014, 13:41:19
    für die letzten beiden Posts im Anhang die beiden Dateien, die ich angepasst habe, um die Stornofunktion zu implementieren.

    Bitte beachtet, dass ich noch einige andere Änderungen/Module verbaut habe, so dass die Dateien nicht einfach mal drüberkopiert werden sollten.

    Die erforderlichen Änderungen befinden sich bei der orders.php in den Zeilen 339-342, in der general.php in den Zeilen 1567-1585.
    Auch mal auf den Hinweis von webnull vom November (einige Posts höher) schauen. Das war bei mir damals entscheidend.

    Bonner
    rechtstexte für onlineshop

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #31 am: 22. Juni 2014, 15:26:47
    Du hast in der "/includes/functions/general.php" einen Fehler gemacht. Du hast den Code für "Shopgate" aus der Funktion "xtc_remove_order" raus genommen.

    Anbei ein überarbeitetes Paket für Shopversion 1.06, welches ich auch gleich in Beitrag 1 verlinke.

    Grüße

    Torsten

    wasch

    • Neu im Forum
    • Beiträge: 27
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #32 am: 22. Juni 2014, 15:58:31
    klappt jetzt mit Shopversion 1.06 wunderbar.

    :thx:

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #33 am: 22. Juni 2014, 17:43:13
    Prima! :thumbs:
    Danke für die Rückmeldung. :thx:

    Grüße

    Torsten

    Caro

    • Mitglied
    • Beiträge: 114
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #34 am: 22. Juni 2014, 19:22:02
    Hallo,
    mal eine Frage zu diesem Modul, wenn man das eingebaut hat in Verion 1.06 r4642 SP1, wird nur der Status geändert oder wird der Artikel auch wieder gut geschrieben im Lager bzw zurück im Lager gelegt ?

    wasch

    • Neu im Forum
    • Beiträge: 27
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #35 am: 22. Juni 2014, 19:46:06
    Nach dem Klicken auf "Löschen"-Button muss man noch den Hacken bei "Artikelanzahl dem Lager gutschreiben" setzten, dann wird auch der/die Artikel dem Lagerbestand wieder gutgeschrieben.
    Habe es gerade in meinem Shop getestet, klappt so wie es soll.
    Auch der Umsatz wird auf 0,00€ gesetzt!

    MichaelGL

    • Fördermitglied
    • Beiträge: 54
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #36 am: 22. Juni 2014, 20:32:27
    Danke für die tolle Arbeit. :thumbs:
    Gruß Michael

    TrueSlide

    • Schreiberling
    • Beiträge: 402
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #37 am: 26. Juni 2014, 03:59:46
    Bin gerade die Erweiterung einzubauen. Im Vorfeld will ich aber noch ein paar Änderungen bzgl. der Reihenfolgene des jeweiligen Status vornehmen. Zur Zeit ist da nämlich einiges durcheinander.

    Kann mir dafür jemand vielleicht einen Tipp geben, was für einen SQL Befehl ich ausführen muss, damit die geänderten "order_status_id" auch richtig übernommen werden?

    Soll heißen, wenn ich jetzt in phpAdmin gehe und dort die jeweilige Reihenfolge durch das ändern der ID ändere, wird das ja nicht bei den Bestellungen übernommen. Zum Beispiel habe ich "Bearbeitung" mit der ID "8" hinterlegt und somit in der Reihenfolge auch an letzter Stelle.
    Nun möchte ich dies aber auf die 3 legen. Soweit kein Problem mit phpAdmin. Aber wie gesagt, stelle ich das um und die Reihenfolge stimmt, verschwinden die jeweiligen Bestellungen, die die ID 8 haben, da diese ja nun nicht mehr vorhanden ist.

    Hoffe es kommt halbwegs rüber was ich meine bzw. machen möchte.
    Wenn nicht muss ich es nochmal schreiben, wenn es nicht ganz so spät/früh ist. ;)

    web0null

    • Experte
    • Beiträge: 1.998
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #38 am: 26. Juni 2014, 06:14:57
    Ich würde mir da ein kleines Script schreiben, denn du musst das über einen temporären Zwischenschritt machen.

    Schritt 1:
    ID´s aus Tabelle "orders_status" einlesen, dann über eine schleife alle ID´s in allen Tabellen mal temporär ändern,
    1 -> 101
    2 -> 102
    3 -> 103
    ...
    8 -> 108

    Schritt 2:
    ID´s aus Tabelle "orders_status" nochmal einlesen, und alle ID´s in allen Tabellen in die richtige Reihenfolge bringen,
    101 -> 8
    102 -> 7
    103 -> 6
    ...
    108 -> 1

    Aber die bessere und zukunftssichere Variante wäre, der Tabelle "orders_status" eine Spalte "sort" hinzufügen, und im Core die Eingabe ermöglichen, bzw. dann auch danach zu sortieren.

    Gruß

    web0null

    • Experte
    • Beiträge: 1.998
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #39 am: 26. Juni 2014, 13:45:49
    So, hier ist jetzt die "bessere und zukunftssichere Variante" mit einer Spalte zum Sortieren.
    Gruß

    demoncleaner

    • Fördermitglied
    • Beiträge: 482
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #40 am: 03. September 2014, 11:15:19
    Super Ding. Vielen Dank. Habe das direkt mal verbaut in 1.06 und es funktioniert eigentlich wunderbar.

    Was ich aber komisch finde ist folgendes:
    Wenn ich den Artikel lösche passiert alles wie es soll. Der Status steht dann auf Storno und ich kann den Artikel dem Lager gutschreiben. Wenn ich aber in die Bestellung rein gehe, dann steht diese noch auf Offen. Erst wenn ich die Bestellung dort noch mal auf Storno setze, dann steht sie dort auch auf Storno.

    Würde man umgekehrt in die Bestellung gehen und den Artikel auf Storno setzen, dann würde das zwar passieren, aber weder der Betrag würde auf 0 gesetzt noch hätte man die Möglichkeit den Artikel dem Lager gut zu schreiben. Ich denke das könnte für einige Leute zur Verwirrung und zu Fehlern führen.

    Oder habe ich da evtl. was falsch gemacht oder falsch verstanden?

    Super wäre natürlich wenn man das Ganze noch so erweitern würde, dass man mit einer Stornierung - genau wie man ein Kommetar bei Statusänderung mitschicken kann - direkt wahlweise eine Gutschrift mitschicken könnte.

    mollvision

    • Schreiberling
    • Beiträge: 356
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #41 am: 22. Dezember 2014, 19:16:21
    Hallo Zusammen,

    erstmal vielen Dank für das Bereitstellen und großes Lob an alle Helfer die hier tätig sind.

    Du hast in der "/includes/functions/general.php" einen Fehler gemacht. Du hast den Code für "Shopgate" aus der Funktion "xtc_remove_order" raus genommen.

    Anbei ein überarbeitetes Paket für Shopversion 1.06, welches ich auch gleich in Beitrag 1 verlinke.

    Habe diese Variante eingebaut.

    Shopssoftware v1.06 rev 4642 SP2 dated: 2014-08-12

    Wunderbar, obwohl in der neusten Shopversion der Eintrag in
    /admin/includes/functions/general.php
    von Shopgate nicht zu finden war.

    Den Fehler von meinem Vorredner, bezüglich das der Status in der Bestelldetails noch auf "offen" steht, kann ich nicht bestätigen.
    Es wird dort genauso auf Storno gestellt. Ob es Sinn macht, das ebenfalls automatisch eine Email versendet wird liegt im Auge des Betrachters. Dato wird Keine versendet. Nur wie gehabt - Manuell aus der Bestelldetailansicht.

    Nun zu dem, was mir bzw. einem Kunden aufgefallen ist.

    Wenn die Bestellung in der Bestellübersichtsliste gelöscht wird, stellt sich der Status auf Storno und der Betrag ist auf Null. Soweit prima.
    Auf der Admin-Startseite wird ebenso der Betrag abgezogen.

    Aber:

    In der Umsatzstatistik ist die Bestellung nach wie vor vorhanden. (Kann das jemand bestätigen?)

    Grundsätzlich ist das folgende unlogisch, aber ich wollte Dies dennoch mitteilen.

    Die Bestellung wurde wie oben beschrieben gelöscht bzw. storniert.
    Wenn man diese Bestellung erneut löscht und das Häkchen "Artikelanzahl dem Lager gutschreiben" wird der Lagerbestand erneut gutgeschrieben.
    Wäre es nicht besser, wenn man nur einmal die Bestellung löschen könnte?
    Ist dass überhaupt technisch möglich?

    Habe ich evtl. einen Einbaufehler begangen?

    Gruß
    Wolfgang

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #42 am: 23. Dezember 2014, 10:37:46
    Die Umsatzstatistik bekommt ihre Daten aus der "/admin/includes/classes/sales_report.php". Für die Kalkulation werden hier nicht nur die in der Storno-Funktion benutzten Werte aus der Tabelle "orders_total" herangezogen, sondern es werden die einzelnen Artikel aus der Tabelle "orders_products" aufsummiert.

    Ohne dass ich mir jetzt Gedanken um mögliche andere Auswirkungen gemacht habe kannst du mal folgendes versuchen:

    Erweitere die Storno-Funktion nach:

    Code: PHP  [Auswählen]
            xtc_db_query("update ".TABLE_ORDERS." set orders_status = ".$order_status_id." where orders_id = '".xtc_db_input($order_id)."'");
            xtc_db_query("update ".TABLE_ORDERS_TOTAL." set value = '0.0000' where orders_id = '".xtc_db_input($order_id)."'");
            xtc_db_query("update ".TABLE_ORDERS_TOTAL." set text = '' where orders_id = '".xtc_db_input($order_id)."'");

    um:

    Code: PHP  [Auswählen]
            xtc_db_query("update ".TABLE_ORDERS_PRODUCTS." set final_price = '0.0000' where orders_id = '".xtc_db_input($order_id)."'");

    Mach das aber bitte in einem Testshop!!! :!:

    Alternativ kann man die Bestellungen auch anders aus der Umsatzstatistik ausschliessen.

    Suche in der "/admin/includes/classes/sales_report.php":

    Code: PHP  [Auswählen]
          $filterString = "";
          if ($this->statusFilter > 0) {
            $filterString .= " AND o.orders_status = " . $this->statusFilter . " ";
          }

    und ersetze mit:

    Code: PHP  [Auswählen]
          $filterString = " AND o.orders_status != XYZ";
          if ($this->statusFilter > 0) {
            $filterString = " AND o.orders_status = " . $this->statusFilter . " ";
          }

    Wobei du XYZ gegen die ID des Bestellstatus "storniert" austauschst. Das sollte dir für alle Zeit sämtliche Bestellungen mit Status "storniert" ausfiltern.

    Wäre prima, wenn du beides mal unabhängig voneinander testen würdest und Rückmeldung gibst. :thx:

    Grüße

    Torsten

    [EDIT Tomcraft 21.01.2015: Fehler in Code korrigiert.]
    [EDIT Tomcraft 22.01.2015: Anleitung in Beitrag 1 verlinkt.]

    mollvision

    • Schreiberling
    • Beiträge: 356
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #43 am: 23. Dezember 2014, 17:39:32
    @Torsten,

    Habe 2 Screenshots angehängt.

    Variante 1 - Erweiterung der Löschfunktion in /admin/includes/functions/general.php

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Variante 2 - Filterstring orders ID in /admin/includes/classes/sales_report.php

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Beides Funktioniert.

    In den Screenshots sieht man gut was die Erweiterungen bewirken.

    Welche Version sollte man am besten verwenden?

    Für die Statistiker und evtl. Steuerberater oder Finanzamt:

    Super wäre noch, wenn die Umsatzstatistik trotz Storno und löschung des Betrags, eine Gesamtsumme der Stornos darzustellt. Das widerrum ist bestimmt, aufgrund der Bestellstatus-Löschfunktion nun nicht mehr möglich - oder?

    Gruß
    Wolfgang

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Re: ANLEITUNG: Status "Storniert" hinzufügen
    Antwort #44 am: 24. Dezember 2014, 14:42:11
    [...]
    Für die Statistiker und evtl. Steuerberater oder Finanzamt:

    Super wäre noch, wenn die Umsatzstatistik trotz Storno und löschung des Betrags, eine Gesamtsumme der Stornos darzustellt. Das widerrum ist bestimmt, aufgrund der Bestellstatus-Löschfunktion nun nicht mehr möglich - oder?
    [...]

    Das sollte eigentlich mit Variante 2 funktionieren. Da kannst du doch beim Dropdown "Status" einfach den Status "storniert" auswählen und solltest dann auch noch die Beträge sehen.

    Teste das bitte mal. ;-)

    Grüße

    Torsten
    11 Antworten
    7189 Aufrufe
    19. Januar 2013, 16:07:50 von gebeer
    4 Antworten
    2087 Aufrufe
    30. Mai 2016, 13:19:44 von fishnet
    1 Antworten
    3619 Aufrufe
    22. Mai 2012, 23:17:09 von jannemann