Tipps & Tricks für die eEvolution Exportmodule

Auf dieser Seite finden Sie eine Reihe von Tipps und Tricks, die bei der Konfiguration der folgenden Exportmodule von eEvolution in der Export-Steuerung hilfreich sein können:

 

Verwendet man in seinem Template z.B. die Eingabe „Der Test @blub“, so wird der Template Parser eine Ausnahme werfen mit dem Hinweis, dass "blub" unbekannt ist. Möchten man, dass "blub" als gültig anerkannt wird, kann man ein zweites @-Zeichen vor das Wort setzen. Die Eingabe „Der Test @@blub“ wäre dann gültig.

 

Vor @Model muss sich immer ein Leerzeichen befinden. Um aber z.B. im Dateinamen für den Beleg kein Leerzeichen zu erhalten kann folgende Eingabe vorgenommen werden:

LS_@{@Model.Lieferscheinnummer}

Die geschweiften Klammern mit dem vorangestellten @ sorgen dafür, dass @Model.Lieferscheinnummer korrekt ausgewertet wird.

 

Möchten Sie ein kundenspezifisches Feld mit abfragen, dann nehmen Sie bitte folgende Eingaben vor:

In der Spalte Init-Funktion:

#C#

{

nGroup.Info.eEvolution.Base.Ext.APSqlxPrepAndExec(@"SELECT AUFNR, PRIORITAET INTO :nValues[42], :nValues[43]

FROM AUFTRAG INNER JOIN ANGAUFPOS ON AUFTRAG.LFDANGAUFGUTNR = ANGAUFPOS.LFDANGAUFGUTNR

WHERE " + exportDaten.ReportWhereClause);

 

exportDaten.Values.Add("AufNr",

nGroup.Info.eEvolution.Global.Var.nValues[42]);

exportDaten.Values.Add("Prio",

nGroup.Info.eEvolution.Global.Var.nValues[43]);

}

 

Denken Sie bitte in diesem Zusammenhang daran, die richtigen Info-Variablen zu wählen, wie z.B. nValues für numerische Felder und sValues für alphanumerische Felder.

Im Template:

Auftragsnummer aus dem Skript: @Model.Values["AufNr"]

Priorität aus dem Skript: @Model.Values["Prio"]

Tipp:

Nutzen Sie den "Syntax-Check" direkt im Bildschirm "Skripteditor", um ihre Syntax vor der Ausführung noch einmal zu überprüfen. Der Bildschirm "Skripteditor" öffnet sich automatisch bei einem Doppelklick in die Spalte "Init-Funktion".

Um ein Datum ohne Uhrzeit zu formatieren, können Sie die Funktion Format nutzen. Diese Funktion wrappt die .NET Funktion im string.Format, d.h. man kann dort Zahlen, Daten, etc. formatieren.

Beispiel

@Model.Format("{0:d}", @Model.Auftragsdatum)

"d" steht hier für das ShortDatePattern.

Eine andere mögliche Eingabe wäre @Model.Format("{0:dd.MM.yyyy}", @Model.Auftragsdatum)

 

Sie können beim automatischen E-Mailversand Textbausteine und Mailtemplates verwenden. Hierfür nutzen Sie die folgenden Schlüsselwörter:

@Model.Textbaustein["Name des Textbausteins“]

@Model.Mailtemplate["Name des Mailtemplates“]

 

Möchten Sie HTML in ihren Textbausteinen bzw. Mailtemplates verwenden, dann umschließen Sie die Schlüsselwörter bitte mit der Funktion @Raw(…). Daraus würde sich dieser Aufruf ergeben:

@Raw(Model.Textbaustein["Name des Textbausteins“])

@Raw(Model.Mailtemplate["Name des Mailtemplates“] )

Beispiel:

Sie haben einen Textbaustein bzw. Mailtemplate "Test" mit dem folgenden Inhalt konfiguriert:

Sie finden die neusten Informationen zu eEvolution unterwww.eEvolution.de

 

Bei dem Aufruf @Model.Textbaustein["Test“]) bzw. @Model.Mailtemplate ["Test"] würde im Template folgendes ausgegeben werden:

<b> <b>Sie finden die neusten Informationen zu eEvolution unter</b> <span style="color: #ff4500;">www.eEvolution.de</span>

 

Nutzen Sie dagegen @Raw(Model.Textbaustein["Test“]) bzw. @Raw(Model.Mailtemplate["Test“]) erhalten Sie die folgende Rückgabe im Template:

Sie finden die neusten Informationen zu eEvolution unterwww.eEvolution.de

Textbausteine und Mailtemplates sind sehr hilfreich, um wiederverwendbare Elemente, wie z.B. einen Footer einzusetzen.

Diese Funktion liefert das erste Element zurück, welches nicht leer ist. Sie können so eigene Regeln für E-Mailempfänger definieren.

Beispiel

@Model.FirstNonEmpty(@Model.abwansprechmail, @Model.ansprechmail, @Model.kundennmail, „keinempfaenger@meinefirma.de“)

 

Um einen Betrag mit zwei Nachkommastellen zu erhalten können Sie erneut mit der Funktion Format arbeiten.

Beispiel

@Model.Format("{0:0.00}", @Model.Bestellsumme)

 

Bitte beachten Sie:

Die Sprache eines Belegs kann in dem Dialog "Drucken" vor dem Ausdruck verändert werden, hat aber KEINE Auswirkung auf das beim Kunden oder Debitor hinterlegte Sprachkennzeichen!

Beispiel Betreff:

@(Model.KundenSprachkennzeichen == 2? "Your Invoice @Model.Rechnungsnummer" : "Ihre Rechnung @Model.Rechnungsnummer")

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 2 hinterlegt, lautet der Betreff" Your Invoice 12345" .

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" eine Sprache mit einer anderen laufenden Nummer als 2 hinterlegt, dann lautet der Betreff immer "Ihre Rechnung 12345"

Beispiel Inhalt mit aktivierten HTML:

@if(Model.KundenSprachkennzeichen == 2) {
Ladies and Gentlemen,
please find enclosed our invoice @Model.Rechnungsnummer for booking and settlement within the agreed payment period. This email has been sent automatically.
Best regards
} else {
Sehr geehrte Damen und Herren,
anbei erhalten Sie unsere Rechnung @Model.Rechnungsnummer zur Buchung und Regulierung in der mit Ihnen vereinbarten Zahlungsfrist. Diese Email wurde automatisch verschickt.
Mit freundlichen Grüßen
}

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 2 hinterlegt, wird der englische Text der E-Mail verschickt:

Ladies and Gentlemen,

please find enclosed our invoice 12345. This email has been sent automatically.

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" eine andere Sprache mit einer anderen laufenden Nummer als 2 hinterlegt, wird der deutsche Text der E-Mail verschickt:

Sehr geehrte Damen und Herren,

anbei erhalten Sie unsere Rechnung 12345. Diese Email wurde automatisch verschickt.

Beispiel 1 Inhalt ohne aktiviertes HTML:

@{ String txt;

switch (@Model.KundenSprachkennzeichen)

{

case 1: txt = "Sehr geehrte Damen und Herren,\r\n anbei erhalten Sie unsere Rechnung @Model.Rechnungsnummer zur Buchung und Regulierung in der mit Ihnen vereinbarten Zahlungsfrist. Diese Email wurde automatisch verschickt. \r\n Mit freundlichen Grüßen";

break;

    case 2: txt = "Ladies and Gentlemen,\r\n please find enclosed our invoice @Model.Rechnungsnummer for booking and settlement within the agreed payment period. This email has been sent automatically. \r\n Best regards.";

break;

default: txt = "Sehr geehrte Damen und Herren,\r\n anbei erhalten Sie unsere Rechnung @Model.Rechnungsnummer zur Buchung und Regulierung in der mit Ihnen vereinbarten Zahlungsfrist. Diese Email wurde automatisch verschickt. \r\n Mit freundlichen Grüßen";

break;

}

}

@txt

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 1 hinterlegt, wird der case 1 mit dem deutschen Text der E-Mail verschickt:

Sehr geehrte Damen und Herren,

anbei erhalten Sie unsere Rechnung 12345. Diese Email wurde automatisch verschickt.

Mit freundlichen Grüßen

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 2 hinterlegt, wird der case 2 mit dem englischen Text der E-Mail verschickt:

Ladies and Gentlemen,

please find enclosed our invoice 12345. This email has been sent automatically.

Best regards

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" eine andere Sprache mit einer anderen laufenden Nummer als 1 oder 3 hinterlegt, wird der Default der E-Mail verschickt:

Sehr geehrte Damen und Herren,

anbei erhalten Sie unsere Rechnung 12345. Diese Email wurde automatisch verschickt.

Mit freundlichen Grüßen

Beispiel 2 Inhalt ohne aktiviertes HTML:

@{ String txt;

switch (@Model.KundenSprachkennzeichen)

{

case 1: txt = "Ihr Lieferschein @Model.Rechnungsnummer vom @Model.Lieferscheindatum zum Auftrag @Model.Auftragsnummer.";

break;

case 2: txt = "Your delivery note @Model.Lieferscheinnummer from the @Model.Lieferscheindatum to the order @Model.Auftragsnummer.";

break;

case 3: txt = "Votre bon de livraison @Model.Lieferscheinnummer de la @Model.Lieferscheindatum à la commande @Model.Auftragsnumme.r";

break;

default: txt = "Unbekanntes Sprachkennzeichen.";

break;

}

}

@txt

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 1 hinterlegt, wird der case 1 mit dem deutschen Text der E-Mail verschickt:

Ihr Lieferschein 123456 vom 01.02.2023 zum Auftrag 520123.

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 2 hinterlegt, wird der case 2 mit dem englischen Text der E-Mail verschickt:

Your delivery note 123456 from the 01.02.2023 to the order 520123.

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 3 hinterlegt, wird der case 3 mit dem französischen Text der E-Mail verschickt:

Votre bon de livraison 123456 de la 01.02.2023 à la commande 520123

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" eine andere Sprache mit einer anderen laufenden Nummer als 1, 2 oder 3 hinterlegt, wird der Default der E-Mail verschickt:

Unbekanntes Sprachkennzeichen.

Beispiel Beleg-Dateiname

@(Model.KundenSprachkennzeichen == 2? "Invoice @Model.Rechnungsnummer" : "RE @Model.Rechnungsnummer")

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" die Sprache mit der laufenden Nummer 2 hinterlegt, wird der englische Dateiname verwendet:

Invoice 12345

Ist beim Kunden im Dialog "Diverses" unter "Sprache Beleg" eine andere Sprache mit einer anderen laufenden Nummer als 2 hinterlegt, wird der deutsche Dateiname verwendet:

RE 12345

Tipp:

Die laufende Nummer einer Sprache finden Sie in der Spalte "Sprachnummer" des Dialogs "Sprachverwaltung", welchen Sie in der Installation/Administration unter "Aktion" - "Sprachverwaltung" finden.

 

Verwandte Themen

Schlüsselworte für die Exportmoduldaten der Exportmodule

FAQ - Häufig gestellte Fragen zur Einrichtung des automatischen E-Mailversands