Programmierung zusätzlicher Informationen
2024-06-16Dies ist eine erweiterte Funktion, die es Ihnen ermöglicht, das Feld für zusätzliche Informationen einer Rechnung basierend auf dem zu ändern, was in anderen Feldern eingegeben wird. Wenn Sie kein Programmierer sind, würde ich vorschlagen, einfach die unten stehenden Beispiele durchzusehen, eines auszuwählen, das Ihren Bedürfnissen entspricht, und es entsprechend anzupassen.
Beispiele
Hier finden Sie verschiedene Beispiele, die Sie im Bereich “Programm für zusätzliche Informationen” auf der Einstellungsseite verwenden können.
Fälligkeitsdatum angeben
if (dueDate) {
globalThis.result = `Bitte zahlen Sie bis ${formatDate(dueDate)}`;
}
Beim Erstellen einer Rechnung erscheint eine Schaltfläche “Programm für zusätzliche Informationen ausführen” neben dem Feld “Zusätzliche Informationen”. Wenn Sie darauf klicken, wird das Feld mit Text wie “Bitte zahlen Sie bis 2024-06-26” gefüllt.
Fälligkeitsdatum automatisch angeben
// AUTO
if (dueDate) {
globalThis.result = `Bitte zahlen Sie bis ${formatDate(dueDate)}`;
}
Wenn Sie das Rechnungsdatum oder ein anderes Feld ändern, wird das Feld für zusätzliche Informationen
automatisch aktualisiert. Beachten Sie, dass dieses Feld
automatisch überschrieben wird, sodass Ihre manuellen Änderungen verloren gehen können. Verwenden Sie daher
die automatische Variante (erste Zeile // AUTO) nur, wenn Sie möchten, dass die zusätzlichen
Informationen immer gleich aussehen.
Fälligkeitsdatum basierend auf Sprache angeben (automatisch)
// AUTO
if (dueDate) {
if (language == 'lt') {
globalThis.result = `Prašome apmokėti sąskaitą iki ${formatDate(dueDate)}`;
} else if (language === 'en') {
globalThis.result = `Please pay by ${formatDate(dueDate)}`;
} else if (language === 'de') {
globalThis.result = `Bitte zahlen Sie bis ${formatDate(dueDate)}`;
}
}
Zahlungsart angeben
Beim Erstellen oder Bearbeiten einer Rechnung können Sie eine Zahlungsart (bar
oder per Überweisung) aus dem Dropdown unter dem Fälligkeitsdatum auswählen.
Diese Auswahl steht dem Programm als Variable paymentMethod zur Verfügung, die
'cash', 'bank' oder null ist, wenn nichts ausgewählt wurde. Das Dropdown
selbst erscheint nicht auf der Rechnung — verwenden Sie das Programm, um es in
das Feld für zusätzliche Informationen zu schreiben.
if (paymentMethod === 'bank') {
globalThis.result = 'Bitte zahlen Sie per BANKÜBERWEISUNG';
} else if (paymentMethod === 'cash') {
globalThis.result = 'Bitte zahlen Sie in BAR';
}
Sie können den Text anhand der Rechnungssprache language anpassen:
if (paymentMethod === 'bank') {
if (language === 'de') {
globalThis.result = 'Bitte zahlen Sie per Banküberweisung';
} else {
globalThis.result = 'Please pay by BANK TRANSFER';
}
} else if (paymentMethod === 'cash') {
if (language === 'de') {
globalThis.result = 'Bitte zahlen Sie in bar';
} else {
globalThis.result = 'Please pay in CASH';
}
}
Informationen kombinieren
Sie können diese Informationen kombinieren, wenn Sie sowohl das Zahlungsdatum als auch die Zahlungsmethode angeben möchten.
if (dueDate) {
let result = `Bitte zahlen Sie bis ${formatDate(dueDate)}\n`;
if (paymentMethod === 'bank') {
result += 'Zahlungsart: BANKÜBERWEISUNG';
} else if (paymentMethod === 'cash') {
result += 'Zahlungsart: BAR';
}
globalThis.result = result;
}
Informationen für Programmierer
Das Programm für zusätzliche Informationen ist in der Programmiersprache JavaScript geschrieben.
Das Programm erhält diese Informationen:
invoiceType- Rechnungstyp. Kannstandard,proformaodercreditsein.seriesName- SeriennameseriesId- Seriennummerdate- RechnungsdatumdueDate- Fälligkeitsdatum als JavaScript-Date-Objekt, odernullwenn nicht gesetztpaymentMethod- gewählte Zahlungsart:'cash','bank'odernullwenn nicht gesetztlanguage- Spracheseller- Verkäuferinformationenbuyer- Käuferinformationenissuer- Person, die die Rechnung erstellt hatitems- Array von Dienstleistungen oder Produktenprice- Summe der Rechnungspositionen oder Dienstleistungen in Cent
Beispieldaten, die an das Programm übergeben werden:
const invoiceType = 'standard';
const seriesName = 'INV';
const seriesId = 47;
const date = new Date(1718540924628);
const dueDate = null;
const paymentMethod = null;
const language = 'de';
const seller = 'Verkäufer';
const buyer = 'Käufer';
const email = '';
const issuer = 'Max Mustermann';
const items = [{ id: 0, name: '', unit: 'H87', amount: 1, price: 0 }];
const price = 0;
Wenn die erste Zeile des Programms der Kommentar // AUTO ist, wird das Programm
jedes Mal ausgeführt, wenn sich Felder ändern.
// AUTO
Programme, die mit // AUTO markiert sind, werden auch ausgeführt, wenn mehrere
Rechnungen im Batch-Modus bearbeitet werden.
formatDate ist eine Hilfsfunktion, die Datumsangaben im Format JJJJ-MM-TT formatiert,
z. B. 2024-06-26