Hallo allerseits, ich möchte gerne zwecks besserer Übersicht auf den Lieferschein- und Rechnungs-PDFs zwischen den einzelnen Artikeln eine feine hellgraue waagerechte Trennlinie haben. Kann mir da jemand einen Tipp geben oder hat das vielleicht bereits umgesetzt?
Hallo Kai m.E. nicht praktikabel update-sicher machbar. /admin/includes/gm/classes/gmOrderPDF.php Links original (4.8.0.2), rechts angepasst: Original-Code: Code: foreach($this->order_data as $product) { // -> font face/style/size/color parent::getFont($this->pdf_fonts['ORDER']); $new_y = $this->is_newPage($product, $product['PRODUCTS_ATTRIBUTES'], $y); if(!empty($new_y)) { $y = $new_y; } // -> font face/style/size/color parent::getFont($this->pdf_fonts['ORDER']); $y = $this->getCells($product['PRODUCTS_MODEL'], $product['PRODUCTS_NAME'], $product['PRODUCTS_QTY'] . ' ' . $product['PRODUCTS_UNIT'], $product['PRODUCTS_TAX'], $product['PRODUCTS_PRICE_SINGLE'], $product['PRODUCTS_PRICE'], $y, $this->pdf_fonts_size ?? null, '0', ''); Anpasster Code: Code: foreach($this->order_data as $c => $product) { // -> font face/style/size/color parent::getFont($this->pdf_fonts['ORDER']); $new_y = $this->is_newPage($product, $product['PRODUCTS_ATTRIBUTES'], $y); if(!empty($new_y)) { $y = $new_y; } // -> font face/style/size/color parent::getFont($this->pdf_fonts['ORDER']); $DrawColorBk = $this->DrawColor; $this->SetDrawColor(200, 200, 200); $y = $this->getCells($product['PRODUCTS_MODEL'], $product['PRODUCTS_NAME'], $product['PRODUCTS_QTY'] . ' ' . $product['PRODUCTS_UNIT'], $product['PRODUCTS_TAX'], $product['PRODUCTS_PRICE_SINGLE'], $product['PRODUCTS_PRICE'], $y, $this->pdf_fonts_size ?? null, $c > 0 ? 'T' : '', ''); $this->DrawColor = $DrawColorBk; 200, 200, 200 sind die RGB-Farben, sprich: 255, 255, 255 = weiß, 0, 0, 0 = schwarz.
Danke Dominik, genau das Problem wollte ich schon vorm Jahr irgendwie lösen (lassen)... Genau wie ich es mir vorgestellt habe. Schön, dass Du Dir solcher Dinge einfach so annimmst.
Hey Dominik, super Sache.. Danke dir Kurze Frage: hast Du eine Idee wie man die hellblaue Trennlinie zwischen Artikel Nr , Artikel und den einzelnen Produkten sowie als Abschluss auch schwarz bekommt.... Es muss irgendwo hinterlegt sein. Habe diese php durchsucht aber finde da immer nur einen Platzhalter z.B. // -> set draw color parent::SetDrawColor((int)$this->pdf_draw_color['r'], (int)$this->pdf_draw_color['g'], (int)$this->pdf_draw_color['b']); Danke dir
Bei der Konfiguration der Rechnung kann man beim Punkt "Schriften" ganz unten die Farbe für die Linien angeben. Ob das auch bei den hinzugefügten Linien zwischen den Artikeln greift, weiß ich nicht. Die drei anderen Trennlinien kann man damit aber farblich anpassen.
Hi Markus Wenn Du die Trennlinien in der Standard-Farbe (Einstellung wie von @Alexandra R. beschrieben) haben möchtest statt hellgrau, lässt Du im angepassten Code folgende Zeilen weg: Code: $DrawColorBk = $this->DrawColor; $this->SetDrawColor(200, 200, 200); Code: $this->DrawColor = $DrawColorBk; Also in dem Fall sind nur diese 2 Zeilen anzupassen: Code: foreach($this->order_data as $c => $product) Code: $c > 0 ? 'T' : '',
Hallo Dominik, vielen Dank für das Teilen deines Codes. Das kommt mir irgendwie bekannt vor, jedoch nur in einer anderen Fassung. Viele Wege führen, wie immer, nach Rom. Ich würde dir gerne, aber auch den anderen Mitgliedern, die updatesichere Variante vorstellen, die ich aus meiner alten Schublade herausgekramt und etwas vom Staub befreit habe. Das Modul stammt bzw. Fragmente hieraus stammen ursprünglich aus Mai 2015, wo ich einem User geholfen habe, graue Kästchen vor den Produkten auf dem Lieferschein abzubilden. Danach kamen, um jetzt zurück zum Thema zu kommen, die Trennlinien dazu und viele weitere Anpassungen zum Lieferschein. Hier der damalige Beitrag mit den Kästchen: https://www.gambio.de/forum/threads...-rechnung-bzw-lieferschein.20331/#post-166052 Im Laufe der Zeit gab es natürlich einige Anpassungen hierzu, weil das System sich ja auch weiterentwickelt hat. @all: Man muss ebenfalls wissen, dass die Stelle DEPRECATED ist und folglich für die Zukunft, die neue GX-Engine greifen wird. Das Modul bildet die grauen Kästchen und Trennlinien ab. Hier ein Bild dazu: Bevor Ihr euch das Ei ins Nest legt: Alle Daten ohne Gewähr. Macht für das Worst-Case-Szenario, wie immer, eine Sicherung. Nach dem Entpacken des Moduls, könnt Ihr die Daten via FTP ins Rootverzeichnis des Shops laden. Bitte vergisst nicht, den Cache zu leeren. Die ersten beiden davon reichen aus. Viel Spaß mit dem Modul.
Hallo @Developer, im Test Shop mit Lieferscheine klappt es wunderbar. Wäre schön wenn es bei den Rechnungen auch sowas gäbe. Danke
Hallo craft-tools, die Abfrage wurde um das Rechnungsformular erweitert. Jeder kann sich nun das Script (GM00066_gmOrderPDF.inc.php) nach seinem Gusto anpassen, sofern sich jemand damit auskennt und selbst die Modifizierungen vornehmen möchte. Siehe hierzu: Zeile 109 und 159 Bevor Ihr euch das Ei wieder ins Nest legt: Alle Daten ohne Gewähr. Macht für das Worst-Case-Szenario, wie immer, eine Sicherung. Nach dem Entpacken des Moduls, könnt Ihr den Inhalt des Ordners via FTP ins Rootverzeichnis des Shops laden. Bitte vergisst nicht, den Cache zu leeren. Die ersten beiden davon reichen aus. Viel Spaß mit dem Modul. P.S.: Eigentlich benötigt man die if-Anweisung für die Überprüfung der Formulare in Zeile 109 und die reine Überprüfung der Formulare in Zeile 159 nicht, wenn man beide Typen ansteuern möchte. Habe sie jedoch implementiert, damit man dies selbst entscheiden kann, wenn man in Selbstjustiz Änderungen vornehmen möchte.