Die Funktion ecm:countMapElements gibt die Anzahl der Elemente einer Spalte zurück, oder -1, wenn keine Daten vorliegen. Es wird ein Wert vom Typ Integer zurückgegeben.

Um den Integer in einen Booleschen Wert umzuwandeln, muss das Ergebnis dieser Funktion mit dem Operator größer als (>) und dem Wert Null (0) verglichen werden. Diese Funktion wird oft zusammen mit anderen Funktionen verwendet, um ein Ergebnis der Art True/False zu erstellen, welches in Personalisierungen oder Selektionen genutzt werden kann.

Struktur​

ecm:countMapElements(Map)

Parameter​

Parameter

Beschreibung

Map

Der Parameter spezifiziert das Ziel, das gezählt werden soll.


Beispiel

Ein Pool-Container mit dem Namen ​Einkäufe​ beinhaltet alle Kundenkäufe. Der Schlüssel für den Pool-Container ist die Kunden-ID. In diesen Beispielen ist der Pool-Container mit einem Attribut verknüpft. Die Syntax des Parameters ist unterschiedlich für unverknüpfte Pool-Container (siehe ⇘ ​Syntax und Formatierung von Funktionen​).

Der Pool-Container ​Einkäufe​ verfügt über eine Spalte namens ​Angebote​. Diese Spalte enthält alle Angebote, auf die Kunden mit einem Einkauf reagierten.

Die Kunden-IDs sind ebenfalls in den Benutzerattributen gespeichert.

Eine Selektion wird dazu verwendet, eine Nachricht an Kunden zu senden, die bisher auf ein Angebot reagiert haben (egal wie). Der Ausdruck, der als Selektionskriterium verwendet wird, ist wie folgt aufgebaut:

${ecm:countMapElements(user.RelatedAttribute['Einkäufe']['Angebote'])> 0}

In diesem Beispiel zählt die Funktion ecm:countMapElements die Anzahl der Angebote für jede Kunden-ID und gibt einen Integer zurück. Wird dieser Integer mit dem Operator größer als (>) und dem Wert Null (0) verglichen, wird ein Boolescher Datentyp zurückgegeben. Jeder Wert, der größer als Null ist, gibt das Ergebnis ​True​ zurück, welches dem Selektionskriterium mitteilt, eine Nachricht zu senden.