In den Platzhaltern wird häufig mehr Funktionalität zur Berechnung benötigt. Diese können mit Hilfe von eigenen berechneten Eigenschaften umgesetzt werden. Die Berechneten Eigenschaften stehen Grundsätzlich auf allen Datensätzen zur Verfügung und müssen daher so implementiert werden, dass sie mit beliebigen Datensätzen umgehen können.

Dazu wird eine statische Klasse definiert. Diese erhält das Attribut CalculatedProperties.

[CalculatedProperties]
public static class MyCalculatedProperties
{ ... }

Die Methoden werden als C# Erweiterungsmethoden auf OrmBABase implementiert und erhalten ein IReadOnlyDictionary<string, string> mit den Argumenten. Bei der Benamung der Methode, muss vermieden werden mit anderen Namen zu kollidieren. Daher müssen sie ein Projekt spezifisches Präfix erhalten.

[DisplayName("Meine Methode")]
public static string Bat_MyMethod(this OrmBABase Orm, IReadOnlyDictionary<string, string> args)
{
    return "Place holder value";
}