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
Klicken Sie auf das Feld, welches Sie ändern möchten.
Ändern Sie im oberen Bereich die Beschriftung des Labels.
Textblöcke ändern
Klicken Sie mit der rechten Maustaste auf den Textblock und wählen Sie Edit.
Im geöffneten Fenster können Sie nun den Text anpassen.
Dann das Fenster schließen und die Meldung mit Ja bestätigen.
Text ändern bei Teillieferung
Gehen Sie auf den unteren Reiter SubReport2: plPrintInvoice.
Hier gehen Sie dann wie im Schritt „Textblöcke ändern“ vor.
Text ändern bei „nicht lieferbaren Artikel“
Gehen Sie auf den Reiter SubReport9: plInvoiceItemsNotAvailable.
Hier gehen Sie dann wie im Schritt „Textblöcke ändern“ vor.
Definierte Texte ändern
Texte, wie „Die Bestellung ist hiermit abgeschlossen.“, können im Tab Calc geändert werden.
Dazu müssen Sie im Tab Calc die Funktion suchen.
Wichtig: Nur die Texte hinter „…Lines.Add(`“ ändern.
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
Öffnen Sie den Rechnungsdesigner.
Öffnen Sie das Template, das Sie bearbeiten möchten.
Wechseln Sie zum Reiter: Design-Modus.
-
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
Klicken Sie in der Menüleiste auf den Button DBText hinzufügen.
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
Legen Sie wie oben beschrieben ein neues Feld für eine Variable an.
Wechseln Sie zum Reiter Calc-Modus.
Klicken Sie im Bereich Report Objekts per Rechtsklick auf Events.
Klicken Sie nun auf die von Ihnen erstellte Variable.
Wählen sie im rechten Bereich aus für welches Event ein Skript erstellen möchten.
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;
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.
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:
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.
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:
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 |
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 |
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.
-
Variable1 im Detail einfügen und im Calc folgende Programmierung hinterlegen:
Value := DBPipeline['SDelDQtyDelivered'] DBPipeline['SDelDsFinalPrice'];
Variable2.value := Variable2.value + Value;
Variable2 im Summary einfügen. Diese benötigt keine extra Programmierung.
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.
-
Variable2 im Detail einfügen und im Calc folgende Programmierung hinterlegen:
Value := plPrintInvLine['ItemQty'] plPrintInvLine['ItemPrice']
-
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.
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'];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.
Ändern der Anrede des Kunden im Mahnungstemplate
Sie möchten die Anrede des Kunden im Mahnungstemplate auf eine etwas persönlicher Version ändern.
Bitte öffnen Sie die Applikation pixi Zahlungen und wechseln dort zum Reiter Mahnungen und klicken dann den Button Einstellungen.
Im sich nun öffnenden Fenster Klicken Sie bitte auf den Button Vorlagen-Manager.
Daraufhin öffnet sich ein Fenster mit Ihren Mahnungstemplates.
Wählen Sie hir das zu bearbeitende Template und klicken Bearbeiten.
-
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!
Danach wechseln Sie bitte in den Reiter Calc des Editors und navigieren an die im Bild angezeigte Posistion.
Hier klicken Sie bitte auf Punkt Before Generate und danach in den Unteren Teil und fügen den Text ein:
|
Wichtig: Stellen Sie bitte sicher, dass im Kundenservice auch die Anrede (Herr oder Frau) in der jeweiligen Rechnung hinterlegt ist!
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:
|
Wie folgt wird Ihnen nun der Betrag auf der Rechnung ausgewiesen:
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.
Öffnen Sie das Rechnungstemplate im Editor
Klicken Sie auf Datei -> Page Setup
Stellen Sie unter Printer den Drucker und
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).