Rechnung Schlusstext setzen?

ich möchte gerne knapp über dem Footer einen Abschlusstext setzen leider bin ich zu blöd :smiley:

Der Letzte Satz auf der Rechnung ist mit “ORDER_OVERVIEW_PDF_GREETINGS” definiert.
Nun habe ich versucht eine neue SPrachvariable zu definieren und dies darunter zu setzen, das funktioniert auch, leider ist es genau überlappend -> ich schaffe es nicht die Höhe zu verändern - wie muss also diese Zeile:

$oPdf->text( 15, $siteH, $this->translate( ‘ORDER_OVERVIEW_PDF_GREETINGS’ ) );

geändert werden das ich die Höhe verändere?

ps. kann es sein das die Sprachvariablen in der Admin/lang.php kein <br> verstehen?
Denn das klappt leider nicht

verd…

und ich wollte Dir gerade <br> empfehlen…:eek:

Schau doch mal ein wenig höher, wie wird denn ein Zeilenwechsel da gemacht?

soweit ich gesehen habe gibts keine Absätze, jede Zeile hat eine eigene Variable
Mir wäre eben schon geholfen wenn ich wüsste wie ich die Zeilenhöhe verändern kann, wenn ich z.b. das ganze so schreibe:

$oPdf->text( 15, 20 $siteH, $this->translate( ‘ORDER_OVERVIEW_PDF_GREETINGS’ ) );
( so ist es z.B. im Footer definiert)
dann erhalte ich nicht mehr den Text sondern die Ziffer 173 :smiley:

Ist das <br> vielleicht direkt im Textbaustein drin? Schonmal in der Sprachdatei nachgesehen?

die Variable $siteH sagt jedes mal auf welcher Höhe der text eingefügt wird.
Mit $siteH += 15; erhöhst du den Wert um 15 (ich denk mal pixel) und der nächste Text kommt also 15pixel tiefer.

danke für die Hilfe, das hat funktioniert.
Habe nun aber das Problem das wenn mehr Artikel im Warenkorb sind die Zeile natürlich verschwindet weil alles nach unten verschoben wird.
Wie kann ich also am besten eine Zeile direkt über den Footer platzieren?

ps. das Rechnungsformular umzubauen hat es in sich, zumal für uns viele Sachen nicht passen - brutto netto bei der Endsumme wird nicht richtig angegeben. Auf der Rechnung steht nicht wirklich ersichtlich Rechnung. Wichtige Elemente wie UID, Iban und Bic etc uvm sind nicht vorhanden. Die Summenbildung bezüglich Netto/Brutto und Mwst ist sehr verwirrend (wieso wird z.B. für den Versand die Mwst. seperat ausgewiesen und nicht innerhalb der normalen Mwst.) Endkunden erhalten 2 Summen Netto und Brutto - alles sehr verwirrend und viel Umbauarbeit.
Nun muss ich den Warenkorb auch nochmals komplett umbauen :frowning:

[QUOTE=power87;79446]ps. das Rechnungsformular umzubauen hat es in sich[/QUOTE]

normalerweise steht auch eine Warenwirtschaft dahinter die die Rechnungen erstellt, wenn das umfangreicher wird

naja was heißt Umfangreich, im Grunde brauche ich eine normale Rechnung mit folgendem üblichen Aufbau:

  • alle Artikel in netto
  • Versand in netto
  • Mwst
  • Bruttosumme bzw. bei UID Nettosumme

Punkt 1 funktioniert
die restlichen Punkte nicht bzw. müssen angepasst werden was mit dem php Formular nicht ganz einfach ist

Im Anhang ein Beispiel von einem anderen Post wie das ganze rechtlich richtig mit der Standardkonfig aussieht, aber ich möchte den Kunden nicht mit so einer Rechnung geschweige denn unseren Buchhaltung damit quälen. Es wird von jeder Hauptposition (Artikel, Geschenk, Versand) die Mwst extra ausgeführt anstatt sie wie üblich in einer Position zu sammeln und zum Schluss habe ich dann noch netto und brutto Preis.

Mag schon sein das viele ein Warensystem nutzen, wir ja auch aber ich kann auf das Warensystem nicht zurückgreifen weil der Shop in einem eigenen Kreislauf laufen soll und ein neues Warensystem zu kaufen bringt auch nichts wenn ich nur eine normale Rechnung brauch :smiley:

Ich bin mitlerweile schon sehr weit gekommen (Anhang .jpg),
Mwst. ist noch nicht perfekt, aber das ist das beste was ich kann, und Versand habe ich halt mal so gelöst wobei das der Buchhaltung nicht gefällt - die Mwst. muss seperat sein am besten in der Mwst. Zeile drin - das schaffe ich aber nicht. Wenn ich die Mwst. ausführe erhalte ich eine neue Mwst. Zeile und Brutto und Netto Summe was bei UID Kunden wieder falsch wäre.

[QUOTE=Hebsacker;79428]verd…

und ich wollte Dir gerade <br> empfehlen…:eek:

Schau doch mal ein wenig höher, wie wird denn ein Zeilenwechsel da gemacht?[/QUOTE]

könnte man das als Bug eintragen?, nervt ein wenig für jeden Zeilenumbruch eine neue Textvariable anzulegen.
Wenn der Text zu lang wird wird er einfach bis zum Seitenrand geführt und dann abgeschnitten.

Hallo,
ich stell mich auch zu doof an. Ich würde auch gerne unter dem Text: “Herzlich Dank für Ihre Bestellung” einfach drei weitere Zeilen einfügen.

Dazu habe ich die lang.php um die “paymorrow” Variablen erweitert:

'ORDER_OVERVIEW_PDF_GREETINGS'                  => 'Herzlichen Dank für Ihre Bestellung. Bitte empfehlen Sie uns weiter!', 
'ORDER_OVERVIEW_PDF_PAYMORROW1'                 => 'Bei der Abwicklung des Rechnungskaufs greifen wir auf den Service der paymorrow GmbH zurück.',
'ORDER_OVERVIEW_PDF_PAYMORROW2'                 => 'Verwenden Sie deshalb zur Bezahlung bitte ausschließlich die Kontoverbindung,', 
'ORDER_OVERVIEW_PDF_PAYMORROW3'                 => 'welche Ihnen für diesen Kauf von der paymorrow GmbH bereits per E-Mail mitgeteilt wurde',

und in der myorder.php folgendes hinzugefügt:


        $oPdf->text( 15, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );
        $oPdf->text( 30, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW1' ) );
        $oPdf->text( 45, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW2' ) );
        $oPdf->text( 60, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW3' ) );

Ergebnis ist dass alle 4 Zeilen überlagert in einer Zeile dargestellt werden.
Kann mir Dummbatz jemand sagen wie ich diese untereinander anzeigen lassen kann?
Danke
:confused:

[QUOTE=vanilla thunder;79436]die Variable $siteH sagt jedes mal auf welcher Höhe der text eingefügt wird.
Mit $siteH += 15; erhöhst du den Wert um 15 (ich denk mal pixel) und der nächste Text kommt also 15pixel tiefer.[/QUOTE]

schau mal hier, das sollte funktionieren

Hallo Hebsacker,
danke für dein Feedback aber ich komm mit der Syntax nicht klar wie muss es denn aussehen? Ich habs hiermit probiert das klappt aber nicht da sehe ich nur die erste Zeile “Herzlichen Glückwunsch” der Rest von Paymorrow wird nicht angezeigt.

$oArtSumm->run( $oPdf );
        $siteH += $iHeight + 8;

        $oPdf->text( 15, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );
        $oPdf->text( $siteH +=15, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW1' ) );
        $oPdf->text( $siteH +=15, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW2' ) );
        $oPdf->text( $siteH +=15, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW3' ) );
    }

Wäre sehr dankbar für eine Lösung :confused:
Gruß

Keiner eine Idee?
Wäre sehr sehr dankbar!

die Höhendefinition war so auch nicht ganz richtig, versuche es mal so:

	$oArtSumm->run( $oPdf );
        $siteH += $iHeight + 8;

        $oPdf->text( 15, $siteH, $this->translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );
        $oPdf->text( $siteH +15, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW1' ) );
        $oPdf->text( $siteH +30, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW2' ) );
        $oPdf->text( $siteH +45, $this->translate( 'ORDER_OVERVIEW_PDF_PAYMORROW3' ) );

und vergiss die neuen Variablen nicht in die Sprachfiles zu packen, sonst siehst nichts und den TMP Ordner bei jeder Änderung leeren.

Hallo power87,
danke für dein Feedback, doch leider klappt es auch so noch nicht.
Ich sehe wie zuvor nur die Zeile: “Vielen Dank für ihre Bestellung…” in der pdf…
Die 3 neuen Zeilen sind nicht sichtbar…

TMP Ordner habe ich gelöscht und die Variablen sind auch in der www/out/admin/de/lang.php eingetragen…

Noch eine Idee, Vorschlag?
DANKE

Hallo,
ich habe einfach den Absatz mit den PDF-Greetings kopiert und nun siehts folgendermaßen aus:

    $oArtSumm-&gt;run( $oPdf );
    $siteH += $iHeight + 8;

    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );



    $oArtSumm-&gt;run( $oPdf );
    $siteH += $iHeight - 45;

    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS2' ) );
}

natürlich kann man das beliebig oft wiederholen, um mehrere zusätzliche Zeilen in den Rechnungsbeleg einzufügen.

Hallo nickname,
sehr sehr gute Idee! Das kopieren des Absatzes hat funktioniert. Ich konnte nun ohne Probleme 3 weitere Zeilen einfügen!

Puuuhhh doch so einfach aber man muss erst mal drauf kommen :smiley:

Danke nochmal!

Fall für mich geschlossen
Grüße
dmsman2

[QUOTE=nickname;90191]Hallo,
ich habe einfach den Absatz mit den PDF-Greetings kopiert und nun siehts folgendermaßen aus:

natürlich kann man das beliebig oft wiederholen, um mehrere zusätzliche Zeilen in den Rechnungsbeleg einzufügen.[/QUOTE]

Das ist echt super, hab es damit auch hinbekommen - DANKE :slight_smile:
Das einzige Problem ist, dass sich die Zeilen jetzt nach einer weiteren Änderung wieder übereinander schieben und ich noch nicht den optimalen Wert für die Höhre gefunden habe. Es ist bei mir ein wildes Ausprobieren, aber ich lande gerade keinen Treffer. Kannst du mir erklären, wieso du -45 gewählt hast und von wo genau das berechnet wird? Irgendwie erkenne ich da in meinen Versuchen noch keine Logik wie es sich verschiebt…

besten Dank!

EDIT: Bei einer Rechnung passt es jetzt, für eine andere Bestellung (mit mehr bestellten Artikeln) schiebt es jedoch wieder die beiden Zeilen übereinander. Am besten wäre es dann ja, den Abstand “von oben” anzugeben, relativ zur Zeile davor. Das bekomme ich aber nicht hin. Bei mir sieht es folgendermaßen aus.
}

    $oArtSumm-&gt;run( $oPdf );
    $siteH += $iHeight + 15;
    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );
	$oArtSumm-&gt;run( $oPdf );
    $siteH += $iHeight -40;
    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS2' ) );
}

Mit dem -40 past es jetzt bei einem Beispiel, beim anderen aber nicht. Ich habe diverse Werte ausprobiert, aber bin zu keiner Lösung gekommen. Habt ihr einen Tipp wie ich das lösen kann? Vielen Dank!

Das Problem ist, daß es bei der PDF-Ausgabe soetwas wie eine aktuelle Zeilenposition nicht gibt. Jeder Text muss explizit an eine absolute X,Y-Position gesetzt werden. Um die Zeilen untereinander zu platzieren, muss man also selbst die Y-Koordinate in einer Variable mitführen und hochzählen. Wenn also eine Funktion unter bestimmten Bedingungen ein paar Zeilen zusätzlich einfügt, muss man den Y-Zählerstand am Ende der Funktion übernehmen und von da aus weiter hochzählen, sonst können die Zeilen übereinander “gedruckt” werden.

Vielen Dank m431342, das war’s!
Sollte jemand das gleiche Problem haben, hier der entsprechende Code:

$oArtSumm->run( $oPdf );
$siteH += $iHeight + 15;

    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS' ) );
	
	$oArtSumm-&gt;run( $oPdf );
    $siteH += 5;

    $oPdf-&gt;text( 15, $siteH, $this-&gt;translate( 'ORDER_OVERVIEW_PDF_GREETINGS2' ) );

Auf diese Art und Weise werden die Zeilen unabhängig von der Rechnungslänge brav untereinander geschrieben :slight_smile: