Seite 3 von 4
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Mi 21. Feb 2018, 23:02
von udgesbou
Habe es in Zeile 246 gefunden.
Vielen Dank!
Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 25. Aug 2018, 13:45
von udgesbou
Servus,
ich habe heute auf die aktuelle Version 1.5.13 geupdatet.
Mir ist aufgefallen, dass es bei der Sortierung der Tische wohl einen Fehler gibt.
Und zwar werden die Tische in den jeweiligen Bereich in regelmäßigen Abfragintervallen durchgemischt.
Es fällt vor allem auf, dass wenn ich es so sortiere, dass die Tische an denen etwas gebucht ist oben stehen und diese dann den gleichen Betrag haben, bei jedem Abfragintervall in regelmäßigen Abständen automatisch die Positionen wechseln, einmal steht der Tisch oben, einmal der andere.
Das ganze zieht sich bei mir aber auch durch Tisch, an welchen nichts gebucht wurde durch. Mal steht Tisch 2 oben, mal Tisch 8, mal Tisch 3.
Eventuell kannst du mir einen Lösungsansatz nennen. Ich habe keine großartigen Veränderungen unternommen. Bei mir ist das reine Update aufgespielt worden. Vielleicht hat sich ja auch der Fehlerteufel im Update eingeschlichen?
Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 25. Aug 2018, 14:01
von udgesbou
Noch ein Zusatz zu meinem letzten Beitrag.
Ich konnte es etwas eingrenzen, wenn ich den Eintrag in roomtables.php standartmäßig lasse:
Code: Alles auswählen
$sql = "SELECT R.id as id,R.tableno as name,R.sorting as sorting,";
$sql .= " IFNULL(SUM(IF(Q.ordertime is not null AND Q.paidtime is null AND Q.isclosed is null,Q.price,0.00)),0.00) as pricesum FROM %resttables% R";
$sql .= " LEFT OUTER JOIN %queue% Q ON Q.tablenr=R.id WHERE R.removed is null AND active='1' AND ";
$sql .= " R.roomid=? $areaWhere GROUP BY R.id,name ";
$sql .= " ORDER BY R.sorting";
Besteht der Fehler nur im Bereich "Theke" dort sind die Namen aller Stammgäste eingetragen, logischerweise fangen die alle mit unterschiedlichen Anfangsbuchstaben an. Vielleicht könnte es etwas damit zu tun haben?
In den anderen Bereich fangen die Tische immer mit dem gleichen Anfangsbuchstaben an.
Wenn ich das ganze wie zuvor umgesetzt zu
Code: Alles auswählen
$sql = "SELECT R.id as id,R.tableno as name,R.sorting as sorting,";
$sql .= " IFNULL(SUM(IF(Q.ordertime is not null AND Q.paidtime is null AND Q.isclosed is null,Q.price,0.00)),0.00) as pricesum FROM %resttables% R";
$sql .= " LEFT OUTER JOIN %queue% Q ON Q.tablenr=R.id WHERE R.removed is null AND active='1' AND ";
$sql .= " R.roomid=? $areaWhere GROUP BY R.id,name ";
$sql .= " ORDER BY pricesum DESC";
ändere, wirft er mir komplett in allen Bereichen alles durcheinander. Aber die Tische an denen etwas gebucht wurden stehen oben. Es ist allerdings suboptimal, wenn er den Rest komplett durcheinander wirft.
Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 25. Aug 2018, 15:10
von pichel
Bitte demnächst mehr Informationen, z.B.
- Über welche Ansicht reden wir (Bestellung, Kasse, Reservierung, Küchen, Bar?).
- Update von welcher Version auf 1.5.13? Wo soll ich suchen, ab wo eine Code-Änderung das verursacht hat?
Entschuldige wenn ich das hier mal so schreibe, aber es soll auch andere Fragesteller ansprechen. Das Projekt betreibe ich in der Freizeit und davon habe ich nicht so viel. Es hilft mir also ungemein, wenn ich nicht erst die grundsätzlichen Fragen selbst recherchieren muss, sondern gleich mit der Analyse beginnen darf.
Zurück zu deinem Problem. Wenn also bei dir die Sortierung nicht passt, dann überprüfe doch bitte mal die Spalte sorting der Tabelle roomtables - oder besser, hänge den Inhalt der Tabelle hier an. Dort scheint etwas schiefgegangen zu sein.
Die obige zitierte Abfrage ist sinnvoll, die untere nicht, denn damit würden die Tische ja nach gebuchtem Gesamtpreis sortiert.
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 25. Aug 2018, 17:33
von udgesbou
pichel hat geschrieben: ↑Sa 25. Aug 2018, 15:10
- Über welche Ansicht reden wir (Bestellung, Kasse, Reservierung, Küchen, Bar?).
Wir sprechen von der Ansicht, "Bestellung" und dann "Tischauswahl, das ganze un der Mobilansicht.
pichel hat geschrieben: ↑Sa 25. Aug 2018, 15:10
- Update von welcher Version auf 1.5.13? Wo soll ich suchen, ab wo eine Code-Änderung das verursacht hat?
Ich habe von der Version 1.5.11 auf 1.5.13 upgedatet.
pichel hat geschrieben: ↑Sa 25. Aug 2018, 15:10
Entschuldige wenn ich das hier mal so schreibe, aber es soll auch andere Fragesteller ansprechen. Das Projekt betreibe ich in der Freizeit und davon habe ich nicht so viel. Es hilft mir also ungemein, wenn ich nicht erst die grundsätzlichen Fragen selbst recherchieren muss, sondern gleich mit der Analyse beginnen darf.
Damit hast du vollkommen recht und ich dachte meine Beträge wären aussagekräftig gewesen, als ich mir sie dann aber noch einmal durchgelesen habe, habe ich gemerkt, dass doch die ein oder andere Information fehlt
pichel hat geschrieben: ↑Sa 25. Aug 2018, 15:10
Zurück zu deinem Problem. Wenn also bei dir die Sortierung nicht passt, dann überprüfe doch bitte mal die Spalte sorting der Tabelle roomtables - oder besser, hänge den Inhalt der Tabelle hier an. Dort scheint etwas schiefgegangen zu sein.
Ich habe beide angehängt, ich hoffe das ist das was du meinst, darin erkenne ich allerdings keinen Fehler.
pichel hat geschrieben: ↑Sa 25. Aug 2018, 15:10
Die obige zitierte Abfrage ist sinnvoll, die untere nicht, denn damit würden die Tische ja nach gebuchtem Gesamtpreis sortiert.
Ja die obere Abfrage ist ja die, wie sie auch installiert wird, bzw. das ist die Standartabfrage. Und die untere Abfrage ist die, wie es in den vorherigen Versionen eigentlich immer geklappt hat. Mit der oberen Standartabfrage habe ich auch nur bei der Darstellung vom Bereich "Theke" Probleme, wo die Stammgäste eingetragen sind. Beiden restlichen Bereich nicht. Wenn ich die untere Abfrage einfüge, wirft es mir komplett in jedem Bereich alles durcheinander.
Wie gesagt, es sollen die Tische aus den Bereichen die aktuell besetzt sind, bzw. an welchen Bestellungen offen sind und noch nicht kassiert wurden oben stehen.
Denke es ist mal wieder nur eine Kleinigkeit, der Teufel steckt ja meist im Detail.
Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 25. Aug 2018, 19:27
von pichel
Danke. Ich schaue es mir Anfang kommender Woche an, bin dieses Wochenende nicht zuhause.
Aber zumindest kann ich schon sagen, von 1.5.11 auf 1.5.13 ist in dem Bereich keine Sourcecode-Änderung passiert.
Nächste Woche mehr...
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Mo 27. Aug 2018, 13:14
von pichel
Hallo,
ich habe mir den Export angeschaut. Es fällt auf, dass die Tischsortierung für Raum Theke (mit der Id 5) durcheinander geraten ist. Die Ursache kann ich mir nicht erklären. Hast du mal manuell in der Datenbank editiert? Es mag ja sein, dass es auf einem Bug in OrderSprinter basiert, aber dann muss die fehlerhafte Sortierung bereits lange vor 1.5.11 passiert sein, denn an den möglichen Stellen im Source-Code habe ich seit langer Zeit nichts mehr verändert.
So, wie lösen wir das jetzt..
Du hast den Export mit phpMyAdmin erzeugt, kannst es also bedienen. In phpmyadmin kannst du auch Tabelleninhalte verändern. Schau dir also mal alle Einträge der Tabelle ordersprinter_resttables an, bei der roomid=5 ist und die Spalte removed NULL ist. Dort wird dir auffallen, dass in der Spalte "sorting" der Wert 10 doppelt auftritt. Ersetze alle bis auf einen der 10-er Werte aufsteigend mit Zahlen ab 48. Ziel: Jede Sortierungsnummer für einen Raum darf nur einmal vorkommen, die Sortierung beginnt ab "1".
Anschließend kannst du die Verwaltungsansicht -> Datenbank -> Raumplan aufrufen und die Sortierung der Einträge für den Raum "Theke" gerne anpassen.
Die Zeile "ORDER Y R.sorting" der oben zitierten SQL-Anweisung, wie sie im freigegebenen Download enthalten ist, ist richtig, denn damit wird die Tischsortierung vorgenommen. Das ORDER BY pricesum DESC hattest du wahrscheinlich selbst eingebaut. Damit wird dann aber nur nach Preis sortiert, alle anderen Einträge werden bunt zusammengewürfelt. Aber du kannst natürlich mehrere Sortierkriterien angeben.
Gruß,
Stefan
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Sa 1. Sep 2018, 14:47
von udgesbou
Grüß dich,
ich habe nun die entsprechenden Korrekturen vorgenommen und sie da, das Durcheinanderwürfeln hat ein Ende.
Vielen Dank für den schnellen Lösungsansatz.
Wie das passieren konnte kann ich mir auch nicht erklären. Ich habe manuell nie etwas an der Datenbank verändert. Eventuell doch ein Bug o. Ä.! Ich werde das ganze auch über kommende Updates beobachten und gebe natürlich Rückmeldung, sollte mir etwas auffallen.
Die für mich geeignete Sortierung habe ich auch schon eingepflegt.
Schönes Wochenende und Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: So 7. Jul 2019, 15:11
von udgesbou
Servus,
ich habe soeben von der Version 1.5.25 auf die neue Version 1.5.32 geupdatet und dann meine Eintragungen für die Sortierung in der roomtables.php wieder entsprechend getätigt:
udgesbou hat geschrieben: ↑Sa 25. Aug 2018, 14:01
Code: Alles auswählen
$sql = "SELECT R.id as id,R.tableno as name,R.sorting as sorting,";
$sql .= " IFNULL(SUM(IF(Q.ordertime is not null AND Q.paidtime is null AND Q.isclosed is null,Q.price,0.00)),0.00) as pricesum FROM %resttables% R";
$sql .= " LEFT OUTER JOIN %queue% Q ON Q.tablenr=R.id WHERE R.removed is null AND active='1' AND ";
$sql .= " R.roomid=? $areaWhere GROUP BY R.id,name ";
$sql .= " ORDER BY pricesum DESC";
Allerdings werden jetzt wieder, wie bereits in
diesem Beitrag beschrieben, die einzelnen Tische wild durcheinander gewürfelt. Die Tische auf denen Buchungen getätigt wurden stehen allerdings wieder oben.
Ich habe in phpmyadmin bereits die Tabelleninhalte bzgl. der Sortierung kontrolliert, hier stimmt alles, in der Spalte "sorting" kommt jede Zahl nur einmal vor. Sprich ich habe wie in
diesem Beitrag alles überprüft.
Woher könnte dieses Problem eventuell noch kommen?
Danke und Grüße
Re: Nach Klick auf "Arbeitsbon" in andere Ansicht
Verfasst: Do 11. Jul 2019, 21:48
von pichel
Von 1.5.25 auf 1.5.32 habe ich so absolut gar nichts an der Tischsortierung gemacht. Bitte prüfe, ob du die modifizierte SQL-Abfrage wirklich an der richtigen Stelle eingebaut hast.