Sie können Tags für den aktuellen und vorherigen Feldwert in den Expression-Tag selbst einbetten. Stellen Sie sicher, dass die Feldwerte keine einfachen oder doppelten Anführungszeichen enthalten. Wenn ein Feldwert eine ungerade Anzahl an einfachen oder doppelten Anführungszeichen enthält, verursacht der Wert möglicherweise einen Ausdrucksfehler, sodass die EmailPlusTemplate-Schablone nicht ordnungsgemäß validiert wird. Dies ist eine bekannte Einschränkung des Pakets "EmailPlus".
Eine bessere Methode besteht darin, die EmailPlus-Funktionen zum Auswerten von Feldwerten zu verwenden. Verwenden Sie zum Vergleichen von Feldwerten die Perl-Funktion quotemeta(), um nicht alphanumerische Zeichen mit einem Escape-Zeichen zu versehen und dadurch sicherzustellen, dass der Ausdruck ordnungsgemäß ausgewertet wird. Der folgende Ausdruck wird beispielsweise ordnungsgemäß ausgewertet, wenn der Feldwert keine einfachen oder doppelten Anführungszeichen enthält:
#@expression::if (#?Description?# ne #%Description%#) { “Description field has changed\n”.#%Description%#; }@#
#@expression::if (quotemeta(Gfv(“Description”)) ne quotemeta(Gfov(“Description”))) {
“Description field has changed\n”.Gfov(“Description”); }@#
Ein anderes Beispiel: Nehmen Sie an, dass Sie das Übergabedatum aus Ihrem Fehlerdatensatz anzeigen möchten, dafür aber nicht das standardmäßige Datumsformat verwenden möchten. Stattdessen möchten Sie das Datum in einer anderen Form anzeigen. Dafür eignet sich der folgende einfache Beispielausdruck mit einem Meta-Tag:
#@expression::use Date::Format;use Date::Parse; ctime( str2time( #?SubmitDate?# ));@#
Dies wird im folgenden Beispiel erweitert. Es handelt sich um einen syntaktisch gültigen Ausdruck. Er gibt ein Datumsobjekt zurück.
#@expression::use Date::Format;use Date::Parse; ctime( str2time( “2010-07-12 10:45:18” ));@#
Durch das Auswerten des Ausdrucks werden die folgenden Informationen zurückgegeben und in der Ausgabenachricht ersetzt:
Mon Jul 12 10:45:18 2010
In der folgenden Tabelle sind die Datentypen aufgelistet, die zurückgegeben werden, wenn ein alter oder aktueller Feldwert innerhalb eines Meta-Tags erweitert wird.
Feldtyp | Zurückgegebener Ausdruck |
---|---|
INT | Eine Ganzzahl, z. B. 54 |
DATE_TIME | Eine Datumszeichenfolge im 24-Stunden Format "JJJJ-MM-TT hh:mm:ss", z. B. "2012-10-20 15:23:04" |
SHORT_STRING, MULTILINE_STRING, ID, STATE, RECORDTYPE, DBID, REFERENCE und andere nicht angegebene Typen | Ein Zeichenfolgewert in doppelten Anführungszeichen, z. B. "ein Text". Zeichenfolgen in doppelten Anführungszeichen, die im ursprünglichen Feldwert eingebettet sind, werden ordnungsgemäß verarbeitet, um einen syntaktisch korrekten Zeichenfolgewert zu erhalten. |
REFERENCE_LIST | Ein Verweis auf einen Bereich von Werten in doppelten Anführungszeichen, z. B. ["Wert 1", "Wert 2" ] |