pixi

Tipps und Tricks zur Gestaltung von Templates im Template Editor

Dieser Artikel soll Ihnen dabei helfen, die verschiedenen Variablen des Template Editors zu verstehen, um sie dann selbst im Template verarbeiten zu können. Eine Anleitung zur Änderung der Templates mit dem Template Editor finden Sie hier: Template Editor - Templates ändern


Kategorien im Template Editor

Im Template Editor gibt es verschiedene Kategorien (Data Tree), in welchen die Variablen untergebracht sind. Diese einzelnen Kategorien spezialisieren sich jeweils auf einen bestimmten Inhalt, welcher zum Beispiel auf der Rechnung dargestellt werden soll.


Tipps und Tricks

Einfache Beschriftungen ändern

  1. Klicken Sie auf das Feld, welches Sie ändern möchten.

  2. Ändern Sie im oberen Bereich die Beschriftung des Labels.


Zum Seitenanfang

Textblöcke ändern

  1. Klicken Sie mit der rechten Maustaste auf den Textblock und wählen Sie Edit.


  2. Im geöffneten Fenster können Sie nun den Text anpassen.

  3. Dann das Fenster schließen und die Meldung mit Ja bestätigen.

Zum Seitenanfang

Text ändern bei Teillieferung

  1. Gehen Sie auf den unteren Reiter SubReport2: plPrintInvoice.


  2. Hier gehen Sie dann wie im Schritt „Textblöcke ändern“ vor.

Zum Seitenanfang

Text ändern bei „nicht lieferbaren Artikel“

  1. Gehen Sie auf den Reiter SubReport9: plInvoiceItemsNotAvailable.


  2. Hier gehen Sie dann wie im Schritt „Textblöcke ändern“ vor.

Zum Seitenanfang

Definierte Texte ändern

  1. Texte, wie „Die Bestellung ist hiermit abgeschlossen.“, können im Tab Calc geändert werden.

  2. Dazu müssen Sie im Tab Calc die Funktion suchen.


Wichtig: Nur die Texte hinter „…Lines.Add(`“ ändern.


Zum Seitenanfang

Hinzufügen von Variablen zu vorhandenen Templates

Sie können über den Design-Modus verschiedene Arten von Variablen und Inhalten einfügen.

Mit der Funktion: DBText-Variable-einfügen können Sie Textvariablen aus der pixi Datenbank auf der Rechnung anzeigen. Mit den Funktionen DBMemo-Variable- oder DBCalc-Variable-einfügen können Sie über den Calc-Modus Skripte hinzufügen und Berechnungen durchführen.


Bearbeiten von Variablen im Design-Modus

  1. Öffnen Sie den Rechnungsdesigner.

  2. Öffnen Sie das Template, das Sie bearbeiten möchten.

  3. Wechseln Sie zum Reiter: Design-Modus.

  4. Wählen Sie einen Report aus, für den Sie eine neue Variable hinzufügen möchten. Sie können die DBText Felder in folgenden Bereichen einfügen:


    • plPrintInvoice: (Report: Main: plPrintInvoice) für generelle Rechnungsparameter wie Lieferanschrift, Rechnungsnummer, usw.

    • plPrintInvLine (Report: Subreport1) für Artikeldaten wie Menge, Preis oder EAN

    • plBackOrderItems (Report: Subreport2) für Artikeldaten aus Nachlieferungen

    • plInvoiceItemsNot Available: (Report: Subreport9) fur Artikeldaten von NLB-Artikeln

  5. Klicken Sie in der Menüleiste auf den Button DBText hinzufügen.

  6. Fügen Sie das neue DBText Feld an gewünschter Stelle im Template ein indem Sie per Mausklick eine Form dafür ziehen. Sie können die neue DBText Variable über den Editor formatieren.


Bearbeiten von Variablen im Calc-Modus

  1. Legen Sie wie oben beschrieben ein neues Feld für eine Variable an.

  2. Wechseln Sie zum Reiter Calc-Modus.

  3. Klicken Sie im Bereich Report Objekts per Rechtsklick auf Events.


  4. Klicken Sie nun auf die von Ihnen erstellte Variable.

  5. Wählen sie im rechten Bereich aus für welches Event ein Skript erstellen möchten.

  6. Nachdem Sie das Event ausgewählt haben, können Sie das Skript erstellen.


Beispiel für Skript im Calc-Modus



Variable 1 = Gesamtbetrag netto

procedure Variable1OnCalc(var Value: Variant);

begin
Value := plPrintInvoice['Total']-plPrintInvoice['VATHigh']-plPrintInvoice['VATLow']
end;


Zum Seitenanfang

Einfügen Seitenzahl

Zum Einfügen einer Seitenzahl wird die Systemvariable genutzt. Diese ist im oberen linken Bereich im Designfenster zu finden. Nach dem Einfügen der Variable im Footer an der gewünschten Stelle, muss noch der Variablen Typ geändert werden. Standardmäßig ist die Variable auf vtDate gesetzt (sichtbar unter VarType auf der linken Seite im Bereich Appearance). Dies muss z.B. auf vtPageSetDesc gesetzt werden, dann wird die Seitenzahl im Format "Page 1 of 1" am unteren Rand der Seite ausgegeben.



Zum Seitenanfang

Formatierung in einem Label

Soll in einem Satz eine Variable eingefügt werden, z.B. ein Datum, so ist es in der Designansicht nicht möglich, dieser Variable eine Formatierung zu geben. Diese Formatierung muss im Calc gesetzt werden.

Möglichkeiten von Formatierungen:

  • FormatDateTime(’dd/mm/yyyy’,plPrintInvoice[’InvDate’])

  • FormatCurr(’#,##0.00 EUR’,plPrintInvoice[’total’])


Beispiel:


Zum Seitenanfang

Unterschiedliche Schriftstile in einem Richtext inkl. Variable

Verwendet man den Textbaustein RichText, so hat man die Möglichkeit unterschiedliche Schriftstile in einem Textfeld unterzubringen. Zusätzlich kann man in einen RichText eine oder mehrere Standardvariablen einfügen, um bestimmte Felder oder Werte dynamisch zu gestalten und diese mit verschiedenen Schriftstilen zu versehen. Dazu fügt man einen RichText in gewohnter Weise ein und öffnet den Editor-Modus des RichTextes. Nach erfolgter Eingabe des Textes und der Formatierung dessen, setzt man den Curser an die Stelle im Text, wo die Standardvariable eingefügt werden soll. Wie in folgendem Bild unter 1. zu sehen ist, setzt man den Haken bei Mail Merge und wählt dort den DataTree aus, welchen man benutzen möchte. Im nächsten Feld unter 2. markiert man die entsprechende Standardvariable und klickt dann Add Field (3.). Die Variable wird z.B. im Format total hinzugefügt. Diese kann man dann ebenfalls z.B. Fett markieren.



Zum Seitenanfang

Einfügen eines Hyperlinks

Es gibt die Möglichkeit eine Webadresse oder eine Emailadresse auf der Rechnung als Hyperlink darstellen zu lassen. Wird die Rechnung zum Beispiel als PDF verschickt, so kann dann direkt die Homepage durch anklicken der Webadresse auf dem PDF geöffnet werden.


Beispiel:



Zum Seitenanfang

SI-Felder

Im Shopdatensatz, welcher im ControlCenter --> Tabellen --> Shops zu finden ist, sind verschiedene SI-Felder vorhanden. Diese sind zum Teil namentlich beschriftet (z.B. SI Web-Adresse) oder wurden mit der Bezeichnung allgemein gehalten (z.B. SI Fußzeile 1). Prinzipiell sind alle SI-Felder frei befüllbar und können somit auf dem Template für unterschiedliche Zwecke genutzt werden. In folgender Tabelle und auf den beiden Screenshots ist die Grundkonfiguration der SI-Felder mit den Firmendaten beschrieben.

Wichtig: Wenn z.B. in SI Fußzeile 1 UstID und Steuernummer eingetragen werden, müssen diese durch ein Leerzeichen getrennt werden. Die Nummern selbst dürfen KEIN Leerzeichen enthalten. Selbiges gilt für die Daten in SI Fußzeile 2 und 3.


Um auf der Rechnung das Firmenlogo anzuzeigen, im Feld SI Name des Logos das Shopkürzel eintragen. Im Ordner c:\pixi\templates muss dafür ein .jpg liegen (wird beim Kopieren der Templates von CD dort angelegt). Ist unter SI Name des Logos nichts angegeben, wird nur der Text von SI Kopfzeile angezeigt.

Daten auf Rechnung

ControlCenter

Variable im Template Editor

Email

E-Mail 2

email2

Shopname

SI Kofpzeile

si_headline

Telefonnummer

SI Telefon

si_fon

www

SI Web-Adresse

si_webaddr

Firma

SI Adresse

si_address

Strasse

SI Adresse 1

si_address1

Ort

SI Adresse 2

si_address2

PLZ

SI PLZ

si_zipcity

Shop Logo

SI Name des Logos

si_logoname

UstID und Steuernummer

SI Fußzeile 1

si_footline1

IBAN und SWIFT

SI Fußzeile 2

si_footline2

Konto und BLZ

SI Fußzeile 3

si_footline3

Bank

SI Fußzeile 4

si_footline4







Zum Seitenanfang

Summieren einer Variablen

Summieren einer Variablen im ReportBuilder (Berichte)

Im ReportBuilder sind viele Variablen mit entsprechend hinterlegten Berechnungen schon fest vorgegeben. Um eine Variable, welche im Details berechnet wird im Summary addiert ausgeben zu können, ist folgende Programmierung nötig:

  • Berechnung der Variable1 in die Variable selber programmieren

  • Diesen Wert dann in einen Stack (Zwischenspeicher) schreiben lassen und direkt zu Variable2 addieren

  • Variable2 gibt dann die Summe aller Variablen1 wieder


Beispiel: In Variable1 soll im Detail die Gesamtsumme eines Artikels ausgegeben werden (Produkt aus Einzelpreis mal Menge). Im Summary soll in der Variable2 die Summe aller Gesamtsummen der Einzelartikel berechnet und ausgegeben werden.

  1. Variable1 im Detail einfügen und im Calc folgende Programmierung hinterlegen:

    • Value := DBPipeline['SDelDQtyDelivered'] DBPipeline['SDelDsFinalPrice'];

    • Variable2.value := Variable2.value + Value;

  2. Variable2 im Summary einfügen. Diese benötigt keine extra Programmierung.




Zum Seitenanfang

Summieren einer Variablen im Template Editor (Rechnungen)

Im Template Editor sind viele Variablen mit entsprechend hinterlegten Berechnungen schon fest vorgegeben. Um eine Variable, welche im Details berechnet wird im Summary addiert ausgeben zu können, ist folgende Programmierung nötig:

  • Berechnung der Variable2 in die Variable selber programmieren

  • In Variable3 dessen eigenen Wert immer wieder mit dem generierten Wert der Variable1 addieren


Beispiel: In Variable2 soll im Detail die Gesamtsumme eines Artikels ausgegeben werden (Produkt aus Einzelpreis mal Menge). Im Summary soll in der Variable3 die Summe aller Gesamtsummen der Einzelartikel berechnet und ausgegeben werden.

  1. Variable2 im Detail einfügen und im Calc folgende Programmierung hinterlegen:

    • Value := plPrintInvLine['ItemQty'] plPrintInvLine['ItemPrice']

  2. Variable3 im Summary einfügen und im Calc folgende Programmierung hinterlegen:

    • Value := Variable3.Value + Variable2.Value;

Beim Einfügen der Variable2 und Variable3 ist darauf zu achten, dass der DataType auf dtDouble geändert wird. Ebenso hat man dann die Möglichkeit, die Formatierung bei DisplayFormat für diese Variable vorzugeben.





Zum Seitenanfang

Ausschneiden eines bestimmten Textes aus einer Variablen

Es die Möglichkeit einen bestimmten Teil eines Text, welcher zum Beispiel in einem Artikelnamen immer wieder an gleicher Stelle vorkommt und nicht mit ausgegeben werden soll, auszuschneiden und somit nicht mit zu Drucken.

Ein Anwendungsbeipiel für das Ausschneiden eines bestimmten Textes ist das Erstellen einer manuellen Buchung, in welcher der Wortlaut "Manuell Buchung:" direkt vor dem Artikelnamen eingefügt wird.

Dafür wird die Original-Variable des Artikelnamens ArtName durch ein Label ersetzt. Im Calc wird dann folgende Programmierung im Detail --> BeforeGenerate eingefügt:

If (copy(plPrintInvLine['ArtName'],0,19)) = 'Manuell Gutschrift:'
Then Label4.Caption := (copy(plPrintInvLine['ArtName'],21,length(plPrintInvLine['ArtName'])))
Else Label4.Caption := plPrintInvLine['ArtName'];


Zum Seitenanfang

Einfügen der DATEV-Kontonummer

Die DATEV-Kontonummer setzt sich in pixi aus der datenbankinternen Kundennummer und dem Startwert des DATEV-Kundennummernkreises zusammen. Beide werden addiert und ergeben die DATEV-Kontonummer.


Funktionalität bis pixi AVA Update 12

Zusammengesetzt in einer Variable kann man dies wie folgt im Calc programmieren:

Variable1.Value := plPrintInvoice['CustKey'] + X;

Für X setzt man den Startwert des DATEV-Kundennummernkreises ein. Dieser ist zu finden im ControlCenter --> Datenbank Einstellungen --> Zahlungen --> DATEV Export.


Funktionalität ab pixi AVA Update 13

Nutzen Sie die Variable DATEVAccNr.

Zum Seitenanfang

Ändern der Anrede des Kunden im Mahnungstemplate

Sie möchten die Anrede des Kunden im Mahnungstemplate auf eine etwas persönlicher Version ändern.

  1. Bitte öffnen Sie die Applikation pixi Zahlungen und wechseln dort zum Reiter Mahnungen und klicken dann den Button Einstellungen.

  2. Im sich nun öffnenden Fenster Klicken Sie bitte auf den Button Vorlagen-Manager.

  3. Daraufhin öffnet sich ein Fenster mit Ihren Mahnungstemplates.

  4. Wählen Sie hir das zu bearbeitende Template und klicken Bearbeiten.

  5. Sie sehen nun folgendes Fenster mit ähnlichem Inhalt:

    • Hier müssen Sie nun als Nächstes ein neues Feld vom Typ Memo anlegen und über dem Erklärungstext für den Kunden plazieren.

    • Wichtig: Die Nummer des Memofeldes muss der in der noch folgenden Abfrage entsprechen! Bitte Merken und die Abfrage ggf. abändern!

  6. Danach wechseln Sie bitte in den Reiter Calc des Editors und navigieren an die im Bild angezeigte Posistion.

  7. Hier klicken Sie bitte auf Punkt Before Generate und danach in den Unteren Teil und fügen den Text ein:

begin
if DBPipeline['Anrede'] = 'Herr' then Memo3.lines.add('Sehr geehrter Herr '+ DBPipeline['Name']+ ',');
if DBPipeline['Anrede'] = 'Frau' then Memo3.lines.add('Sehr geehrte Frau '+ DBPipeline['Name']+ ',');
end;

Wichtig: Stellen Sie bitte sicher, dass im Kundenservice auch die Anrede (Herr oder Frau) in der jeweiligen Rechnung hinterlegt ist!


Zum Seitenanfang

Formatierung der Preisanzeige

Wird auf dem Rechnungstemplate bei den Preisen nur eine Nachkommastelle angezeigt, wenn die letzte Ziffer eine 0 ist, dann gehen Sie wie folgt vor.



Es gibt 2 Möglichkeiten, damit auf der Rechnung die 0 nicht abgeschnitten wird:

  • 1. Möglichkeit: Handelt es sich um eine Systemvariable, so kann man über Rechtsklick die Option "Display Format" auswählen und zwischen verschiedenen Anzeigeoptionen wählen.


  • 2. Möglichkeit: Wird der Betrag über ein Label ausgegeben, so muss im Quelltext das Format separat hinterlegt werden:

LabelX.Caption:=FormatCurr('#,0.00',plPrintX['Variable'])


Wie folgt wird Ihnen nun der Betrag auf der Rechnung ausgewiesen:

Zum Seitenanfang

Zuweisen des Druckerfachs im Rechnungstemplate

Wenn Sie verschiedene Rechnungstemplates auf mehreren Fächern eines Druckers drucken möchten, lässt sich dies fest im jeweiligen Template hinterlegen.

  1. Öffnen Sie das Rechnungstemplate im Editor

  2. Klicken Sie auf Datei -> Page Setup

  3. Stellen Sie unter Printer den Drucker und

  4. unter Paper Source das Druckerfach ein.

Wichtig: Wenn der Drucker und das Fach direkt im Template eingestellt ist, darf in den Druckeinstellungen von pixi kein Drucker eingestellt sein (default).


Zum Seitenanfang