Table of Contents

Eigene Platzhalter definieren

mail bietet die Funktionalität der Platzhalter, mit der Sie zum Beispiel im Texteditor Inhalte definieren, die erst zur Laufzeit ermittelt werden. Die Liste an Platzhaltern ist vordefiniert, kann aber durch durch eine Anpassung wie hier exemplarisch gezeigt erweitert werden. Hier sind zwei Anpassungen notwendig.

Den Platzhalter definieren

Zuerst muss der Platzhalter ergänzt werden.

[EventSubscriber(ObjectType::Codeunit, Codeunit::"MAIL_Mail Functions", 'AddCustomPlaceholder', '', true, true)]
local procedure AddCustomPlaceholder(var PlaceholderBuffer: Record "Name/Value Buffer")
begin
    PlaceholderBuffer.AddNewEntry('My Custom Placeholder','70');
end;

Parameter:

  • PlaceholderBuffer: Dieser temporäre Datensatz wird genutzt um die Platzhalter-Nummer und eine kurze Beschreibung zu speichern.
Important

Bitte beginnen Sie eigene Platzhalter mit der Nummer 70

Den Platzhalter verarbeiten

Um den Platzhalter zu verarbeiten und durch seinen tatsächlichen Wert zu ersetzen nutzen Sie einen Code ähnlich wie diesen.

[EventSubscriber(ObjectType::Codeunit, Codeunit::"MAIL_Mail Functions", 'ProcessCustomPlaceholder', '', true, true)]
local procedure ProcessCustomPlaceholder(RecRef: RecordRef; ReportID: Integer; var Placeholder: Text; var ResultString: Text)
begin
    case Placeholder of
        '70':
            ResultString := 'The cake is a lie';
    end
end;

Parameter:

  • VarRec: In dieser Variable ist der aktuell verarbeitet Datensatz gespeichert.
  • ReportID: Die Nummer des Reports, der gerade verschickt werden soll.
  • Placeholder: Die Nummer des aktuell Platzhalters.
  • ResultString: Hier wird das Ergebnis abgelegt.

Der Datensatz wird an mail mit der Information des aktuellen Platzhalters geschickt und kann so mit den korrekten Werten gefüllt werden.