von pichel » Sa 16. Sep 2017, 00:07
Hallo,
auch ich würde für die Funktion viele Stunden benötigen, vielleicht auch mehrere Tage, obwohl ich meinen Code ziemlich gut kenne... Ich sage ja, es ist eine ziemliche Fleißarbeit.
Die queue-Tabelle enthält alle Bestellungen und zwar pro Produkt einen Eintrag. Wenn man also eine Rechnung zusammenstellt, werden die IDs dieser Einträge an den Server übermittelt. Der baut mit diesen Queue-IDs eine Relation in billproducts auf (notwendig, damit bei Stornierungen die Reproduzierbarkeit bleibt) und erstellt einen Eintrag in Bill und lässt alle betroffenen Queue-Einträge auf den soeben erstellten Billeintrag verweisen. Anschließend wird die Nummer des Billeintrags in die printjob-Tabelle geschrieben. Dabei wird jedoch die Information hinzugefügt, welchen Drucker der Benutzer in seinen persönlichen Einstellungen festgelegt hat (1 bis 6 Kassendrucker). Die Printqueue nutzt diese Information, um später der richtigen Drucker-Instanz (Zuordnung passiert im der Verwaltungsansicht unter "Druckerinstanzen") die Jobs mitzugeben. Ach ja, aus der Konfiguration wird dann noch das Bon-Template eingebaut, das dann später im Druckserver angewendet werden kann.
Für deine Zwecke müsstest du also entweder eine Parallelstruktur aufbauen, bei der statt der bill-Tabelle eine Zwischenbericht-Tabelle gefüllt wird. Und die Printqueue-Klasse entsprechend erweitern. Oder du umgehst das, indem du den Job gleich fertig zusammenbaust, sowie du die Queue-IDs hast. Das hat aber den Nachteil, dass du eine ganze Menge Druckintelligenz in die printqueue-Klasse einbauen musst und die Druckserver angepasst werden müssen.
Ich weiß ja nicht, ob du wirklich den Aufwand für eine Funktion machen möchtest, deren Einsatz ich echt nicht empfehlen kann.
Gruß,
Stefan
Hallo,
auch ich würde für die Funktion viele Stunden benötigen, vielleicht auch mehrere Tage, obwohl ich meinen Code ziemlich gut kenne... Ich sage ja, es ist eine ziemliche Fleißarbeit.
Die queue-Tabelle enthält alle Bestellungen und zwar pro Produkt einen Eintrag. Wenn man also eine Rechnung zusammenstellt, werden die IDs dieser Einträge an den Server übermittelt. Der baut mit diesen Queue-IDs eine Relation in billproducts auf (notwendig, damit bei Stornierungen die Reproduzierbarkeit bleibt) und erstellt einen Eintrag in Bill und lässt alle betroffenen Queue-Einträge auf den soeben erstellten Billeintrag verweisen. Anschließend wird die Nummer des Billeintrags in die printjob-Tabelle geschrieben. Dabei wird jedoch die Information hinzugefügt, welchen Drucker der Benutzer in seinen persönlichen Einstellungen festgelegt hat (1 bis 6 Kassendrucker). Die Printqueue nutzt diese Information, um später der richtigen Drucker-Instanz (Zuordnung passiert im der Verwaltungsansicht unter "Druckerinstanzen") die Jobs mitzugeben. Ach ja, aus der Konfiguration wird dann noch das Bon-Template eingebaut, das dann später im Druckserver angewendet werden kann.
Für deine Zwecke müsstest du also entweder eine Parallelstruktur aufbauen, bei der statt der bill-Tabelle eine Zwischenbericht-Tabelle gefüllt wird. Und die Printqueue-Klasse entsprechend erweitern. Oder du umgehst das, indem du den Job gleich fertig zusammenbaust, sowie du die Queue-IDs hast. Das hat aber den Nachteil, dass du eine ganze Menge Druckintelligenz in die printqueue-Klasse einbauen musst und die Druckserver angepasst werden müssen.
Ich weiß ja nicht, ob du wirklich den Aufwand für eine Funktion machen möchtest, deren Einsatz ich echt nicht empfehlen kann.
Gruß,
Stefan