Die Konfiguration des mächtigsten Blocks im Portal: die Entitätsliste
Inhaltsverzeichnis
Die Entitätsliste ist der vielseitigste und meistgenutzte Block in epilot-Portalen. Sie zeigt PortalnutzerInnen oder InstallateurInnen eine filter- und suchbare Liste von Datensätzen — Verträge, Anträge, Bestellungen, Dokumente, Workflows, Rechnungen. In dieser Anleitung gehen wir alle Optionen der Entitätsliste durch: vom ersten Anlegen bis zu fortgeschrittenen Patterns.
Was ist die Entitätsliste?
Die Entitätsliste rendert Datensätze (Entitäten) aus deiner epilot-Organisation als formatierte, durchsuchbare Liste — direkt im Portal. Du legst fest, welche Entitätstypen angezeigt werden, wie jeder Eintrag aussieht, welche Filter gelten und wie NutzerInnen die Liste durchsuchen können. Die Liste lädt die Daten in Echtzeit aus deiner epilot-Organisation und respektiert dabei alle Berechtigungen und Sichtbarkeitsregeln.
Entitätsliste anlegen
So fügst du eine neue Entitätsliste zu einer Seite hinzu:
- Öffne die Zielseite im Portal Builder
- Klicke im Seitenbaum links neben Hauptinhalt auf +
- Wähle Entitätsliste aus der Block-Liste
- Der Block wird mit einer Standard-Konfiguration eingefügt — du kannst sofort beginnen, ihn zu verfeinern
Block-Inhalt — Rahmen für die Liste
Ganz oben in den Block-Einstellungen findest du den Abschnitt Block Inhalt. Hier definierst du den Rahmen, in dem die Liste erscheint.
| Feld | Beschreibung |
| Bezeichnung | Interner Name für dich. Hilft beim Wiederfinden im Seitenbaum, wird End-Nutzer:innen nicht angezeigt. |
| Titel | Überschrift über der Liste — sichtbar im Portal. Variablen mit {{...}} erlaubt. |
| Alle Interaktionen deaktivieren | Toggle. Aktiv = Liste ist read-only. Keine Klick-Navigation, keine Aktionen. Sinnvoll für reine Info-Darstellungen, z. B. eine Übersicht der letzten Rechnungen ohne Klick auf Details. |
Der Block Sichtbarkeit-Bereich darunter gehört zwar nicht zur Listen-Logik selbst, ist aber wichtig: Hier legst du fest, ob der gesamte Block für bestimmte Zielgruppen ein- oder ausgeblendet wird.
Konfigurationen — eine oder mehrere Entitäten
Der Abschnitt Konfigurationen ist das Herzstück der Entitätsliste. Eine Konfiguration definiert, welche Entitäten gezeigt werden und wie sie aussehen. Ein Block kann mehrere Konfigurationen enthalten.
Wann brauchst du mehrere Konfigurationen?
- Mischlisten: z. B. Anträge als auch Bestellungen anzeigen.
- Mehrere Filter über denselben Entitätstyp: z. B. eine Liste mit „aktiven Verträgen" und „archivierten Verträgen" in zwei Konfigurationen
- Kombinierte Workflows: z. B. offene Tickets und in Bearbeitung befindliche Tickets gruppiert untereinander.
So fügst du eine Konfiguration hinzu:
- Klicke in der Block-Konfiguration auf + neben Konfigurationen
- Wähle die Entität
- Vergib einen Konfigurationsnamen, damit du sie später wiederfindest
- Optional: Wähle die Seite auswählen, auf die der Klick auf einen Eintrag führt

| Feld | Bedeutung |
| Entität auswählen | Der Entitätstyp dieser Konfiguration — z. B. Opportunity, Bestellung, Dokument. |
| Konfigurationsname | Interner Name, hilft bei mehreren Konfigurationen im selben Block. |
| Seite auswählen | Ziel-Seite für den Klick auf einen Listen-Eintrag — typischerweise eine Detailseite derselben Entität. |
Templating — wie ein Eintrag aussieht
Jeder Listen-Eintrag hat bis zu fünf Inhalts-Slots, die du mit Variablen befüllst. Templates sorgen für ein konsistentes, schnelles Lese-Erlebnis: End-Nutzer:innen wissen sofort, wo sie welche Information finden.
| Slot | Verwendung |
| Inhalt oben (Overline) | Kleine erste Zeile über dem Haupttitel. Typisch: Antragsnummer, Datum, Kategorie. Beispiel: {{opportunity.opportunity_number}}
|
| Hauptinhalt (Title) | Der prominente Haupttext. Typisch: Adresse, Vertragsname, Bezeichnung. Beispiel: {{liegenschaftsdaten_unbekannte_adresse}}
|
| Inhalt unten (Description) | Zusatzinfo unter dem Haupttext. Typisch: Status, Beschreibung, Datum. Beispiel: {{opportunity.status}}
|
| Hauptinhalt (rechts) | Rechtsbündiger Wert — ideal für Beträge, Datumsangaben, Status-Labels. Bei Listen mit Geldbeträgen praktisch unverzichtbar. |
| Icon (Leading) | Optionales Symbol links vom Eintrag. Hilft besonders in Multi-Entity-Listen, in denen verschiedene Typen auf einen Blick unterscheidbar sein sollen. Nicht verfügbar bei Multi- und Single-Select-Listen. |

Variablen einfügen mit dem Picker
Neben jedem Template-Feld findest du ein kleines {}-Icon. Klicke es, und der Variablen-Picker öffnet sich. Dort siehst du alle Felder der ausgewählten Entität — du musst keine Feldnamen auswendig lernen oder befürchten, dich zu vertippen.
💡 Tipp: Sprechende Templates statt nackter Werte
Template-Felder akzeptieren auch Klartext rund um die Variable. Schreibe lieber Antrag {{opportunity.opportunity_number}} oder Status: {{opportunity.status}} statt nur die nackte Variable. Das macht die Liste deutlich lesbarer.
Indikation — Status-Farben
Über die Indikation kannst du Einträgen eine Farbcodierung geben. Standardwert ist Neutral — keine Farbe. Verfügbare Werte:
- Neutral — keine Farbe (Standard)
- Positive — grüne Markierung. Typisch: erfolgreich abgeschlossene Anträge, bestätigte Verträge, gesendete Bestätigungen
- Negative — rote Markierung. Typisch: abgelehnte Anträge, fehlgeschlagene Zahlungen, abgelaufene Konzessionen
Die Indikation kann nur statisch gesetzt werden (alle Einträge dieser Liste sind „positive").
Filter — welche Einträge erscheinen
Die Filter-Logik in der Entitätsliste hat zwei Ebenen, die zusammenarbeiten: Filtern nach Ziel und Benutzerfilter.
Filtern nach Ziel
Er bestimmt, welche Entitäten dem aktuell eingeloggten Portal-Nutzer überhaupt zur Anzeige stehen — basierend auf der Beziehung zwischen Entität und Kontakt. Zusätzlich kann hier definiert werden, welche dieser Opportunities, die diese erste Bedinung erfüllen, anzeigt werden. Ein Anwendungsfall ist hier eine Zielgruppe zu definieren, die nur Opportunities enhält, die den Status “offen” haben. Alle anderen Opportunitites mit einem anderen Status, würden trotz der richtigen Zuordnung zum Kontakt nicht angezeigt werden.
Benutzerfilter — zusätzliche Bedingungen
Der Benutzerfilter verfeinert die Liste über zusätzliche Bedingungen. Er hat zwei Sub-Typen:
- + Feld — filtert nach Feldwerten der Entität, z. B. „Status = In Bearbeitung". Dieser Filter wird dem Portalnutzer im Portal ausgespielt.
- + Zielgruppe — filtert nach Zielgruppen-Zugehörigkeit. Sinnvoll, wenn du innerhalb einer Liste nochmal differenzieren willst — z. B. nur Verträge, die den Status “aktiv” haben.
Ergebnisse organisieren — Gruppieren, Sortieren, Paginieren
| Option | Wirkung |
| Aktiven Workflow anzeigen | Wenn an der Entität ein Workflow läuft, erscheint der aktuelle Workflow-Schritt im Eintrag. |
| Gruppieren nach | Kategorisiert die Liste nach einem Feld. Beispiel: Anträge nach Status gruppiert. |
| Sortieren nach | Aufsteigend oder absteigend nach einem Feld. |
| Gruppen-Titel | Template für die Überschrift jeder Gruppe. Variablen erlaubt — z. B. {{status}} ({{count}} Anträge). |
| Sichtbare Ergebnisse | Anzahl Einträge pro Seite: 5, 10, 25, 50, 75 oder 100. |
| Anzahl der Ergebnisse änderbar | Portalnutzer kann die Batch-Größe selbst auswählen. |
Suche
Mit der Suche kann in der Liste in Echtzeit gefiltert werden— über alle konfigurierten Suchfelder hinweg.
| Option | Wirkung |
| Suche anzeigen | Blendet das Suchfeld über der Liste ein. |
| Suche nach | Welche Felder durchsucht werden. Mehrere Felder möglich. Im Installateurportal sind typischerweise Lieferadresse → Adresse und Opportunity Nummer aktiv. |
| Endbenutzer können Attribute auswählen | Lässt den Nutzer selbst bestimmen, in welchen Feldern gesucht wird — über einen kleinen Picker neben dem Suchfeld. |
Substring-Suche und Highlighting
Die Suche erkennt Teilstrings — du musst also nicht das ganze Feld eingeben, ein paar Buchstaben reichen. Treffer werden im Ergebnis hervorgehoben, sodass End-Nutzer:innen sofort sehen, woran das Match lag. Das funktioniert über alle Suchfelder hinweg.
Praxis-Beispiele
Hier vier konkrete Setups aus echten Kunden-Portalen, die du als Vorlage nehmen kannst.
Anträge im Installateurportal
- Entität: Opportunity
- Filtern nach Ziel: Opportunity zur Ansicht freigegeben
-
Templating: oben =
{{opportunity.opportunity_number}}, Hauptinhalt = Lieferadresse, unten = Status - Gruppierung: nach Status, sortiert aufsteigend
- Suche: nach Lieferadresse und Antragsnummer
- Indikation: Closed Won = positive, Closed Lost = negative
Rechnungen mit Beträgen
- Entität: Billing Event
- Templating: oben = Rechnungsnummer, Hauptinhalt = Rechnungs-Datum, unten = Beschreibung, rechts = Betrag
- Sortierung: nach Datum, absteigend
- Indikation: bezahlt = positive, überfällig = negative
- Read-only: ja — Rechnungen werden in der Liste angezeigt, der Detail-Sprung führt zur Detailansicht
Best Practices
- Gruppiere nach Status, wenn dein Datentyp einen Status hat. Gruppen-Header sind die schnellste Form von Übersicht.
- Halte Templates kurz. Drei Slots reichen meist — Overline, Title, Description. Den Rechts-Slot nur einsetzen, wenn er tatsächlich relevant ist.
- Indikation nur dort einsetzen, wo Status visuell hilft — nicht jede Liste braucht Farbcodierung. Zu viele Farben verwischen die Bedeutung.
Für eine bessere Lesbarkeit beziehen sich Personenbezeichnungen auf alle Geschlechter.