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: MODUL: PDFBill Next - PDF Rechnung/Lieferschein - Inklusive Mailversand

    awids

    • Experte
    • Beiträge: 3.789
    • Geschlecht:
    Guten Tag zusammen,
    leider gelingt es mir nicht im rechten Block die erste Zeile "Rechnungsdaten:" links auszurichten, vielleicht kann mir da jemand helfen.
    Zusätzlich möchte ich eben den Text dieser Zeile etwas größer und "fett" haben damit der Begriff Rechnung eher ins Auge fällt.

    Dankeschön
    Herr_Bert

    Suche in /inlcudes/classes/FPDF/PdfRechnung.php:
    Code: PHP  [Auswählen]
            // Top Text
            if(!$deliverSlip) {
                $this->Cell(0, 6, TEXT_PDF_RECHNUNG_HEAD, 0, 1, 'C', 1);
            } else {
                $this->Cell(0, 6, TEXT_PDF_LIEFERSCHEIN_HEAD, 0, 1, 'C', 1);
            }

    Ersetze mit:
    Code: PHP  [Auswählen]
            // Top Text
            if(!$deliverSlip) {
                $this->Cell(0, 6, TEXT_PDF_RECHNUNG_HEAD, 0, 1, '', 1);
            } else {
                $this->Cell(0, 6, TEXT_PDF_LIEFERSCHEIN_HEAD, 0, 1, '', 1);
            }

    jtr

    • Frisch an Board
    • Beiträge: 53
    Das Modul kommt nicht mit Umlauten im Dateinamen klar.

    Ich habe in
    admin/print_order_pdf.php
    admin/print_packagingslip_pdf.php
    inc/xtc_pdf_bill_inc.php

    nach den replace-Geschichten von $filePrefix folgende Zeile eingefügt:
    $filePrefix = utf8_encode($filePrefix);

    Dann klappt's auch mit Umauten im Dateinamen.

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.147
    • Geschlecht:
    Umlaute in Dateinamen sind generell zu vermeiden! Nicht jedes Filesystem unterstützt das!
    Da nicht alle auf Windoof unterwegs sind, produzierst Du damit das Problem, dass es Kunden geben könnte, die die Datei nicht speichern können.

    Herr_Bert

    • Fördermitglied
    • Beiträge: 756
    • Geschlecht:
    Guten Morgen Alex,
    vielen Dank für die Anpassung, das ist perfekt  :thx:
    Wie kann ich denn die Schriftgröße dieser einen Zeile ändern und das fett anzeigen lassen, gehört da eine css Datei dazu oder muss das auch in diesem Code-Schnipsel angepasst werden?

    Herr_Bert

    awids

    • Experte
    • Beiträge: 3.789
    • Geschlecht:
    Code: PHP  [Auswählen]
            $this->SetX($this->rechnungsdaten_x);
            $this->SetLeftMargin($this->rechnungsdaten_x);
            $this->SetY($this->rechnungsdaten_y);
            $this->SetFont($this->fontfamily,'B', 12); // hier B = bold/fett und Schriftgröße 12
       
            // Top Text
            if(!$deliverSlip) {
                $this->Cell(0, 6, TEXT_PDF_RECHNUNG_HEAD, 0, 1, '', 1);
            } else {
                $this->Cell(0, 6, TEXT_PDF_LIEFERSCHEIN_HEAD, 0, 1, '', 1);
            }
            $this->SetFont($this->fontfamily,'', 11); // hier für den restlichen Block zurück auf Standard

    Herr_Bert

    • Fördermitglied
    • Beiträge: 756
    • Geschlecht:
    Dankeschön Alex, auch das funktioniert perfekt  :thumbs:
    Ich hatte schon nach einer css Datei innerhalb dieses Moduls gesucht, aber natürlich nicht gefunden.

    Herr_Bert

    jtr

    • Frisch an Board
    • Beiträge: 53
    Ich habe das Datumsformat sprachabhängig geändert. Deutsch: d.m.Y - Englisch: Y-m-d (internationaler ISO Standard).

    Dazu in inc/xtc_pdf_bill.inc.php

    diesen Teil:

    Code: PHP  [Auswählen]
        // Create Bill Data
        if ($deliverSlip === true) {       
                     $pdf->Rechnungsdaten($customers_id, $order_bill, $oID, $slip_date, $payment_method, $order_vat_id, $deliverSlip);
        } else {
               $pdf->Rechnungsdaten($customers_id, $order_bill, $oID, $order_billdate, $payment_method, $order_vat_id, $deliverSlip);
        }

    in diesen Teil ändern:

    Code: PHP  [Auswählen]
    //JTR Date format
            $slip_date = date("d.m.Y");
        if ($language === "english") {     
            $time = strtotime($order_billdate);
            $order_billdate = date("Y-m-d",$time);
                    $slip_date = date("Y-m-d");
        }

        // Create Bill Data
        if ($deliverSlip === true) {       
                     $pdf->Rechnungsdaten($customers_id, $order_bill, $oID, $slip_date, $payment_method, $order_vat_id, $deliverSlip);
        } else {
               $pdf->Rechnungsdaten($customers_id, $order_bill, $oID, $order_billdate, $payment_method, $order_vat_id, $deliverSlip);
        }

    jtr

    • Frisch an Board
    • Beiträge: 53
    Meine Dateinamen mit Umlauten habe ich auf Windoof XP, OSX und AmigaOS getestet. Die kamen damit klar. Wo soll es denn da Probleme geben? Bei anderen Unix-Derivaten? Ich hätte jetzt eher gedacht, dass gerade Windoof damit ein Problem haben könnte. Es kann Probleme geben, wenn man ein halbherziges ISO-Format nimmt, aber mit Unicode hatte ich noch nie Probleme. Meine Frau ist Chinesin, die kann gar nicht ohne "Umlaute" :)

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.147
    • Geschlecht:
    USB-Stick auf FAT32: (gar nicht selten, weil diverse Systeme wie Smart-TVs, Navis, etc. oft nur FAT unterstützen und einmal formatiert bleibt das Dateisystem oft, auch wenn der Stick oder Speicherchip mal für was anderes herhalten muss)
    https://www.heise.de/ct/hotline/Linux-vermatscht-Umlaute-326142.html

    Und  .... gerade im E-Mail verkehr hat Du keinerlei Einfluss auf die System dazwischen ....

    Was ich schon erlebt habe:

    Email in UTF-8 losgeschickt (Postausgang alles OK, Umlaute normal)

    Email nach 2 weiteren Stationen zurückgekommen ... ISO8859-15 .... Umlaute zerschossen.

    In China fällt so was sofort auf und wird sofort behoben, aber arbeite mal mit Amerikanern ....

    Des weiteren .... Probleme mit Programmen (Zip, FTP, etc.)

    Es ist einfach eine unnötige Fehlerquelle! Das fliegt an Stellen auf die Fresse wo man es nicht erwartet und kann dann Stunden kosten, bis man den Fehler findet.

    lithoverlag

    • Fördermitglied
    • Beiträge: 828
    • Geschlecht:
    Rechnungsnummern werden nicht übernommen.
    Version 1.8 für Shop 2.0
    Neueste Shopversion.

    PDF-Bill Konfiguration steht auf
    Bestellnummer = Rechnungsnummer
    Rechnungsnummer format ist
    {y}-XXX-{n}

    und genau das tut es nicht. Rechnungsnummer in den  PDF Formularen ist immer die Bestellnummer.

    Unerheblich ob Bestellnummer = Rechnungsnummer ist und ob ich unten einen Rechnungsnummer Prefix eingefügt habe oder nicht.

    Im System Module (neue Rechnungsnummer) wird das Format auch angezeigt wie oben.

    Hat jemand eine Idee?
    Danke!

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.181
    • Geschlecht:
    Ich denke das liegt daran:

    Für die Allgemeinheit:

    In der Datei /admin/bill_nr.php ist die Zeile 72  fehlerhaft, da kein PHP-Tag geöffnet wird:

    Code: PHP  [Auswählen]
    echo xtc_draw_form('bill_nr', 'bill_nr.php?oID='.$_GET['oID'], '', 'post', '');

    Einfach mit:

    Code: PHP  [Auswählen]
    <?php echo xtc_draw_form('bill_nr', 'bill_nr.php?oID='.$_GET['oID'], '', 'post', '');

    fixen, dann läuft die Sache wieder. ;-)

    Wobei es genau genommen heissen muss:

    Code: PHP  [Auswählen]
    <?php echo xtc_draw_form('bill_nr', 'bill_nr.php?oID='.$_GET['oID'], '', 'post', ''); ?>

    Ich habe das Modul für Shopversion 2.x in Beitrag 1 entsprechend aktualisiert.

    Grüße

    Torsten

    lithoverlag

    • Fördermitglied
    • Beiträge: 828
    • Geschlecht:
    Code: PHP  [Auswählen]
    <?php echo xtc_draw_form('bill_nr', 'bill_nr.php?oID='.$_GET['oID'], '', 'post', ''); ?>

    Also den Schnipsel hatte ich bei mir schon ersetzt.
    und Dein schließen der Zeile mit ?> wird eigentlich in der nächsten Zeile vollzogen.

    Also kurz das war es leider auch nicht.

    Weder unter den Bestellungen im Backend wird mir eine "geänderte" Rechnungsnummer angezeigt noch in dem PDF-bill modul, wobei ich nicht weiß was passieren soll wenn ich das Systemmodul neue Rechnungsnummer einsetze. Wird dann nur der PDF output geändert oder sollte ich dann auch im backend unter Bestellungen den "neuen" definierte Nummernkreis sehen? Werden bereits vergebene Rechnungsnummern geändert oder erst ab Neubestellungen??

    onlineorange

    • Neu im Forum
    • Beiträge: 38
    Hallo alle zusammen,

    auf die Gefahr, dass ich Thema schon wieder anschneide und Ärger bekomme.

    Aber ich weiß mir keinen Rat mehr.

    Habe den Shop jetzt auf UTF-8 umgestellt.

    1. configure.php - UTF-8
    2. Datenbank auf UTF-8 laut MYSQLDUMPER mit einem Skript umgestellt
    3. inc/xtc_db_connect.php - UTF-8
    4. HTACCESS - UTF-8
    5. Land / Sprache - UTF-8

    So und nun mach ich eine PDF-Rechnung und was steht drin:

    Brotdose grün

    Herzlichen Dank für Ihre Bestellung.
    Wir wünschen Ihnen viel Freude mit unseren Produkten.
    Das Rechnungsdatum entspricht dem Leistungsdatum.

    Und nun bin ich ratlos. :(

    Hab ich was vergessen?

    Vielen Dank.

    Andi

    MaBo

    • Frisch an Board
    • Beiträge: 72
    • Geschlecht:
    Hallo Andi,

    die Sprachdatei auch als UTF-8 ohne BOM gespeichert?
    ../lang/german/modules/contribution/pdfbill.php

    LG
    Martin

    onlineorange

    • Neu im Forum
    • Beiträge: 38
    Hallo Martin,
    dort hab ich noch was gehabt, aber was auch komischist.
    In den Attributen wird ü genauso dargestellt obwohl ist der DB als ü drinsteht.

    Woran liegt das? Weißt du da einen Rat?

    Danke.

    Andi
    24 Antworten
    8775 Aufrufe
    22. Dezember 2020, 09:36:22 von karsta.de
    24 Antworten
    5290 Aufrufe
    18. November 2020, 21:02:35 von little-key
    3 Antworten
    4652 Aufrufe
    09. Oktober 2013, 15:33:09 von kaisa
               
    anything